sms compliance

Sent logo
Sent TeamMay 3, 2025 / sms compliance / Article

Nepal SMS API Guide: Sender ID Registration, NTA Compliance & Integration

Complete Nepal SMS API guide covering sender ID registration, NTA compliance requirements, Nepal Telecom & Ncell integration, rate limits, and API setup with Twilio, Sinch, and Bird for A2P messaging.

Nepal SMS Best Practices, Compliance, and Features

Nepal SMS Market Overview

Locale name:Nepal
ISO code:NP
RegionAsia
Mobile country code (MCC)429
Dialing Code+977

Market Conditions: Two operators dominate Nepal's mobile market – Nepal Telecom (Namaste) holds 51.27% market share (14.9 million subscribers as of January 2024) and Ncell holds 48.73% (14.5 million subscribers). Nepal Telecom is expanding while Ncell experiences subscriber losses. Smart Telecom (SmartCell), the former third carrier, ceased operations.

Smartphone penetration grew 78% in Q2 2024. While OTT messaging apps like Viber and WhatsApp dominate urban areas, SMS remains essential for reaching the broader population, especially in rural regions with limited internet connectivity. Android devices significantly outnumber iOS devices, reflecting broader Asian market trends.


Key SMS Features and Capabilities in Nepal

Nepal supports basic SMS functionality with some limitations on sender IDs and requires pre-registration for most messaging services, while offering support for concatenated messages and various encoding options.

Two-way SMS Support

Standard international SMS gateways do not support two-way SMS in Nepal. Nepal Telecom offers interactive SMS services (exam results, polling, voting, quiz services, marketing, and promotional messages), but you must obtain NTA approval and pass technical tests before commercial operation. When using standard international SMS APIs, plan your messaging strategies around one-way communication.

Quality of Service: NTA regulations require SMS delivery within 30 seconds across all operators.

Regulatory Update: In July 2025 (Shrawan 1, 2082 B.S.), NTA directed operators not to terminate unauthorized Application to Person (A2P) SMS, reinforcing compliance requirements for commercial messaging services.

Concatenated Messages (Segmented SMS)

Support: Yes, though availability varies based on sender ID type. Message length rules: Messages split after 160 characters for GSM-7 encoding and 70 characters for UCS-2 encoding. Encoding considerations: Use UCS-2 encoding for messages containing Nepali characters or other non-Latin scripts.

MMS Support

Nepal does not support MMS messages directly. When you send MMS, the system converts it to SMS with an embedded URL link where recipients can view the multimedia content. This ensures message delivery while maintaining compatibility with all devices.

Recipient Phone Number Compatibility

Number Portability

Mobile Number Portability (MNP) is not available in Nepal. Mobile numbers remain tied to their original network operators, which simplifies message routing but means customers cannot keep their numbers when changing providers.

MNP Regulatory Framework: NTA released Mobile Number Portability Regulation 2078 establishing a recipient-led porting system through a third-party "Number Portability House." Users must have actively used their number for 90+ days to qualify for porting. Despite this regulatory framework, actual MNP implementation remains in planning stages as of 2024.

Nepal Mobile Number Format: Nepali mobile numbers follow a 10-digit format (e.g., 98XXXXXXXX). All mobile numbers start with digit 9, with the second digit indicating technology – 8 for GSM and 7 for CDMA. Common prefixes include 984, 985, and 986 for Nepal Telecom and Ncell services.

CarrierPrefixes
Nepal Telecom984, 985, 986
Ncell980, 981, 982

Validation Pattern: ^9[78]\d{8}$

Sending SMS to Landlines

You cannot send SMS to landline numbers in Nepal. Attempts will fail delivery and may trigger a 400 response error (error code 21614) from messaging APIs. Failed messages will not appear in logs, and you will not be charged.

NTA SMS Compliance and Regulatory Requirements for Nepal

The Nepal Telecommunications Authority (NTA) regulates Nepal's telecommunications sector and oversees SMS marketing and communications. While specific SMS marketing laws are still evolving, adhere to general telecommunications guidelines and international best practices for message sending.

Explicit Consent Required: Obtain and document clear, explicit consent from recipients before sending any marketing or promotional messages. Best practices include:

  • Maintain detailed records of how and when you obtained consent
  • Use double opt-in processes for marketing lists
  • Clearly state the type and frequency of messages recipients will receive
  • Provide transparent terms and conditions during the opt-in process

Sample Consent Language:

  • English: "Reply YES to receive promotional messages from [Company Name]. Standard message rates may apply. Reply STOP to opt out."
  • Nepali: "[Company Name] बाट प्रचारात्मक सन्देश प्राप्त गर्न YES जवाफ दिनुहोस्। रोक्न STOP जवाफ दिनुहोस्।"

