My mobile text messages (SMS messages) fail to get delivered through Amazon Simple Notification Service (Amazon SNS) or Amazon Pinpoint. Then, I receive the "Unknown error attempting to reach phone" error from SMS in Amazon SNS or Amazon Pinpoint.
Short description
An SMS message is delivered to mobile devices through third-party downstream aggregators, SMS suppliers, and mobile carriers. That is, when you use SMS with Amazon SNS, Amazon Pinpoint, or any AWS service that integrates with either Amazon SNS or Amazon Pinpoint. You receive the "Unknown error attempting to reach phone" error when these downstream partners can't reach the mobile device.
Important: SMS architecture is distributed by design. It's a best practice to avoid making assumptions about the reliability and performance of SMS message transmission for your applications. For more information, see RFC 5724 from the Internet Engineering Task Force (IETF).
Resolution
Check for common issues
Rule out common issues that are not related to Amazon SNS or Amazon Pinpoint.
You can receive the error for the following reasons:
- The phone number is blocked by a carrier as spam.
- The destination is blocked.
- The message body is not valid.
- The phone number is on a "Do Not Disturb" list.
- The phone is in a roaming network.
- The phone carrier is blocking the message.
- The phone is blocking SMS.
- The phone is temporarily out of the coverage area.
- The phone is turned off.
- The phone is a landline number (not a mobile phone).
- There is an unregistered URL in the message body.
- The mobile number is not valid.
- Downstream partners have incorrect network configurations for a given number or set of regional numbers.
Review SMS best practices
Confirm that you're following SMS best practices, rules, and regulations for the destination country or AWS Region where you send your SMS messages.
Confirm that you're using the correct origination identity. If required, the identity must be registered. For more information, see Supported countries and regions (SMS channel).
If you send SMS messages to the US, see Special requirements for sending SMS messages to US destinations.
If you send SMS messages to India using local routes, first pre-register your dedicated alphabetic sender ID. Then, use the DLT registered template. For more information, see Special requirements for sending SMS messages to recipients in India.
Troubleshoot single device delivery issues
Device-level SMS blocking, roaming, coverage gaps, and other factors can cause single device delivery issues.
To troubleshoot these issues:
- Use the Amazon Pinpoint API to validate the phone number.
- Send an SMS message from another device, and then check if the message was delivered.
If both steps above are successful, then consider testing on other devices.
If the issue persists, then the device owner should contact their mobile carrier for support.
Troubleshoot multiple device delivery issues
If the SMS delivery is affecting multiple devices, there could be issues with downstream aggregators, suppliers, and carriers
To troubleshoot potential downstream issues, create a support case for the service that you're using to send SMS messages.
Provide the following information in your support case:
- The Region that you're using to send SMS messages
- A timestamp of when the issue started
- Samples of SMS logs with message IDs of failed SMS messages to at least three or four different numbers not older than three days
Note: Generally, mobile carriers don't store SMS information for more than three days.