SMPP error codes indicating the outcome of an SMPP operation.
The following is a partial list of SMPP error codes (command_status and error_status_code) where applicable to SMPP v3.x and v5. A full list can be found in section 4.7.6 of the SMPP v5 specification.
Command Status Name | Value (hex) | Value (dec) | Description |
---|---|---|---|
ESME_ROK | 0x00000000 | 0 | No error. |
ESME_RINVMSGLEN | 0x00000001 | 1 | Message Length is invalid. |
ESME_RINVCMDLEN | 0x00000002 | 2 | Command Length is invalid. 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 . |
ESME_RINVBNDSTS | 0x00000004 | 4 | Incorrect BIND Status for given command. PDU has been sent in the wrong session state. E.g. sending a submit_sm without first establishing a Bound_TX session state. |
ESME_RALYBND | 0x00000005 | 5 | ESME Already in Bound State. A bind request has been issued within a session that is already bound. |
ESME_RINVPRTFLG | 0x00000006 | 6 | Invalid Priority Flag .
Priority flag contains an illegal or unsupported value. |
ESME_RINVREGDLVFLG | 0x00000007 | 7 | Invalid Registered Delivery Flag .Registered field contains an invalid setting. |
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. |
ESME_RINVSRCADR | 0x0000000A | 10 | Invalid Source Address . |
ESME_RINVDSTADR | 0x0000000B | 11 | Invalid Destination Address . |
ESME_RINVMSGID | 0x0000000C | 12 | Message ID is invalid. |
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 .Password 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 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. |
ESME_RREPLACEFAIL | 0x00000013 | 19 | Replace SM Failed. Generic failure for replace_sm operation. |
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. |
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. |
ESME_RINVNUMDESTS | 0x00000033 | 51 | Invalid number of destinations. The number_of_dests field in the submit_multi PDU 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. |
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. |
ESME_RINVSUBREP | 0x00000042 | 66 | 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. |
ESME_RCNTSUBDL | 0x00000044 | 68 | Cannot Submit to Distribution List. Distribution lists are not supported, are denied or unavailable. |
ESME_RSUBMITFAIL | 0x00000045 | 69 | submit_sm, data_sm or submit_multi failed. Generic failure. Generic failure error for submission operations. |
ESME_RINVSRCTON | 0x00000048 | 72 | Invalid Source address TON .The source TON of the message is either invalid or unsupported. |
ESME_RINVSRCNPI | 0x00000049 | 73 | Invalid Source address NPI .The source NPI of the message is either invalid or unsupported. |
ESME_RINVDSTTON | 0x00000050 | 80 | Invalid Destination address TON .The destination TON of the message is either invalid or unsupported. |
ESME_RINVDSTNPI | 0x00000051 | 81 | Invalid Destination address NPI .The destination NPI of the message is either invalid or unsupported. |
ESME_RINVSYSTYP | 0x00000053 | 83 | Invalid system_type field.The System type of bind PDU has an incorrect length or contains illegal characters. |
ESME_RINVREPFLAG | 0x00000054 | 84 | Invalid replace_if_present flag.The replace_if_present flag has been encoded with an invalid or unsupported setting. |
ESME_RINVNUMMSGS | 0x00000055 | 85 | Invalid number of messages. |
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. |
ESME_RINVSCHED | 0x00000061 | 97 | Invalid Scheduled Delivery Time . |
ESME_RINVEXPIRY | 0x00000062 | 98 | Invalid message validity period (Expiry time). |
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. |
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. |
ESME_RSERTYPUNAUTH | 0x00000100 | 256 | ESME Not authorised to use specified service_type .Specific service_type has been denied for use by the given ESME. |
ESME_RPROHIBITED | 0x00000101 | 257 | ESME Prohibited from using specified operation. The PDU request was recognised but is denied to the ESME. |
ESME_RSERTYPUNAVAIL | 0x00000102 | 258 | Specified service_type is unavailable.Due to a service outage within the MC, a service is unavailable. |
ESME_RSERTYPDENIED | 0x00000103 | 259 | Specified service_type is denied.Due to inappropriate message content wrt. the selected service_type . |
ESME_RINVDCS | 0x00000104 | 260 | Invalid Data Coding Scheme .Specified DCS is invalid or MC does not support it. |
ESME_RINVSRCADDRSUBUNIT | 0x00000105 | 261 | Source Address Subunit is invalid. |
ESME_RINVDSTADDRSUBUNIT | 0x00000106 | 262 | 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. |
ESME_RBCASTQUERYFAIL | 0x0000010E | 270 | query_broadcast_sm operation failed. |
ESME_RBCASTCANCELFAIL | 0x0000010F | 271 | cancel_broadcast_sm 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. |