SMSC Simulator
SMPP SMSC simulator to test SMS messaging applications.

Tyr SMS Gateway
to
and worldwideMelrose Labs operates SMSC simulators (aka SMPP server simulators) for use in the development and testing of SMS text messaging capabilities within applications. They simulate SMSCs (short message service centres) and SMPP SMS gateways, and simulated SMS message delivery. SMPP v3.3, SMPP v3.4 and SMPP v5 using TLS and non-TLS connections are supported.
Applications send SMS messages to mobiles by submitting messages to the SMSC Simulator service using SMPP. The SMSC simulators simulate the delivery of the messages, including the generation of delivery receipts back to the application. SMS messages from mobile numbers can also be submitted and delivered to the SMS application (see Simulate Inbound SMS to your Application).
The SMSC simulators enable you to send SMS messages from your application without messages being delivered to real mobile phones and therefore without any SMS delivery costs. Stress testing of your application can also be performed to show how your application behaves under load and various other scenarios tested before live operation and without affecting production SMSCs. The SMSC simulators can handle high rates of SMS and a large number of simultaneous connections from your application.
Using the SMSC Simulator service
The SMSC Simulator service is publicly available and connection details can be found below. Melrose Labs also provides a Dedicated SMSC Simulator service for those with testing needs beyond the public service. SMSC Simulator is part of Melrose Labs SMPP Testing services.
SMPP over TLS support is available for SMS applications to connect securely (SMPP TLS port: 8775
).
SMSC Simulator SMPP Account Details
The system ID and password are dynamically updated on this webpage. Click on "Generate" to retrieve your password. The details below are generated for your use:
- Server:
smscsim.melroselabs.com
- Port:
2775
(non-TLS),8775
(TLS) - System ID:
784019
- Password:
(valid 10-days)
- System type:
null
Use the above SMPP bind parameters with the SMSC simulators. If you need any help, or have any suggestions for improving the simulators, then send us a support request.
Tyr SMS Gateway - 100 free SMS credits
Get an SMPP account for sending SMS
Inbound MO SMS Tool
Use this tool to send MO SMS to your application from the SMSC Simulator to simulate inbound SMS from a mobile. SMPP system ID and password must be the same as used by your application, and destination address must contain system ID.
SMS Text Simulator: Simulate Inbound SMS to your Application
To simulate MO SMS (i.e. inbound SMS or person-to-application SMS) from a mobile to your application, you can either (a) use an SMPP TX bind to submit the MO message to the simulator or (b) use the above Inbound MO SMS Tool.
In either case, you would submit a message using the above SMPP account details to a destination_address
that contains the digits of your system ID
. By including the digits of your system ID
in the destination_address
, the message will be routed by the simulator to your application. The destination_address
field must be at least 8 digits in length so ensure that you prepend or append at least two digits to your system ID, otherwise the simulator will reject the submission.
Example: If your system ID
was "123456" then to send an inbound SMS to your application you would use a separate SMPP transmitter (TX) bind, or the Inbound MO SMS Tool, to submit a message (submit_sm
) to the destination_address
"99123456" (digits in bold are your system ID
). This would cause the SMSC Simulator service to send a deliver_sm
to your application with the source_addr
that you set in the submit_sm
and destination_addr
of "99123456".
The simulator also supports the use of schedule_delivery_time
in the submit_sm
and this can be used to schedule delivery of MT and MO SMS.
SMPP operations supported by the simulators
SMSC simulators last updated 9 July 2020
We are working to ensure that our simulators allow you to test most, if not all, aspects of SMPP applications such as applications with SMS support and SMS infrastructure. Operations currently supported by the simulators are shown below. Further operations will be provided in future and frequent updates.
- Session Management:
- bind_receiver/resp - Used for receiving delivery receipts.
- bind_transmitter/resp - Used for submitting messages.
- bind_transceiver/resp - Supported for v3.4 and v5, and used for submitting messages and receiving delivery receipts.
- unbind/resp - ESME unbinding from SMSC and SMSC issues unbind_resp. SMSC unbinding from ESME when ESME unresponsive.
- enquire_link/resp - Will respond to enquire_link from ESME and will issue enquire_link to ESME every 120s of inactivity.
- Message Submission:
- submit_sm/resp - Will issue positive response with message_id of 8 characters in length for v3.3 and 64 characters for v3.4 and v5. Will issue error response (ESME_INVDSTADR/0x0000000B) if destination_address less than 8 characters in length.
- Message Delivery:
- deliver_sm/resp - Delivery receipts sent to ESME on receiver binds (SMPP v3.3, 3.4 and v5) and transceiver binds (SMPP v3.4 and v5 only). deliver_sm
short_message
field with textual receipt plus TLVs containing message ID (i.e.receipted_message_id
), status of message (i.e.message_state
with value of 2 forDELIVERED
) and error (i.e.network_error_code
with value of zero indicating no error)
- deliver_sm/resp - Delivery receipts sent to ESME on receiver binds (SMPP v3.3, 3.4 and v5) and transceiver binds (SMPP v3.4 and v5 only). deliver_sm
Melrose Labs SMSC Simulator Abbreviated SMPP PICS
SMSC Simulator Abbreviated SMPP Protocol Implementation Conformance Statement (SMPP PICS)
Operations Supported
Item | Functional Unit/Description | Supported |
---|---|---|
PDU-OUTBIND | Is the outbind PDU supported? | NO |
PDU-BIND-TRANSMITTER | Is the bind transmitter PDU supported? | YES |
PDU-BIND-RECEIVER | Is the bind receiver PDU supported? | YES |
PDU-BIND-TRANSCEIVER | Is the bind transceiver PDU supported? | YES |
PDU-UNBIND | Is the unbind PDU supported? | YES |
PDU-ESME-GENERIC-NACK | Is the generic_nack PDU initiated by the EMSE supported? | YES |
PDU-SMSC-GENERIC-NACK | Is the generic_nack PDU initiated by the SMSC supported? | YES |
PDU-SUBMIT-SM | Is the submit_sm PDU supported?
| YES
|
PDU-SUBMIT-MULTI | Is the submit_multi PDU supported? | NO |
PDU-DELIVER-SM | Is the deliver_sm PDU supported?
| YES |
PDU-ESME-DATA | Is the data_sm PDU initiated by the EMSE supported?
| YES |
PDU-SMSC-DATA | Is the data_sm PDU initiated by the SMSC supported?
| YES |
PDU-QUERY | Is the query_sm PDU supported?
| YES |
PDU-CANCEL | Is the cancel_sm PDU supported?
| YES
|
PDU-REPLACE | Is the replace_sm PDU supported? | NO |
PDU-ESME-ENQUIRE-LINK | Is the enquire_link PDU initiated by the EMSE supported? | YES |
PDU-SMSC-ENQUIRE-LINK | Is the enquire_link PDU initiated by the SMSC supported? | YES |
PDU-ALERT | Is the alert_notification PDU supported? | NO |
Notes on using the SMSC Simulator service
- SMPP (Short Message Peer-to-Peer) protocol must be used to connect to the simulator.
- Use SMPP v3.3, v3.4 or v5 and specify the version in the bind request.
- Bind using one or more transmitter (TX), receiver (RX) or transceiver (TRX) binds.
- Use transceiver (TRX) or receiver (RX) binds to receive delivery receipts.
- If a delivery receipt has been requested for a message, a receipt will be returned to your application in 3-12 seconds (random) after the submit_sm_resp. If there is no existing TRX or RX bind, then the receipt may be discarded.
- Mobile numbers (MSISDNs) should be in international format.
- TLS 1.1 and up are supported for SMPP sessions. SSL and TLS 1.0 are not supported for connections.
Source code for the original version of our SMSC simulator can be found in the Melrose Labs GitHub repository at smpp-smsc-simulator.
For production SMSCs and SMS gateways we suggest you take a look at the following:
- Tyr SMS Gateway
- SMPP SMS Gateway (operate your own SMS gateway)
- SS7 SMSC (operate your own SMSC)
Pricing
The SMSC Simulator service is provided free-of-charge for the public service.
Dedicated SMSC Simulator instances
We also offer dedicated SMSC Simulator instances with support for 8000 SMS/sec, up to 50 SMPP binds, SMPP v5 flow control and congestion avoidance, and configurable DLRs (status, latency, format). Please contact us if you are interested in dedicated SMSC Simulator instances.
Service snapshot
- Test SMS applications and infrastructure without SMS cost
- SMPP v3.3, v3.4 and v5
- MT and MO SMS testing (A2P and P2A)
- SMPP over TCP and SMPP over TLS 1.1+ supported
- SMPP test tool