# SMPP submission error codes All errors on the SMPP connection received in `submit_sm_resp` are described in the [SMPP Protocol Specification v3.4 Issue 1.2 chapter 5.1.3 command_status](https://smpp.org/SMPP_v3_4_Issue1_2.pdf#page=112). ## Message state information A message will always be in one of the following states: | Message state | Value | Description | | --- | --- | --- | | ENROUTE | 1 | Message is in the process of being sent to the destination | | Delivered | 2 | Message has been delivered to destination | | EXPIRED | 3 | Message validity period has expired | | DELETED | 4 | Message has been deleted | | UNDELIVERABLE | 5 | Message is undeliverable | | UNKNOWN | 7 | Message is in invalid state | The states are described in the [SMPP Protocol Specification v3.4 Issue 1.2 chapter 5.2.28 message_state](https://smpp.org/SMPP_v3_4_Issue1_2.pdf#page=130). The message state value is also attached in a SMPP Optional Parameter `message_state` value 0x0427 described in the [SMPP Protocol Specification v3.4 Issue 1.2 chapter 5.3.2.35](https://smpp.org/SMPP_v3_4_Issue1_2.pdf#page=154). ## Status reports error codes The error codes are provided in status reports according to the [SMPP Protocol Specification v3.4 Issue 1.2, Appendix B](https://smpp.org/SMPP_v3_4_Issue1_2.pdf#page=167). Error codes come in two types: **permanent** means that the send message failure will continue, regardless of how many times the user tries the same operations (for example, if the destination phone number is incorrect). **Temporary** means that the send message operation may succeed if circumstances change (for example, system congestion clears up). The following table displays the error codes Sinch networks will be sending. **US customers**--just looking for 10DLC or toll-free number SMPP errors? Find those [here](/docs/sms/smpp/10dlc-errors). | Error | Error Class | Description | Comment/action | Treated as | | --- | --- | --- | --- | --- | | 0 | NO ERROR | No error/unknown error. | | Temporary | | 1 | ROUTING ERROR | Source not found. Internal routing error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 2 | ROUTING ERROR | Sink not found. Internal routing error | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 3 | ROUTING ERROR | Delivery zone not found. Internal routing error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 4 | ROUTING ERROR | Traffic limit exceeded. Internal routing error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 5 | ROUTING ERROR | Location not found. Internal routing error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 6 | ROUTING ERROR | Location blocked. Internal routing error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 7 | ROUTING ERROR | Reply path not found. Internal routing error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 8 | ROUTING ERROR | Message not submitted. Internal routing error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 9 | ROUTING ERROR | Unsupported number plan. | | Permanent | | 10 | ROUTING ERROR | Unsupported type of number. | | Permanent | | 11 | ROUTING ERROR | Message not delivered. | | Permanent | | 12 | ROUTING ERROR | Dialing zone not found. | | Permanent | | 13 | ROUTING ERROR | Home zone and IMSI not allowed. | | Permanent | | 14 | ROUTING ERROR | Home zone and IMSI fetch failed. | | Temporary | | 15 | SCREENING ERROR | Screening block. | | Permanent | | 16 | SCREENING ERROR | Terminating IMSI blocked. | | Permanent | | 17 | ROUTING ERROR | Destination network type unknown. | | Permanent | | 18 | ESME ERROR | ESME error | | Temporary | | 19 | SCREENING ERROR | Originating location mismatch. | | Permanent | | 20 | | Originating reservation failed. | | | | 21 | | Originating reservation denied. Subscription not found. | | | | 22 | | Originating reservation denied. Subscription state illegal. | | | | 23 | | Originating reservation denied. Call case blocked for subscription. | | | | 24 | | Originating reservation denied. Call case blocked for subscription type. | | | | 25 | | Originating reservation denied. Low balance. Internal Error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 30 | | Terminating reservation failed. | | | | 31 | | Terminating reservation denied subscription not found. | | | | 32 | | Terminating reservation denied subscription state illegal. | | | | 33 | | Terminating reservation denied call case blocked for subscription. | | | | 34 | | Terminating reservation denied call case blocked for subscription type. | | | | 35 | SCREENING ERROR | Terminating reservation denied due to low balance. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 40 | INTERNAL ERROR | System Congestion. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 41 | | Originating IMSI mismatch. | | | | 45 | | Quarantine add. | | | | 46 | | Quarantine remove. | | | | 50 | INTERNAL ERROR | Error from Store. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 51 | INTERNAL ERROR | Direct delivery disabled from Store. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 52 | INTERNAL ERROR | Error from Store: internal exception. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 53 | INTERNAL ERROR | Error from Store: number of stored messages exceeded. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 54 | INTERNAL ERROR | Error from Store: retry scheme ended. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 55 | INTERNAL ERROR | Error from store: invalid destination. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 56 | INTERNAL ERROR | Error from store: direct delivery disabled from ESME cache. Internal error | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 57 | | Error from store: ESME cache limit exceeded | | | | 58 | | Error from store: scheduled delivery time limit exceeded | | | | 60 | SCREENING ERROR | Originator blocked. | | Permanent | | 61 | SCREENING ERROR | Destination blocked. | Account not permitted to reach the destination MSISDN. To troubleshoot this message, try the following:**Use the Right Account or Service:** Make sure you are using the appropriate account or service for the destination you're trying to reach.**Number Format Check:** Ensure the phone number is in the correct E-164 format. It should start with the country code and be followed by the phone number, like “11234567890”, without including the '+' sign. [Learn more](https://developers.sinch.com/docs/verification/android/android-phone-numbers/#phone-numbers).**note:** If the recipient has chosen not to receive messages (Opted Out opted out), try reaching them in an alternative manner or avoid texting this number again. | Permanent | | 62 | SCREENING ERROR | Keyword blocked. | A phrase or word in the body of the message has been caught in the anti-spam filter. To troubleshoot this message, try the following:**Review and Compliance:** Carefully examine your message for any high-risk phrases, links, or keywords and make sure it adheres to the specific rules and regulations in your area. Learn more about content review and local compliance.**Test Message:** After reviewing and adjusting your message, send a test version to ensure it successfully goes through without any issues. | Permanent | | 63 | SCREENING ERROR | SC (short code) address blocked | | Permanent | | 64 | SCREENING ERROR | Blocked due to exceeded quota. | | Permanent | | 65 | SCREENING ERROR | Loop detected. | | Permanent | | 66 | SCREENING ERROR | Data coding scheme blocked. | | Permanent | | 67 | SCREENING ERROR | Information element identifier blocked. | | Permanent | | 68 | | Country code validation blocked | | | | 70 | ESME ERROR | No ESME provider available. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 71 | ESME ERROR | ESME account not connected. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 72 | ESME ERROR | ESME no account routing. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 73 | ESME ERROR | ESME account blocked. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 74 | ESME ERROR | ESME local TX throttling. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 75 | ESME ERROR | ESME outstanding requests exceeded. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 76 | ESME ERROR | ESME router route not found. Internal error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 77 | ESME ERROR | ESME router IMSI lookup failed. | | Permanent | | 78 | | Error from ESME router, route suspended | | | | 80 | | Error from SMSC source, home routing sender GT mismatch | | | | 81 | | Error from MO source, location mismatch between provided location and location known to HLR. | | | | 82 | | Error from MO source, IMSI mismatch between provided IMSI (MAP v3) and IMSI known to HLR. | | | | 83 | | Error from MS and SMSC sink, local throttling by the sink. | | | | 100 | SMSC ERROR | Unidentified Subscriber. | | Permanent | | 101 | SMSC ERROR | Facility not supported. | | Temporary | | 102 | SMSC ERROR | System failure. | | Temporary | | 103 | SMSC ERROR | Unexpected data value . | | Permanent | | 104 | SMSC ERROR | Data missing. | | Permanent | | 105 | SMSC ERROR | Equipment protocol error. | | Permanent | | 106 | SMSC ERROR | Unknown service center address. | | Temporary | | 107 | SMSC ERROR | Service center congestion. | | Temporary | | 108 | SMSC ERROR | Invalid short message entity address. | | Permanent | | 109 | SMSC ERROR | Subscriber not service centre subscriber. | | Temporary | | 110 | SMSC ERROR | Reject. | Indicates temporary problem or lost reach. | Permanent | | 111 | SMSC ERROR | Local cancel. | Indicates temporary problem or lost reach. | Temporary | | 112 | SMSC ERROR | Abort. | Indicates temporary problem or lost. | Temporary | | 113 | SMSC ERROR | Exception (internal). | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 114 | SMSC ERROR | Unknown error. | | Temporary | | 150 | HLR ERROR | Unknown subscriber. | Message is rejected because the MSISDN is not active with the carrier. To troubleshoot this error, try the following:**Number Format Check:** Ensure the phone number is in the correct E-164 format. It should start with the country code and be followed by the phone number, like “11234567890”, without including the '+' sign.**Confirm Phone Number Validity:** Ensure that the phone number you are trying to message is valid and currently active. Check that it is not blocked or restricted in any way on your account.[Learn more for iOS](https://developers.sinch.com/docs/verification/ios/ios-phone-numbers/)[learn more for Android.](https://developers.sinch.com/docs/verification/android/android-phone-numbers/)**restart the Phone:** Message Recipient may need to turn the phone off and then on again to refresh its connection.**Test Another Number:** Try sending a message to a different number on the same network to pinpoint the issue.**Wait and Retry:** If the issue persists, give it some time and then try sending the message again later. | Permanent | | 151 | HLR ERROR | Call barred. | Message rejected due to active barring by the end-user. To troubleshoot this error, try the following:The person receiving the message needs to call their mobile service provider to fix any blocks on their account. It might be best to stop sending messages to this number for now. | Permanent | | 152 | HLR ERROR | Teleservice not provisioned. | Message is rejected because the recipient mobile subscriber has no SMS subscription. | Permanent | | 153 | HLR ERROR | Absent subscriber. | Subscriber handset not connected to the network. Likely turned off or outside the area of coverage. To troubleshoot this error, try the following:**Check the Phone Number:** Make sure the number is correct and working with the mobile service provider.**Check the Phone:** Recipient may need to confirm the phone is on and has a strong signal**Restart the Phone:** Message Recipient may need to turn the phone off and on again to refresh its connection.**Wait and Retry:** If the issue persists, give it some time and then try sending the message again later. | Temporary | | 154 | HLR ERROR | Facility not supported. | The message is rejected due to no provision of the SMS in the VPLMN. | Permanent | | 155 | HLR ERROR | System failure. | Message rejected due to network or protocol failure. | Temporary | | 156 | HLR ERROR | Unexpected data value. | | Permanent | | 157 | HLR ERROR | Data missing. | | Permanent | | 158 | HLR ERROR | Memory capacity exceeded. | The handset does not have sufficient free memory to accept the SMS. To troubleshoot this error, try the following:Recipient may need to make sure the phone has enough space for new messages. Delete old texts if necessary. | Temporary | | 159 | HLR ERROR | Mobile subscriber not reachable. | | Temporary | | 160 | HLR ERROR | Reject. | Indicates temporary problem or lost reach. | Permanent | | 161 | HLR ERROR | Local Cancel. | Indicates temporary problem or lost reach. | Temporary | | 162 | HLR ERROR | Abort. | Indicates temporary problem or lost reach. | Temporary | | 163 | HLR ERROR | Exception (internal). | [Contact your account manager.](https://dashboard.sinch.com/account/details) (Local error). | Permanent | | 164 | HLR ERROR | Unknown error. | | Temporary | | 200 | MSC ERROR | Unidentified subscriber. | | Temporary | | 201 | MSC ERROR | Absent subscriber, IMSI detached. | Subscriber is absent and has been for a period of time. | Temporary | | 202 | MSC ERROR | Absent subscriber, no page response. | The message is rejected because there was no paging response. | Temporary | | 203 | MSC ERROR | Subscriber busy for MT SMS. | The message is rejected because of congestion encountered at the visited MSC. | Temporary | | 204 | MSC ERROR | Facility not supported. | The message is rejected due to no provision of the SMS in the destination SIM. | Permanent | | 205 | MSC ERROR | Illegal subscriber. | Message rejected because of failed authentication. | Permanent | | 206 | MSC ERROR | Illegal equipment. | Message rejected because the mobile subscriber was blacklisted. | Permanent | | 207 | MSC ERROR | System failure. | Message rejected due to network or protocol failure. | Temporary | | 208 | MSC ERROR | Unexpected data value. | | Permanent | | 209 | MSC ERROR | Data missing. | | Permanent | | 210 | MSC ERROR | Memory capacity exceeded. | Message rejected because the mobile subscriber doesn’t have enough memory. | Temporary | | 211 | MSC ERROR | Equipment protocol error. | | Temporary | | 212 | MSC ERROR | Device not short message equipped. | The number cannot receive text messages, for example Data-SIMs. To troubleshoot this error, try the following:**Check Number Type:** Recipient may need to ensure the number can receive texts. It shouldn't be a data-only SIM card, landline, VoIP, or any special service number that can't get text messages. | Temporary | | 213 | MSC ERROR | Reject. | Indicates temporary problem or lost reach. | Permanent | | 214 | MSC ERROR | Local Cancel. | Indicates temporary problem or lost reach. | Temporary | | 215 | MSC ERROR | Abort. | Indicates temporary problem or lost reach. | Temporary | | 216 | MSC ERROR | Exception (internal). | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Permanent | | 217 | MSC ERROR | Unknown error. | | Temporary | | 250 | SCREENING ERROR | Personal service barring, MO Personal. | Determined Barring White List. | Permanent | | 251 | SCREENING ERROR | Personal service barring, MO Personal. | Determined Barring Black List. | Permanent | | 252 | SCREENING ERROR | Personal service barring, MO Operator. | Determined Barring White List. | Permanent | | 253 | SCREENING ERROR | Personal service barring, MO Operator. | Determined Barring Black List. | Permanent | | 254 | SCREENING ERROR | Personal service barring, MT Personal. | Determined Barring White List. | Permanent | | 255 | SCREENING ERROR | Personal service barring, MT Personal. Determined Barring Black List. | The end-user has opted out from receiving messages. Either all A2P messages or sender ID specific. To troubleshoot this error, try the following:**Check for Blocks:** Ensure no filters or bars are preventing the number from receiving messages.**Contact Support:** If you're unsure, reach out to your service provider’s help team.**Test Message:** Send a test message to ensure the issue is resolved. | Permanent | | 256 | SCREENING ERROR | Personal service barring, MT Operator. | Determined Barring White List. | Permanent | | 257 | SCREENING ERROR | Personal service barring, MT Operator. | Determined Barring Black List. | Permanent | | 280 | | SM external control. | Indicates internal network problem. | Temporary | | 300 | ESME EXTERNAL ERROR | Invalid destination address. | The MSISDN does not exist. To troubleshoot this error, try the following:**Number Format Check:** Ensure the phone number is in the correct E-164 format. It should start with the country code and be followed by the phone number, like “11234567890”, without including the '+' sign. [Learn more](https://developers.sinch.com/docs/verification/android/android-phone-numbers/#phone-numbers).**confirm Phone Number Validity:** Ensure that the phone number you are trying to message is valid and currently active. Check that it is not blocked or restricted in any way on your account.Follow the Rules: Ensure your message meets all the local laws. [Check the rules](https://dashboard.sinch.com/login).**For Developers:** If using SMPP, set TON/NPI values to 1/1. | Permanent | | 301 | ESME EXTERNAL ERROR | Invalid destination numbering plan. | | Permanent | | 302 | ESME EXTERNAL ERROR | Invalid destination type of number. | | Permanent | | 303 | ESME EXTERNAL ERROR | Invalid destination flag. | | Permanent | | 304 | ESME EXTERNAL ERROR | Invalid number of destinations. | | Permanent | | 310 | ESME EXTERNAL ERROR | Invalid source address. | The source address is not permitted. Refer to Country Information and local regulations. To troubleshoot this error, try the following:**Check Sender Name/Number:** Make sure the sender ID is set up properly.**Follow the Rules:** Ensure your message meets all the local laws. [Check the rules](https://dashboard.sinch.com/login). | Permanent | | 311 | ESME EXTERNAL ERROR | Invalid source numbering plan. | | Permanent | | 312 | ESME EXTERNAL ERROR | Invalid source type of number. | | Permanent | | 320 | ESME EXTERNAL ERROR | ESME Receiver permanent error. | | Permanent | | 321 | ESME EXTERNAL ERROR | ESME Receiver reject error. | | Permanent | | 322 | ESME EXTERNAL ERROR | ESME Receiver temporary error. | | Temporary | | 330 | ESME EXTERNAL ERROR | Invalid command length. | | Permanent | | 331 | ESME EXTERNAL ERROR | Invalid service type. | | Permanent | | 332 | ESME EXTERNAL ERROR | Invalid operation. | | Permanent | | 333 | ESME EXTERNAL ERROR | Operation not allowed. | | Permanent | | 334 | ESME EXTERNAL ERROR | Invalid parameter. | | Permanent | | 335 | ESME EXTERNAL ERROR | Parameter not allowed. | | Permanent | | 336 | ESME EXTERNAL ERROR | Invalid parameter length. | | Permanent | | 337 | ESME EXTERNAL ERROR | Invalid optional parameter. | | Permanent | | 338 | ESME EXTERNAL ERROR | Optional parameter missing. | | Permanent | | 339 | ESME EXTERNAL ERROR | Invalid validity parameter. | | Permanent | | 340 | ESME EXTERNAL ERROR | Invalid scheduled delivery parameter. | | Permanent | | 341 | ESME EXTERNAL ERROR | Invalid distribution list. | | Permanent | | 342 | ESME EXTERNAL ERROR | Invalid message class. | | Permanent | | 343 | ESME EXTERNAL ERROR | Invalid message length. | | Permanent | | 344 | ESME EXTERNAL ERROR | Invalid message reference. | | Permanent | | 345 | ESME EXTERNAL ERROR | Invalid number of messages. | | Permanent | | 346 | ESME EXTERNAL ERROR | Invalid predefined message. | | Permanent | | 347 | ESME EXTERNAL ERROR | Invalid priority. | | Permanent | | 348 | ESME EXTERNAL ERROR | Invalid replace flag. | | Permanent | | 349 | ESME EXTERNAL ERROR | Request failed. | | Permanent | | 350 | ESME EXTERNAL ERROR | Invalid delivery report request. | | Temporary | | 360 | ESME EXTERNAL ERROR | Message queue full. | | Temporary | | 361 | ESME EXTERNAL ERROR | External error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 362 | ESME EXTERNAL ERROR | External error. | [Contact your account manager.](https://dashboard.sinch.com/account/details) | Temporary | | 370 | ESME EXTERNAL ERROR | Can't find information. | | Temporary | | 399 | ESME EXTERNAL ERROR | Unknown. | | Temporary | ## Additional resources - [SMPP Connectivity](/docs/sms/smpp/connectivity) - Prefer a REST API? [Get started with the REST SMS API](/docs/sms/getting-started).