Skip to main content
Sending SMS internationally requires compliance with country-specific regulations for sender IDs, opt-in consent, content restrictions, and registration requirements. This guide covers the top 10 international messaging destinations and their specific rules.
Regulations change frequently. This guide reflects requirements as of early 2026. Always verify current requirements with Telnyx support before launching messaging in a new country.

Sender ID types by country

Not every sender type works in every country. Here’s what’s supported in the top international destinations:
CountryAlphanumeric IDLong CodeShort CodeToll-FreePre-Registration
🇺🇸 United States✅ (10DLC)10DLC required
🇨🇦 CanadaShort code approval
🇬🇧 United KingdomRecommended
🇩🇪 GermanyNo
🇫🇷 FranceOACP required
🇪🇸 SpainNo
🇦🇺 AustraliaSender ID registration
🇮🇳 India✅ (registered)DLT mandatory
🇧🇷 BrazilNo
🇲🇽 MexicoNo
US/Canada note: Alphanumeric sender IDs are not supported for US and Canadian destinations. Use 10DLC, toll-free, or short codes.

Countries requiring pre-registration

Several countries require sender ID or entity registration before you can send messages. Failing to register results in blocked traffic or filtered messages.

Mandatory registration

India requires Distributed Ledger Technology (DLT) registration for all A2P SMS. This is the most complex international registration requirement.What you need:
  1. Entity registration on a DLT platform (JioConnect, Vodafone DLT, Airtel DLT, or BSNL DLT)
  2. Header (sender ID) registration — your alphanumeric sender ID must be approved
  3. Template registration — every message template must be pre-approved
  4. Content category — transactional, promotional, or service
Registration steps:
  1. Register as a business entity on one of the DLT platforms
  2. Submit your sender ID (called “header”) for approval
  3. Create and submit message templates
  4. Provide Telnyx with your DLT Entity ID, registered headers, and template IDs
