SMPP Error Codes

This table provides a detailed explanation of SMPP error codes, as defined in the SMPP specification. These codes indicate the outcome of an SMPP operation.

For the complete list of possible errors, please consult the SMPP specification:

Download: SMPP_v5.pdf

Command Status Name Value (Hex) Value (Decimal) Description Detailed Explanation
ESME_ROK 0x00000000 0 No error. The operation completed successfully without any errors.
ESME_RINVMSGLEN 0x00000001 1 `Message Length` is invalid. The message length specified in the PDU is invalid. This could be due to the length being too short, too long, or not matching the actual message content.
ESME_RINVCMDLEN 0x00000002 2 Command Length is invalid. The command length specified in the PDU is invalid. The PDU length is considered invalid, either because the value is too short or too large for the given PDU.
ESME_RINVCMDID 0x00000003 3 Invalid `Command ID`. The Command ID specified in the PDU is not recognized or supported by the SMSC/MC. This indicates a mismatch in the expected command.
ESME_RINVBNDSTS 0x00000004 4 Incorrect BIND Status for given command. The PDU was sent in the wrong session state. For example, sending a `submit_sm` before establishing a `Bound_TX` session state. The ESME must bind to the SMSC before sending certain commands.
ESME_RALYBND 0x00000005 5 ESME Already in Bound State. A bind request was issued within a session that is already bound. The ESME is already connected and authenticated.
ESME_RINVPRTFLG 0x00000006 6 Invalid `Priority Flag`. The priority flag contains an illegal or unsupported value. The value provided for message priority is not within the accepted range.
ESME_RINVREGDLVFLG 0x00000007 7 Invalid `Registered Delivery Flag`. The registered delivery field contains an invalid setting. The value specified for delivery confirmation is not supported.
ESME_RSYSERR 0x00000008 8 System Error. MC system error indicating that all or part of the MC is currently unavailable. This can be returned in any response PDU. This indicates a problem on the SMSC/MC side.
ESME_RINVSRCADR 0x0000000A 10 Invalid `Source Address`. The source address is invalid. This could be due to incorrect format, invalid characters, or a number that is not allowed by the SMSC.
ESME_RINVDSTADR 0x0000000B 11 Invalid `Destination Address`. The destination address is invalid. This could be due to incorrect format, invalid characters, or a number that is not allowed by the SMSC.
ESME_RINVMSGID 0x0000000C 12 `Message ID` is invalid. The message ID provided in a query or cancel operation is not valid or does not exist.
ESME_RBINDFAIL 0x0000000D 13 Bind Failed. A generic failure scenario for a bind attempt. This may be due to a provisioning error, incorrect password, or other reason. A MC will typically return this error for an invalid `system_id`, `system_type`, `password` or other attribute that may cause a bind failure.
ESME_RINVPASWD 0x0000000E 14 Invalid `Password`. The password field in the bind PDU is invalid. This is usually returned when the length is too short or too long. It is not supposed to be returned when the ESME has specified the incorrect password.
ESME_RINVSYSID 0x0000000F 15 Invalid `System ID`. The System ID field in bind PDU is invalid. This is usually returned when the length is too short or too long. It is not supposed to be returned when the ESME has specified the incorrect system id.
ESME_RCANCELFAIL 0x00000011 17 Cancel SM Failed. Generic failure error for cancel_sm operation. The attempt to cancel a previously submitted message failed.
ESME_RREPLACEFAIL 0x00000013 19 Replace SM Failed. Generic failure for replace_sm operation. The attempt to replace a previously submitted message failed.
ESME_RMSGQFUL 0x00000014 20 Message Queue Full. Used to indicate a resource error within the MC. This may be interpreted as the maximum number of messages addressed to a single destination or a global maximum of undelivered messages within the MC. The SMSC/MC is unable to accept more messages due to queue limitations.
ESME_RINVSERTYP 0x00000015 21 Invalid Service Type. Service type is rejected either because it is not recognised by the MC or because its length is not within the defined range. The service type specified is not supported by the SMSC/MC.
ESME_RINVNUMDESTS 0x00000033 51 Invalid number of destinations. The `number_of_dests` field in the submit_multi PDU is invalid. The number of destinations specified in a multi-part message submission is invalid.
ESME_RINVDLNAME 0x00000034 52 Invalid Distribution List name. The `dl_name` field specified in the submit_multi PDU is either invalid or non-existent. The specified distribution list name is not valid or does not exist on the SMSC/MC.
ESME_RINVDESTFLAG 0x00000040 64 Destination flag is invalid ( submit_multi). The `dest_flag` field in the submit_multi PDU has been encoded with an invalid setting. The destination flag used in a multi-part message submission is invalid.
ESME_RINVSUBREP 0x00000042 66 Submit w/replace functionality has been requested where it is either unsupported or inappropriate for the particular MC. Submit w/replace functionality has been requested where it is either unsupported or inappropriate for the particular MC. This can typically occur with submit_multi where the context of “replace if present” is often a best effort operation and MCs may not support the feature in submit_multi. Another reason for returning this error would be where the feature has been denied to an ESME.
ESME_RINVESMCLASS 0x00000043 67 Invalid `esm_class` field data. The `esm_class` field has an unsupported setting. The Extended SM Class is invalid or unsupported.
ESME_RCNTSUBDL 0x00000044 68 Cannot Submit to Distribution List. Distribution lists are not supported, are denied or unavailable. The SMSC/MC does not support submission to distribution lists.
ESME_RSUBMITFAIL 0x00000045 69 submit_sm, data_sm or submit_multi failed. Generic failure. Generic failure error for submission operations. The message submission failed for an unspecified reason.
ESME_RINVSRCTON 0x00000048 72 Invalid `Source address TON`. The source TON of the message is either invalid or unsupported. The Type of Number for the source address is invalid.
ESME_RINVSRCNPI 0x00000049 73 Invalid `Source address NPI`. The source NPI of the message is either invalid or unsupported. The Numbering Plan Indicator for the source address is invalid.
ESME_RINVDSTTON 0x00000050 80 Invalid `Destination address TON`. The destination TON of the message is either invalid or unsupported. The Type of Number for the destination address is invalid.
ESME_RINVDSTNPI 0x00000051 81 Invalid `Destination address NPI`. The destination NPI of the message is either invalid or unsupported. The Numbering Plan Indicator for the destination address is invalid.
ESME_RINVSYSTYP 0x00000053 83 Invalid `system_type` field. The `System type` of bind PDU has an incorrect length or contains illegal characters. The system type specified during the bind operation is invalid.
ESME_RINVREPFLAG 0x00000054 84 Invalid `replace_if_present` flag. The `replace_if_present` flag has been encoded with an invalid or unsupported setting. The replace if present flag has an invalid value.
ESME_RINVNUMMSGS 0x00000055 85 Invalid number of messages. The number of messages specified is invalid.
ESME_RTHROTTLED 0x00000058 88 Throttling error (ESME has exceeded allowed message limits). This type of error is usually returned where an ESME has exceeded a predefined messaging rate restriction applied by the operator. The ESME has exceeded the allowed message submission rate.
ESME_RINVSCHED 0x00000061 97 Invalid `Scheduled Delivery Time`. The scheduled delivery time is invalid. The provided schedule time is not in the correct format or is outside the allowed range.
ESME_RINVEXPIRY 0x00000062 98 Invalid message `validity period` (Expiry time). The message validity period (expiry time) is invalid. The specified expiry time is not in the correct format or is outside the allowed range.
ESME_RINVDFTMSGID 0x00000063 99 Predefined Message ID is Invalid or specified predefined message was not found. The default (pre-defined) message id is either invalid or refers to a non-existent pre-defined message. The specified predefined message ID is invalid or not found.
ESME_RX_T_APPN 0x00000064 100 ESME Receiver Temporary App Error Code. RX or TRX ESME is unable to process a delivery due to a temporary problem and is requesting that the message be retried at some future point.
ESME_RX_P_APPN 0x00000065 101 ESME Receiver Permanent App Error Code. RX or TRX ESME is unable to process a delivery due to a permanent problem relating to the given destination address and is requesting that the message and all other messages queued to the same destination should NOT be retried any further.
ESME_RX_R_APPN 0x00000066 102 ESME Receiver Reject Message Error Code. RX or TRX ESME is unable to process a delivery due to a problem relating to the given message and is requesting that the message is rejected and not retried. This does not affect other messages queued for the same ESME or destination address.
ESME_RQUERYFAIL 0x00000067 103 query_sm request failed. Generic failure scenario for a query request.
ESME_RINVTLVSTREAM 0x000000C0 192 Error in the optional part of the PDU Body. Decoding of TLVs (Optional Parameters) has resulted in one of the following scenarios:
ESME_RTLVNOTALLWD 0x000000C1 193 TLV not allowed. A TLV has been used in an invalid context, either inappropriate or deliberately rejected by the operator.
ESME_RINVTLVLEN 0x000000C2 194 Invalid Parameter Length. A TLV has specified a length that is considered invalid.
ESME_RMISSINGTLV 0x000000C3 195 Expected TLV missing. A mandatory TLV such as the `message_payload` TLV within a data_sm PDU is missing.
ESME_RINVTLVVAL 0x000000C4 196 Invalid TLV Value. The data content of a TLV is invalid and cannot be decoded.
ESME_RDELIVERYFAILURE 0x000000FE 254 Transaction Delivery Failure. A data_sm or submit_sm operation issued in transaction mode has resulted in a failed delivery.
ESME_RUNKNOWNERR 0x000000FF 255 Unknown Error. Some unexpected error has occurred. A general error occurred for which a more specific error code is not available.
ESME_RSERTYPUNAUTH 0x00000100 256 ESME Not authorised to use specified `service_type`. Specific `service_type` has been denied for use by the given ESME. The ESME is not authorized to use the specified service type.
ESME_RPROHIBITED 0x00000101 257 ESME Prohibited from using specified operation. The PDU request was recognised but is denied to the ESME. The ESME is not allowed to perform the requested operation.
ESME_RSERTYPUNAVAIL 0x00000102 258 Specified `service_type` is unavailable. Due to a service outage within the MC, a service is unavailable. The requested service type is currently unavailable.
ESME_RSERTYPDENIED 0x00000103 259 Specified `service_type` is denied. Due to inappropriate message content wrt. the selected `service_type`. The requested service type is denied due to message content.
ESME_RINVDCS 0x00000104 260 Invalid `Data Coding Scheme`. Specified DCS is invalid or MC does not support it. The Data Coding Scheme is invalid or unsupported by the SMSC/MC.
ESME_RINVSRCADDRSUBUNIT 0x00000105 261 Source Address Subunit is invalid. The source address subunit is invalid.
ESME_RINVDSTADDRSUBUNIT 0x00000106 262 Destination Address Subunit is invalid. The destination address subunit is invalid.
ESME_RINVBCASTFREQINT 0x00000107 263 Broadcast Frequency Interval is invalid. Specified value is either invalid or not supported.
ESME_RINVBCASTALIAS_NAME 0x00000108 264 Broadcast Alias Name is invalid. Specified value has an incorrect length or contains invalid/unsupported characters.
ESME_RINVBCASTAREAFMT 0x00000109 265 Broadcast Area Format is invalid. Specified value violates protocol or is unsupported.
ESME_RINVNUMBCAST_AREAS 0x0000010A 266 Number of Broadcast Areas is invalid. Specified value violates protocol or is unsupported.
ESME_RINVBCASTCNTTYPE 0x0000010B 267 Broadcast Content Type is invalid. Specified value violates protocol or is unsupported.
ESME_RINVBCASTMSGCLASS 0x0000010C 268 Broadcast Message Class is invalid. Specified value violates protocol or is unsupported.
ESME_RBCASTFAIL 0x0000010D 269 broadcast_sm operation failed. The broadcast message submission failed.
ESME_RBCASTQUERYFAIL 0x0000010E 270 query_broadcast_sm operation failed. The query broadcast message operation failed.
ESME_RBCASTCANCELFAIL 0x0000010F 271 cancel_broadcast_sm operation failed. The cancel broadcast message operation failed.
ESME_RINVBCAST_REP 0x00000110 272 Number of Repeated Broadcasts is invalid. Specified value violates protocol or is unsupported.
ESME_RINVBCASTSRVGRP 0x00000111 273 Broadcast Service Group is invalid. Specified value violates protocol or is unsupported.
ESME_RINVBCASTCHANIND 0x00000112 274 Broadcast Channel Indicator is invalid. Specified value violates protocol or is unsupported.
Reserved 0x00000400-0x000004FF 1024-1279 Reserved for MC vendor specific errors. This range of error codes is reserved for use by individual SMSC/MC vendors for their own specific error conditions. Consult the vendor's documentation for details.