Reference section - SMPP


SMPP data_sm

SMPP (Short Message Peer-to-Peer) is an open, industry standard protocol designed to provide a flexible data communications interface for the transfer of short message data between External Short Message Entities (ESME), Routing Entities (RE) and Message Centres (MC). The SMPP protocol is a means by which applications can send SMS messages to mobile devices and receive SMS from mobile devices.

4.2.2 data_sm Operation

The data_sm operation is similar to the submit_sm in that it provides a means to submit a mobile-terminated message. However, data_sm is intended for packet-based applications such as WAP in that it features a reduced PDU body containing fields relevant to WAP or packet-based applications. data_sm Syntax

Field Name Size octets Type Description Ref.
command_length4IntegerSet to overall length of PDU.4.7.4
sequence_number4IntegerSet to a Unique sequence number. The associated data_sm_resp PDU will echo this sequence number.4.7.24
service_typeVar. max 6C-Octet StringThe service_type parameter can be used to indicate the SMS Application service associated with the message. Specifying the service_type allows the ESME to avail of enhanced messaging services such as “replace by service_type” or control the teleservice used on the air interface.

Set to NULL for default MC settings
source_addr_ton1IntegerType of Number for source address.

If not known, set to NULL (Unknown).
source_addr_npi1IntegerNumbering Plan Indicator for source address.

If not known, set to NULL (Unknown).
source_addrVar. max 65C-Octet StringAddress of SME which originated this message.

If not known, set to NULL (Unknown).
dest_addr_ton1IntegerType of Number for destination.4.7.1
dest_addr_npi1IntegerNumbering Plan Indicator for destination.4.7.2
destination_addrVar. max 65C-Octet StringDestination address of this short message For mobile terminated messages, this is the directory number of the recipient MS.4.7.8
esm_class1IntegerIndicates Message Mode and Message Type4.7.12
registered_delivery1IntegerIndicator to signify if a MC delivery receipt or an SME acknowledgement is required.4.7.21
data_coding1IntegerDefines the encoding scheme of the short message user data.4.7.7
Message Submission TLVs or
Message Delivery TLVs
Var.TLV4.2.4 data_sm_resp Syntax

Field Name Size octets Type Description Ref.
command_length4IntegerSet to overall length of PDU.4.7.4
command_status4IntegerIndicates outcome of data_sm request.4.7.6
sequence_number4IntegerSet to sequence number of original data_sm PDU.4.7.24
message_idVar. max 65C-Octet StringThis field contains the MC message ID of the submitted message. It may be used at a later stage to query the status of a message, cancel or replace the message.4.7.14
Message Submission Response TLVs or Message Delivery Response TLVsVar.TLV 4.2.5

SMPP Tools and Services

Services from Melrose Labs (e.g. Tyr SMS Gateway and SMPP SMS Gateway ) support SMPP v5 and the earlier versions, v3.3 and v3.4.

SMSC Simulator

Looking to test your SMS application or SMS-enabled application before connecting to a live SMS gateway or SMSC? SMSC Simulator enables you to test using SMPP v3.3, v3.4 and v5.
Read more about SMSC Simulator >

SMPP Clients

Send and receive SMS using an SMPP account and browser-based SMPP client.

* SMPP session between web browser and provider.

SMS Code Bench

SMS messaging code sample and development playground. Collection of editable and runnable code samples in a variety of languages for different SMS interactions.
SMS Code Bench >

Send SMS programmatically with SMPP

Send SMS programmatically with SMPP using Python, Java, Go, Perl, C++, C#, Node.js, Ruby and PHP.

SMPP Load Test

Perform an SMS load test using SMPP from your web browser and view the results in realtime. SMPP Load Test tool submits SMS messages using SMPP at the specified rate. Messages are sent to one or more mobile numbers in a range from a single source address or range of source addresses.
Use the online SMPP Load Test tool >

SMPP Analyser

The SMPP Analyser acts as an SMPP proxy, with the client application binding to the service and the service onward binding to the SMSC or SMS Gateway. Packet captures can be viewed in your browser or exported into Wireshark.
Use the online SMPP Analyser >

Message Hub

Message routing between applications (uses SMPP protocol). For use in IoT, chat applications, asyncronous notification in web applications, and other applications.
Message Hub documentation >


Find out more...

Please provide your name.
Please provide a valid company name.
Please type your message.
Please provide a valid email address.