Message categories:
CategoryAllowed HoursDND FilteringExample
Transactional24/7ExemptOTP, order confirmations
Service (Implicit)24/7ExemptAccount updates to existing customers
Promotional9 AM – 9 PM ISTAppliesMarketing, offers, discounts
Promotional messages to users on the Do Not Disturb (DND) registry will be blocked. Transactional and service messages are exempt from DND filtering.
Template format:
Dear {#var#}, your order {#var#} has been shipped.
Track at {#var#}. Delivery by {#var#}.
Variables are marked with {#var#} and the template must match exactly at delivery time.
France requires registration through the Off-net Application-to-Person (OACP) framework for commercial SMS.Requirements:
  • Sender ID must be registered with French carriers
  • Opt-out must include “STOP” at no cost to the recipient
  • Commercial messages restricted to 8 AM – 8 PM local time
  • No commercial SMS on Sundays or public holidays
  • CNIL (French data authority) consent rules apply
Registration process:
  1. Submit sender ID registration through Telnyx support
  2. Provide business documentation (SIRET number for French businesses)
  3. Allow 5–10 business days for approval
Unregistered sender IDs may be silently filtered by French carriers.
Australia’s ACMA requires sender ID registration for A2P messaging.Requirements:
  • Alphanumeric sender IDs must be registered with carriers
  • Messages must include opt-out instructions
  • Commercial messages must comply with the Spam Act 2003
  • Sender must have consent (express or inferred)
Registration:
  1. Submit sender ID through Telnyx support
  2. Provide Australian Business Number (ABN) or equivalent
  3. Typical approval: 3–5 business days
Singapore’s SMS Sender ID Registry (SSIR) requires all organizations to register sender IDs.Requirements:
  • Mandatory SSIR registration since January 2023
  • Unregistered alphanumeric sender IDs display as “Likely-SCAM”
  • Registration through SGNIC (Singapore Network Information Centre)
Process:
  1. Register on the SSIR portal (sgnic.sg)
  2. Submit sender ID with business documentation
  3. Link registered sender ID to Telnyx account via support
CountryRegistrationBenefit
🇬🇧 United KingdomSender ID pre-registrationHigher delivery rates, reduced filtering
🇩🇪 GermanyNone required
🇪🇸 SpainNone required
🇧🇷 BrazilSender ID registrationBetter deliverability
🇲🇽 MexicoNone required

Opt-in requirements by region

Europe (GDPR + ePrivacy)

The EU’s GDPR and ePrivacy Directive set the baseline for all EU/EEA countries:
1

Explicit consent required

Recipients must actively opt in to receive messages. Pre-checked boxes are not valid consent under GDPR.
2

Purpose limitation

Consent must specify what types of messages the user will receive. “We may contact you” is too vague.
3

Right to withdraw

Users must be able to opt out at any time, and the process must be as easy as opting in.
4

Record keeping

Maintain records of when and how consent was obtained. You must be able to prove consent if challenged.
GDPR-compliant consent example:
☐ I agree to receive appointment reminders and order updates from [Company]
  via SMS to the phone number provided. Message frequency: up to 4 msg/month.
  Reply STOP to unsubscribe. Msg & data rates may apply.
Country variations within the EU:
  • Germany: Requires “double opt-in” (confirmation SMS after initial signup) as best practice
  • France: CNIL requires explicit, separate consent for marketing SMS
  • Spain: AEPD allows “soft opt-in” for existing customers (similar products/services only)
  • Italy: Garante requires clear separation between service and marketing consent

North America

RequirementUnited StatesCanada
Governing lawTCPA + CTIA guidelinesCASL
Consent typeExpress written (marketing) / Express (transactional)Express or implied
Opt-out mechanismSTOP keyword mandatoryUnsubscribe mechanism required
Record retentionRecommended 4+ yearsDuration of consent
Pre-registration10DLC / toll-free verificationShort code approval

Asia-Pacific

CountryKey requirement
🇮🇳 IndiaDLT registration + template approval. DND registry filtering for promotional.
🇦🇺 AustraliaExpress consent required (Spam Act 2003). Include sender identity + opt-out.
🇸🇬 SingaporeSSIR registration. PDPA consent rules. No SMS between 9 PM – 9 AM without consent.
🇯🇵 JapanAct on Specified Commercial Transactions. Opt-out link required. Sender identification mandatory.
🇰🇷 South KoreaPre-approved templates only. 080 opt-out number required for commercial messages.

Latin America

CountryKey requirement
🇧🇷 BrazilLGPD consent required. No messages between 9 PM – 9 AM. Include opt-out.
🇲🇽 MexicoLFPDPPP consent. Include sender identity. Opt-out mechanism required.
🇨🇴 ColombiaSIC consent requirements. Habeas Data law. Pre-registration recommended.
🇦🇷 ArgentinaPDPA consent. National Do Not Call Registry must be checked.

Content restrictions

Universally restricted content

These content types are restricted or prohibited in most countries:
Content typeStatusNotes
Cannabis / CBD🚫 Prohibited in most countriesEven where locally legal, carriers often block
Gambling⚠️ Heavily regulatedRequires specific licensing in most jurisdictions
Adult content🚫 ProhibitedBlocked by most carriers globally
Phishing / fraud🚫 ProhibitedImmediate account termination
Financial services⚠️ RegulatedMust comply with local financial advertising laws
Healthcare / pharma⚠️ RegulatedPrescription drug messaging restricted in many countries
Political campaigns⚠️ Varies by countrySome countries ban political SMS entirely

Country-specific restrictions

  • Financial promotions: Must be approved by an FCA-authorized firm
  • Age-gated content: Must use age verification for alcohol, gambling
  • Charity messaging: Regulated by the Fundraising Regulator
  • Marketing hours: No legal restriction, but industry best practice is 8 AM – 9 PM
  • UWG (Competition Law): Strict consent requirements for all commercial messages
  • Heilmittelwerbegesetz: Restricts pharmaceutical advertising
  • Glücksspielstaatsvertrag: Strict gambling advertising rules
  • Double opt-in: Expected best practice for marketing consent
  • Loi Hamon: Right to opt out of all commercial solicitation
  • Time restrictions: No commercial SMS 8 PM – 8 AM, Sundays, or public holidays
  • CNIL enforcement: Active enforcement with significant fines
  • Language: Commercial messages should be in French
  • Promotional hours: 9 AM – 9 PM IST only (mandatory, not best practice)
  • DND registry: Promotional messages blocked to DND-registered numbers
  • Template approval: Every message must match a pre-approved template
  • Scrubbing: Numbers are checked against DND registry before delivery
  • LGPD compliance: Explicit consent with specific purpose
  • Quiet hours: 9 PM – 9 AM (industry standard)
  • Consumer code: Price/offer messages must include full terms
  • Language: Messages should be in Portuguese

Country-by-country reference

🇬🇧 United Kingdom

SettingValue
Sender typesAlphanumeric (recommended), long code, short code
Alphanumeric length3–11 characters
RegulationPECR + UK GDPR
RegulatorICO (Information Commissioner’s Office)
Pre-registrationRecommended (improves deliverability)
Opt-outSTOP keyword or unsubscribe link
Time restrictionsNone (best practice: 8 AM – 9 PM)
Send with alphanumeric sender ID:
curl -X POST https://api.telnyx.com/v2/messages \
  -H "Authorization: Bearer $TELNYX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "YourBrand",
    "to": "+447700900123",
    "text": "Hi! Your delivery is scheduled for tomorrow between 2-4 PM. Reply STOP to opt out.",
    "messaging_profile_id": "YOUR_MESSAGING_PROFILE_ID"
  }'

🇮🇳 India

SettingValue
Sender typesAlphanumeric only (6 characters, registered header)
RegulationTRAI + DLT framework
RegulatorTRAI (Telecom Regulatory Authority of India)
Pre-registrationMandatory — DLT entity, header, and template registration
Opt-outHandled via DLT/DND registry
Time restrictionsPromotional: 9 AM – 9 PM IST only
India requires both sender ID registration and message template approval before any messages can be sent. Contact Telnyx support to initiate India DLT registration.

🇩🇪 Germany

SettingValue
Sender typesAlphanumeric, long code
RegulationGDPR + UWG (Competition Act) + TTDSG
RegulatorBfDI (Federal Data Protection Commissioner)
Pre-registrationNot required
Opt-outMust be free and easy (STOP keyword or link)
Time restrictionsNone legally, best practice 8 AM – 9 PM

🇫🇷 France

SettingValue
Sender typesAlphanumeric (registered via OACP), long code, short code
RegulationGDPR + Code des postes et des communications
RegulatorCNIL + ARCEP
Pre-registrationRequired — OACP sender ID registration
Opt-out”STOP” at no cost to recipient (mandatory)
Time restrictions8 AM – 8 PM, no Sundays/holidays (mandatory for commercial)

🇦🇺 Australia

SettingValue
Sender typesAlphanumeric (registered), long code, short code
RegulationSpam Act 2003 + Privacy Act 1988
RegulatorACMA
Pre-registrationRequired (sender ID registration)
Opt-outFunctional unsubscribe within 5 business days
Time restrictionsNone legally, best practice 9 AM – 8 PM AEST

🇧🇷 Brazil

SettingValue
Sender typesAlphanumeric, long code, short code
RegulationLGPD + Consumer Protection Code
RegulatorANPD (National Data Protection Authority)
Pre-registrationRecommended
Opt-outEasy mechanism required
Time restrictions9 PM – 9 AM quiet hours (industry standard)

🇲🇽 Mexico

SettingValue
Sender typesAlphanumeric, long code, short code
RegulationLFPDPPP (Federal Data Protection Law)
RegulatorINAI
Pre-registrationNot required
Opt-outMechanism required in privacy notice
Time restrictionsNone legally

Best practices for international messaging

1

Check country requirements before launch

Review this guide and contact Telnyx support for any country not listed. Requirements vary significantly and change frequently.
2

Use the right sender type

Alphanumeric sender IDs are preferred in most international markets (except US/Canada). They build brand recognition and improve open rates.
3

Localize your messages

Send messages in the recipient’s language. Many countries require or strongly recommend this for commercial messaging.
4

Respect time zones and quiet hours

Even where not legally required, sending during business hours dramatically reduces complaints and opt-outs.
5

Include opt-out in every message

Universal best practice. Use language appropriate to the country (e.g., “STOP” in English-speaking countries, “ARRÊT” in France).
6

Maintain consent records

Store when and how each recipient consented. GDPR requires you to prove consent if challenged. Keep records for at least 4 years.
7

Monitor delivery rates by country

Use Message Detail Records to track delivery rates per country. Sudden drops may indicate registration issues or content filtering.

Handling multi-country messaging

For platforms sending to multiple countries, implement country-aware routing:
Python
import telnyx
import os

telnyx.api_key = os.environ["TELNYX_API_KEY"]

# Country-specific configuration
COUNTRY_CONFIG = {
    "US": {
        "from": "+12025551234",  # 10DLC registered number
        "profile": "us-messaging-profile-id",
    },
    "GB": {
        "from": "YourBrand",  # Alphanumeric sender ID
        "profile": "intl-messaging-profile-id",
    },
    "IN": {
        "from": "YRBRAND",  # 6-char registered DLT header
        "profile": "india-messaging-profile-id",
    },
    "DEFAULT": {
        "from": "YourBrand",
        "profile": "intl-messaging-profile-id",
    },
}


def send_international_sms(to: str, text: str, country_code: str):
    """Send an SMS with country-appropriate sender and profile."""
    config = COUNTRY_CONFIG.get(country_code, COUNTRY_CONFIG["DEFAULT"])

    message = telnyx.Message.create(
        from_=config["from"],
        to=to,
        text=text,
        messaging_profile_id=config["profile"],
    )
    return message


# Usage
send_international_sms("+447700900123", "Your order shipped!", "GB")
send_international_sms("+12025559876", "Your order shipped!", "US")
send_international_sms("+919876543210", "Your order shipped!", "IN")
Node
import Telnyx from "telnyx";

const telnyx = new Telnyx(process.env.TELNYX_API_KEY);

const COUNTRY_CONFIG = {
  US: { from: "+12025551234", profile: "us-messaging-profile-id" },
  GB: { from: "YourBrand", profile: "intl-messaging-profile-id" },
  IN: { from: "YRBRAND", profile: "india-messaging-profile-id" },
  DEFAULT: { from: "YourBrand", profile: "intl-messaging-profile-id" },
};

async function sendInternationalSms(to, text, countryCode) {
  const config = COUNTRY_CONFIG[countryCode] || COUNTRY_CONFIG.DEFAULT;

  const { data: message } = await telnyx.messages.create({
    from: config.from,
    to,
    text,
    messaging_profile_id: config.profile,
  });
  return message;
}

// Usage
await sendInternationalSms("+447700900123", "Your order shipped!", "GB");
await sendInternationalSms("+12025559876", "Your order shipped!", "US");

Next steps