HELP/STOP and Other Commands

Support standard opt-out commands in both English and Nepali for all SMS campaigns:

  • STOP/BAND (बन्द)
  • HELP/SAHAYOG (सहयोग)
  • CANCEL/RADDA (रद्द)

Include clear opt-out instructions in your messages in both English and Nepali.

Do Not Call / Do Not Disturb Registries

Nepal does not maintain an official Do Not Disturb (DND) registry, unlike neighboring India which has a comprehensive TRAI-regulated DND system. The Nepal Telecommunications Authority (NTA) regulates telecommunications but has not implemented a formal DND system.

Best Practices: Despite the absence of an official registry:

  • Maintain your own suppression lists
  • Honor opt-out requests within 24 hours
  • Keep records of opted-out numbers
  • Prevent messaging to previously opted-out numbers

Time Zone Sensitivity

Nepal operates in a single time zone (UTC+5:45). Best practices for message timing:

  • Send messages between 8:00 AM and 8:00 PM Nepal time
  • Avoid messages during major holidays and festivals
  • Only send urgent messages (OTP or security alerts) outside these hours

Time Zone Conversions:

  • 8:00 AM Nepal = 2:15 AM UTC = 9:15 PM EST (previous day) = 6:15 PM PST (previous day)
  • 8:00 PM Nepal = 2:15 PM UTC = 9:15 AM EST = 6:15 AM PST

How to Register Alphanumeric Sender IDs in Nepal

Alphanumeric Sender ID

Operator network capability: Supported with pre-registration Registration requirements: Pre-registration required for both Ncell and Nepal Telecom networks. You need business documentation and verification. Sender ID preservation: Yes, for pre-registered IDs; unregistered IDs are overwritten with generic alphanumeric sender ID

Long Codes

Domestic vs. International: Domestic long codes not supported; international long codes supported with limitations Sender ID preservation: No, numeric sender IDs are overwritten Provisioning time: N/A for domestic, immediate for international Use cases: Not recommended for primary messaging – use pre-registered alphanumeric sender IDs instead

Short Codes

Support: Not currently supported in Nepal Provisioning time: N/A Use cases: N/A


Restricted SMS Content, Industries, and Use Cases

Restricted content types and industries:

  • Gambling and betting services
  • Adult content or explicit material
  • Unauthorized financial services
  • Political messaging without proper authorization
  • Social invites (explicitly prohibited)

Content Filtering

Known carrier filtering rules:

  • Messages containing certain keywords related to restricted industries
  • URLs from suspicious or blacklisted domains
  • Messages appearing to impersonate financial institutions

Avoid blocking:

  • Avoid excessive punctuation and special characters
  • Use registered and approved sender IDs
  • Use URLs from reputable domains only
  • Maintain consistent sending patterns

Best Practices for Sending SMS in Nepal

