Skip to content

SMS Sender ID not coming in SNS Service even after DLT Registration India

0

We're making the following publish message API from the AWS SDK 2.0 for Java, with the following request body PublishRequest(PhoneNumber=PHONE_NUMBER_WITH_COUNTRY_CODE Message=User has trusted you with sharing their NetWorth details through XYZ. View it here: https://url.one/app?s=2504101 , MessageAttributes={EntityId=MessageAttributeValue(DataType=String, StringValue=MY_ENTITY_ID), AWS.SNS.SMS.SMSType=MessageAttributeValue(DataType=String, StringValue=Transactional), AWS.SNS.SMS.SenderID=MessageAttributeValue(DataType=String, StringValue=MY_SENDER_ID), TemplateId=MessageAttributeValue(DataType=String, StringValue=MY_TEMPLATE_ID)})

The sender ID I am sending is correct and is already showing as registered in the AWS SMS End User Messaging Service, but the SMS is being received from a random short code 8 digit number

2 Answers
1

Please note that with introduction of End User Messaging service and the recent changes, SMS resources are now managed and owned by End User Messaging service and can be shared across accounts [1]. With this, now the origination identities like phone number or sender ID have resource policies in End User Messaging that dictates which entities (service/user/account) can access that particular identity to send text messages.

[1] https://aws.amazon.com/about-aws/whats-new/2024/09/amazon-sns-delivers-sms-text-messages-aws-end-user-messaging/

In order to make SNS service use the registered senderID to send SMS messages, you would need to grant access to SNS service in resource policy of sender ID present in End User Messaging console [2].

[2] https://docs.aws.amazon.com/sms-voice/latest/userguide/shared-resources.html#sharing-policy-example

Please kindly check if you have given the below permission statement in the resource policy of senderID present in End User Messaging service console. If not, then you are require to add the same and test sending sms messages from SNS service.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "sns.amazonaws.com"
      },
      "Action": "sms-voice:SendTextMessage",
      "Resource": "arn:aws:sms-voice:<REGION>:<ACCOUNT-ID>:sender-id/<SENDER-ID>/<COUNTRY-CODE>",
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "<ACCOUNT-ID>"
        }
      }
    }
AWS
EXPERT

answered 2 years ago

0

The issue you're experiencing with your SMS sender ID not appearing as expected is a common concern when using AWS SNS for SMS messaging, especially in countries like India where there are specific regulations for sender IDs.

There are a few potential reasons why your sender ID is not coming through:

  1. Sender ID Registration: Even if your sender ID is showing as registered in the AWS SMS End User Messaging Service, it's crucial to ensure that it's properly registered with the local regulatory body in India, which is the Distributed Ledger Technology (DLT) platform. This registration process is separate from AWS and is required for sender IDs to be displayed in India.

  2. AWS Region Configuration: Make sure you're using the correct AWS region when sending your SMS messages. If you're sending from a region different from where your sender ID is registered, it may not be applied correctly.

  3. Message Type: You've set the SMS type as "Transactional" in your request, which is correct for this use case. However, ensure that this aligns with how the sender ID and template are registered with the DLT platform.

  4. Template Registration: The template you're using must also be registered and approved through the DLT platform. If there's a mismatch between your registered template and the message content, it could cause issues with sender ID display.

  5. Carrier Limitations: Some mobile carriers may have limitations or specific requirements for displaying sender IDs, which could result in a short code being displayed instead.

To resolve this issue:

  1. Double-check your DLT registration to ensure your sender ID, entity ID, and template ID are all correctly registered and approved.

  2. Verify that you're sending from the AWS region where your sender ID is registered.

  3. Make sure the message content exactly matches your approved template.

  4. If the issue persists, you may need to contact AWS Support to investigate further, as they can provide more detailed information about message delivery and any potential issues with your sender ID configuration.

Remember that sender ID support and requirements can vary by country and carrier, so it's important to stay compliant with local regulations and AWS policies for SMS messaging.

Sources
How to request a sender ID through AWS Support - AWS End User Messaging SMS
Requesting support for Amazon SNS SMS messaging - Amazon Simple Notification Service
Sender IDs in AWS End User Messaging SMS - AWS End User Messaging SMS

answered 2 years ago

  • yes, have verified all these but still does not work

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.