Messaging Strategy

  • Keep messages under 160 characters when possible
  • Include clear call-to-actions
  • Use personalization thoughtfully (e.g., recipient's name)
  • Maintain consistent branding across messages

Sending Frequency and Timing

  • Limit marketing messages to 2–3 per week per recipient
  • Respect local holidays and festivals
  • Schedule messages during business hours
  • Space out bulk sends to avoid network congestion

Localization

  • Support both English and Nepali languages
  • Use Unicode (UCS-2) encoding for Nepali script
  • Consider regional dialects for targeted campaigns
  • Include language preference in opt-in process

Opt-Out Management

  • Process opt-outs within 24 hours
  • Maintain centralized opt-out database
  • Confirm opt-out with one final message
  • Regular audit of opt-out list compliance

Testing and Monitoring

  • Test messages across both major carriers (Ncell and Nepal Telecom)
  • Monitor delivery rates by carrier
  • Track engagement metrics and opt-out rates
  • Regular testing of opt-out functionality

Nepal SMS API Integration: Twilio, Sinch, and Bird

Twilio SMS API for Nepal

Twilio provides a robust SMS API with specific support for Nepal's messaging requirements. Authenticate using your account SID and auth token, with region-specific endpoints available.

typescript
import { Twilio } from 'twilio';

// Initialize Twilio client with credentials
const client = new Twilio(
  process.env.TWILIO_ACCOUNT_SID,
  process.env.TWILIO_AUTH_TOKEN
);

async function sendSMSToNepal(
  to: string,
  message: string,
  alphanumericSenderId: string
) {
  try {
    // Ensure phone number is in E.164 format for Nepal (+977)
    const formattedNumber = to.startsWith('+977') ? to : `+977${to}`;

    const response = await client.messages.create({
      body: message,
      from: alphanumericSenderId, // Pre-registered sender ID
      to: formattedNumber,
      // Optional parameters for delivery tracking
      statusCallback: 'https://your-webhook.com/status'
    });

    console.log(`Message sent successfully! SID: ${response.sid}`);
    return response;
  } catch (error) {
    console.error('Error sending message:', error);
    throw error;
  }
}

Sinch SMS API for Nepal

Sinch offers comprehensive SMS capabilities for Nepal with support for pre-registered sender IDs and delivery reporting.

typescript
import axios from 'axios';

class SinchSMSService {
  private readonly baseUrl: string;
  private readonly apiToken: string;
  private readonly servicePlanId: string;

  constructor(servicePlanId: string, apiToken: string) {
    this.baseUrl = 'https://sms.api.sinch.com/xms/v1';
    this.apiToken = apiToken;
    this.servicePlanId = servicePlanId;
  }

  async sendSMS(to: string, message: string, senderId: string) {
    try {
      const response = await axios.post(
        `${this.baseUrl}/${this.servicePlanId}/batches`,
        {
          from: senderId,
          to: [to],
          body: message,
          delivery_report: 'summary'
        },
        {
          headers: {
            'Authorization': `Bearer ${this.apiToken}`,
            'Content-Type': 'application/json'
          }
        }
      );

      return response.data;
    } catch (error) {
      console.error('Sinch SMS Error:', error);
      throw error;
    }
  }
}

Bird SMS API for Nepal

Bird's API provides streamlined SMS functionality for Nepal with support for both English and Nepali text.

typescript
import axios from 'axios';

interface BirdSMSConfig {
  workspaceId: string;
  channelId: string;
  accessKey: string;
}

class BirdSMSService {
  private readonly config: BirdSMSConfig;

  constructor(config: BirdSMSConfig) {
    this.config = config;
  }

  async sendSMS(phoneNumber: string, messageText: string) {
    const url = `https://api.bird.com/workspaces/${this.config.workspaceId}/channels/${this.config.channelId}/messages`;

    try {
      const response = await axios.post(
        url,
        {
          receiver: {
            contacts: [{ identifierValue: phoneNumber }]
          },
          body: {
            type: 'text',
            text: { text: messageText }
          }
        },
        {
          headers: {
            'Authorization': `AccessKey ${this.config.accessKey}`,
            'Content-Type': 'application/json'
          }
        }
      );

      return response.data;
    } catch (error) {
      console.error('Bird SMS Error:', error);
      throw error;
    }
  }
}

API Rate Limits and Throughput

Nepal's carriers implement rate limits:

  • Maximum Messages Per Second: 10–20 messages/second per sender ID
  • Daily Limits: Vary by carrier and sender ID type
  • Concurrent Requests: Limited to 5–10 simultaneous connections

Strategies for Large-Scale Sending:

  • Implement queuing systems (Redis/RabbitMQ)
  • Use exponential backoff for retries
  • Batch messages when possible
  • Distribute load across multiple sender IDs

Error Handling and Reporting

Common Error Scenarios:

  • Invalid sender ID (pre-registration required)
  • Network congestion
  • Invalid phone number format
  • Content filtering triggers

Logging Best Practices:

typescript
interface SMSLogEntry {
  messageId: string;
  timestamp: Date;
  recipient: string;
  status: 'sent' | 'failed' | 'delivered';
  errorCode?: string;
  errorMessage?: string;
}

// Example logging implementation
async function logSMSActivity(entry: SMSLogEntry) {
  // Log to your preferred storage (database/monitoring system)
  console.log(JSON.stringify(entry));
}

Frequently Asked Questions (FAQ)

Does Nepal support two-way SMS messaging?

Standard international SMS gateways do not support two-way SMS in Nepal. However, Nepal Telecom offers interactive SMS services for specific use cases (exam results, polling, voting, quiz services) that require NTA approval and technical testing before commercial deployment. If you're using standard international SMS APIs like Twilio, Sinch, or Bird, plan for one-way communication only.

How do I register an alphanumeric sender ID in Nepal?

Register your alphanumeric sender ID with both Nepal Telecom and Ncell networks by providing business documentation and completing verification. Pre-registration is mandatory – unregistered sender IDs are overwritten with generic alphanumeric identifiers. Contact your SMS provider or the carriers directly to initiate registration, which typically takes several business days.

Which mobile operators are active in Nepal in 2024?

Nepal operates as a telecommunications duopoly with 2 major carriers: Nepal Telecom (Namaste) with 51.27% market share (14.9 million subscribers) and Ncell with 48.73% market share (14.5 million subscribers) as of January 2024. Smart Telecom (SmartCell) ceased operations. Both active carriers support LTE networks and SMS services.

Is Mobile Number Portability available in Nepal?

Mobile Number Portability (MNP) is not currently operational in Nepal, though the regulatory framework exists. NTA released Mobile Number Portability Regulation 2078 establishing a recipient-led porting system, requiring users to have actively used their number for 90+ days to be eligible. Despite the regulations being in place, actual MNP implementation remains in planning stages as of 2024.

What are Nepal's SMS delivery time requirements?

NTA regulations mandate SMS delivery within 30 seconds across all operators. Monitor your delivery rates to ensure compliance.

What are the SMS rate limits for Nepal?

Nepal's carriers implement rate limits of 10–20 messages per second per sender ID, with daily limits varying by carrier and sender ID type. Concurrent requests are typically limited to 5–10 simultaneous connections. For large-scale sending, implement queuing systems (Redis/RabbitMQ), use exponential backoff for retries, and distribute load across multiple registered sender IDs.

Can I send SMS to landline numbers in Nepal?

No. Attempts will fail delivery and may trigger a 400 response error (error code 21614) from messaging APIs. Failed messages will not appear in your logs, and you will not be charged.

Does Nepal have a Do Not Disturb (DND) registry?

Nepal does not maintain an official Do Not Disturb (DND) registry, unlike neighboring India's TRAI-regulated system. Maintain your own suppression lists, honor opt-out requests within 24 hours, and prevent messaging to opted-out numbers. Include clear opt-out instructions in both English and Nepali in all marketing messages.

What content is restricted in Nepal SMS campaigns?

Restricted content includes gambling and betting services, adult or explicit material, unauthorized financial services, political messaging without authorization, and social invites. Carriers filter messages containing restricted industry keywords, suspicious URLs, and content appearing to impersonate financial institutions. Use registered sender IDs, avoid excessive punctuation, and maintain consistent sending patterns to prevent blocking.

What character encoding should I use for Nepali text in SMS?

Use Unicode (UCS-2) encoding for messages containing Nepali characters or non-Latin scripts. UCS-2 encoding supports 70 characters per SMS segment before splitting occurs, compared to 160 characters for GSM-7 encoding used with English text. Both encodings support concatenation, though availability may vary based on sender ID type.

Recap and Additional Resources

Key Takeaways

Market & Regulatory Environment:

  • Nepal operates as a telecommunications duopoly with Nepal Telecom (51.27% market share) and Ncell (48.73% market share)
  • NTA regulates SMS services and mandates 30-second delivery requirements
  • No official DND registry exists – maintain your own suppression lists
  • Mobile Number Portability regulations exist but implementation remains pending as of 2024

Technical Requirements:

  • Pre-register alphanumeric sender IDs with both carriers to ensure delivery
  • Use UCS-2 encoding for Nepali text (70 characters per segment)
  • Plan for one-way SMS only through standard international gateways
  • Respect rate limits of 10–20 messages/second per sender ID
  • Format phone numbers as 10-digit format starting with 9 (e.g., 98XXXXXXXX)

Compliance Essentials:

  • Obtain explicit consent before sending marketing messages
  • Support STOP/BAND, HELP/SAHAYOG, and CANCEL/RADDA opt-out commands in both English and Nepali
  • Process opt-out requests within 24 hours
  • Send messages between 8:00 AM and 8:00 PM Nepal time (UTC+5:45)
  • Avoid restricted content: gambling, adult material, unauthorized financial services, political messaging, social invites

Best Practices:

  • Test across both Nepal Telecom and Ncell networks
  • Implement queuing systems and exponential backoff for large-scale sending
  • Monitor delivery rates and track engagement metrics
  • Localize content for both English and Nepali-speaking audiences
  • Limit marketing messages to 2–3 per week per recipient

Next Steps

1. Technical Setup:

  • Choose an SMS provider (Twilio, Sinch, or Bird) with Nepal support
  • Register alphanumeric sender IDs with Nepal Telecom and Ncell (allow 5–7 business days)
  • Configure phone number validation: ^9[78]\d{8}$ (10-digit format, starts with 97 or 98)
  • Set up monitoring and logging systems for delivery tracking
  • Implement error handling for common scenarios (invalid sender ID, network congestion, content filtering)

2. Compliance Implementation:

  • Review NTA telecommunications guidelines at nta.gov.np
  • Document your consent collection processes
  • Build opt-out handling system with 24-hour processing requirement
  • Create suppression list database to track opted-out numbers
  • Prepare bilingual opt-out instructions (English and Nepali)

3. Testing & Validation:

Test TypeActionExpected Result
Carrier CoverageSend to Nepal Telecom (98X) and Ncell (98X/97X) numbersBoth deliver successfully
Sender IDSend with pre-registered alphanumeric IDSender ID preserved as-is
ConcatenationSend 161+ character GSM-7 messageMultiple segments delivered
UnicodeSend Nepali text with UCS-2 encodingNepali characters display correctly
Opt-outReply with STOP/BAND commandsNumber added to suppression list
Delivery TimeMonitor timestamp from send to deliveryCompletes within 30 seconds

4. Launch & Optimization:

  • Start with small batch sends to establish sender reputation
  • Monitor delivery rates by carrier and adjust strategies accordingly
  • Track engagement metrics (delivery rate, opt-out rate, response patterns)
  • Schedule sends during optimal hours (8:00 AM – 8:00 PM Nepal time)
  • Gradually scale volume while respecting rate limits
  • Nepal Telecommunications Regulations: NTA guidelines, licensing requirements, spectrum allocation
  • SMS Character Encoding Standards: GSM-7 vs. UCS-2, Unicode support, concatenation methods
  • E.164 Phone Number Format: International numbering standards, country codes, validation
  • A2P SMS Compliance: Application-to-Person messaging regulations, authorized termination, gray routes
  • SMS API Integration Patterns: REST APIs, webhooks, delivery reports, error handling
  • Nepal Mobile Market Trends: Smartphone penetration, OTT app usage, rural vs. urban connectivity
  • SMS Delivery Optimization: Throughput management, queuing strategies, retry logic, rate limiting
  • Multilingual SMS Marketing: Nepali language support, character set considerations, cultural localization
  • SMS Security Best Practices: OTP delivery, fraud prevention, phishing protection, secure message content

Additional Resources

SMS Provider Documentation:

Frequently Asked Questions

How to send SMS messages in Nepal?

Use a registered SMS API provider like Twilio, Sinch, or Bird, ensuring your sender ID is pre-registered with Nepal Telecom or Ncell. Format recipient numbers in E.164 format (+977...) and comply with content and sending regulations.

What is the SMS market like in Nepal?

Nepal's mobile market is dominated by Nepal Telecom and Ncell. While OTT apps are popular, SMS remains crucial for reaching wider audiences, especially in rural areas with limited internet access.

Why does Nepal not support two-way SMS?

Due to current regulations and technical infrastructure limitations, two-way SMS is not supported. Businesses should focus on one-way communication strategies.

When should I send SMS messages in Nepal?

Adhere to Nepal's time zone (UTC+5:45) and send messages between 8:00 AM and 8:00 PM. Avoid sending during major holidays and festivals unless it's urgent, like OTP messages.

Can I send marketing SMS in Nepal without consent?

No, explicit consent is required before sending marketing or promotional messages in Nepal. Maintain records of consent and offer clear opt-out instructions in both English and Nepali.

What are the rules for concatenated SMS in Nepal?

Nepal supports concatenated SMS with standard length limits (160 characters for GSM-7, 70 for UCS-2). Both encodings are supported, but UCS-2 is recommended for Nepali script.

What is the process for sender ID registration in Nepal?

Pre-registration is required for alphanumeric sender IDs with both Nepal Telecom and Ncell. This involves submitting documentation and business verification.

How to handle SMS opt-outs in Nepal?

Honor opt-out requests (STOP, BAND, HELP, SAHAYOG, CANCEL, RADDA) within 24 hours. Maintain a suppression list and ensure opted-out numbers are not contacted again.

What are the restricted content types for SMS in Nepal?

Gambling, adult content, unauthorized financial services, political messaging without authorization, and social invites are restricted. Content filtering is implemented by carriers.

How to send SMS to Nepal using Twilio?

Initialize the Twilio client with your credentials, format the recipient number in E.164 format, and use the client's messages.create method with your message and pre-registered sender ID.

What are the API rate limits for sending SMS in Nepal?

Carriers implement limits of roughly 10-20 messages per second per sender ID, with daily and concurrent request limits varying. Use queuing and backoff strategies for large-scale sending.

How to format Nepali phone numbers for SMS?

Use the E.164 format, which includes the country code +977 followed by the 9-digit mobile number. Ensure the number starts with +977 to avoid delivery failures.

What SMS API integrations are available for Nepal?

Twilio, Sinch, and Bird offer SMS APIs with features like pre-registered sender ID support, delivery reporting, and handling of Nepali script.

Why is MMS not supported in Nepal?

MMS is not directly supported. Attempts to send MMS will result in conversion to SMS with a URL link to the multimedia content for device compatibility.