sms compliance

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

Eritrea SMS Best Practices, Compliance, and Features

Comprehensive guide to sending SMS in Eritrea including compliance, regulations, provider options, and technical requirements

Eritrea SMS Best Practices, Compliance, and Features

Eritrea SMS Market Overview

Locale name:Eritrea
ISO code:ER
RegionMiddle East & Africa
Mobile country code (MCC)657
Dialing Code+291

Market Conditions: EriTel operates Eritrea's telecommunications as a state monopoly, controlling all landline and mobile infrastructure. As of January 2025, internet penetration reaches approximately 20 – 26.6% (around 714,000 users), making Eritrea one of the least connected countries globally. Mobile penetration sits at 20%, with no mobile data services available. SMS serves as the primary mobile communication method. SMS costs range from $0.075 – $0.1166 per message (Twilio: $0.1166/SMS, Plivo: $0.10778/SMS). OTT messaging apps have minimal penetration due to strict internet controls and absent mobile data infrastructure. Android dominates the mobile market, with minimal iOS presence.


SMS Features and Capabilities in Eritrea

Eritrea supports basic SMS functionality through EriTel's single-carrier system, with limitations on advanced features.

Two-way SMS Support

Eritrea does not support two-way SMS according to current provider capabilities. This limitation affects interactive messaging campaigns, automated response systems, and customer feedback collection via SMS.

Affected use cases:

  • Interactive surveys and polls
  • Automated customer support with SMS replies
  • Opt-in confirmation workflows requiring user response
  • Two-factor authentication confirmation
  • Appointment confirmations requiring user reply

Workarounds:

  • Use web-based forms with SMS notification links
  • Implement voice-based IVR systems for two-way interaction
  • Provide alternative contact methods (email, phone) for responses
  • Use one-way informational messages with callback numbers

Concatenated Messages (Segmented SMS)

Support: Concatenated messages are supported, though availability varies by sender ID type.

Message length rules:

  • GSM-7 encoding: 160 characters for single SMS; messages exceeding 160 characters split into 153-character segments
  • UCS-2 encoding (Unicode): 70 characters for single SMS; longer messages split into 67-character segments

Encoding considerations: GSM-7 and UCS-2 encoding are both supported. Use UCS-2 for messages containing emojis, special characters, or non-Latin scripts (Arabic, Tigrinya).

Costs: Each segment costs one SMS. A 320-character GSM-7 message equals 3 segments, costing 3× the per-message rate (approximately $0.35 total via Twilio).

MMS Support

MMS messages are automatically converted to SMS with an embedded URL link. This conversion ensures message delivery while maintaining rich media access through web links. Recipients click the URL to view images, videos, or other media content via mobile browser.

Phone Number Formats and Compatibility

Number Portability

Number portability is unavailable in Eritrea. Phone numbers remain tied to their original carrier (EriTel).

Sending SMS to Landlines

Eritrea does not support sending SMS to landline numbers. Messages sent to landline numbers fail with a 400 response error (code 21614) from messaging APIs, with no charges incurred.

SMS Compliance and Regulations in Eritrea

The Ministry of Information and Communications regulates SMS communications in Eritrea under EriTel's oversight. While specific SMS marketing laws are not extensively documented, operators must follow general telecommunications guidelines and international best practices, including obtaining explicit opt-in consent before sending marketing messages.

Explicit Consent Requirements:

  • Obtain clear, documented opt-in consent before sending any marketing messages
  • Maintain detailed records of when and how consent was obtained
  • Include clear terms of service and privacy policy information during opt-in
  • Provide transparent information about message frequency and content type

HELP/STOP and Other Commands

  • Support for standard STOP and HELP commands is recommended
  • Primary languages for opt-out messages should be Tigrinya, Arabic, and English
  • Implement immediate processing of opt-out requests
  • Maintain clear documentation of opt-out requests and processing times

Do Not Call / Do Not Disturb Registries

Eritrea does not maintain an official Do Not Call registry. Businesses should:

  • Maintain their own suppression lists
  • Honor opt-out requests within 24 hours
  • Implement proper list hygiene practices
  • Document all opt-out requests and actions taken

Time Zone Sensitivity

Eritrea follows EAT (East Africa Time, UTC+3). Best practices include:

  • Sending messages between 8:00 AM and 8:00 PM local time
  • Avoiding messages during religious holidays and national celebrations
  • Limiting urgent messages outside of standard hours
  • Respecting Friday prayer times (12:00 PM – 2:00 PM)

Key holidays to avoid (2025):

  • January 1: New Year's Day
  • January 7: Orthodox Christmas Day
  • January 19: Timket (Epiphany)
  • March 8: Women's Day
  • March 30: Eid al-Fitr
  • April 18: Coptic Good Friday
  • April 20: Coptic Easter
  • May 1: International Workers' Day
  • May 24: Independence Day (National Day)
  • June 6: Eid al-Adha
  • June 20: Martyrs' Day
  • September 1: Commencement Day of Armed Struggle
  • September 5: The Prophet's Birthday (Mawlid)
  • September 11: Geez New Year
  • September 27: Meskel
  • December 25: Christmas Day

Islamic holidays follow the lunar calendar and shift annually; verify dates each year.


SMS Sender ID Types and Phone Number Options

Alphanumeric Sender ID

Operator network capability: Not supported for pre-registration, but supported for dynamic usage

Dynamic usage: Alphanumeric sender IDs (e.g., "BrandName") can be sent without advance registration, but delivery and display depend on carrier acceptance at send-time. No advance approval process is required.

Registration requirements: No pre-registration required

Sender ID preservation: Varies by carrier and message type; some carriers may replace alphanumeric IDs with short codes or numeric IDs

Long Codes

Domestic vs. International: International long codes are supported; domestic availability is limited

Sender ID preservation: International sender IDs are generally preserved

Provisioning time: 1 – 2 business days for international numbers

Use cases: Ideal for transactional messages and two-factor authentication

Pricing: International numbers start at $1.15/month plus per-message costs ($0.1166/SMS via Twilio)

Format: Eritrea uses +291 country code followed by 7-digit subscriber number

Short Codes

Support: Limited availability in Eritrea

Provisioning time: Not specified due to limited availability

Use cases: Not recommended due to limited support


Restricted SMS Content, Industries, and Use Cases

Restricted Content Types:

  • Gambling and betting content
  • Adult or inappropriate material
  • Political messaging without proper authorization
  • Cryptocurrency and unauthorized financial services
  • Religious content without proper permits

Authorization requirements: Given Eritrea's state-controlled telecommunications monopoly and strict government oversight, obtain written approval from the Ministry of Information and Communications. Contact EriTel or the Ministry directly for specific authorization processes.

Consequences of violations: Carriers may block messages containing restricted content. Repeated violations can result in sender ID suspension, account termination, and potential legal action under Eritrean telecommunications regulations.

Content Filtering

Known Filtering Rules:

  • Messages containing restricted keywords may be blocked
  • URLs should be from approved domains or reputable sources
  • Message content should not violate local cultural norms

Cultural considerations: Eritrea's population is predominantly Christian (Orthodox, Catholic) and Muslim. Avoid content that:

  • Criticizes government, military, or political leadership
  • Contains profanity or sexually suggestive language
  • Promotes religious conversion or inter-religious conflict
  • Contains politically sensitive topics or references to ongoing conflicts
  • Includes unauthorized journalism or news content

URL best practices: Use well-known URL shorteners (bit.ly, tinyurl.com) or your own branded domain. Avoid suspicious or newly-registered domains that may trigger filtering.

Best Practices to Avoid Filtering:

  • Avoid excessive punctuation and special characters
  • Use approved URL shorteners
  • Keep content professional and culturally appropriate
  • Avoid sensitive topics or controversial subjects

Best Practices for Sending SMS in Eritrea

Messaging Strategy

  • Keep messages under 160 characters when possible
  • Include clear call-to-actions
  • Use simple, direct language
  • Avoid slang or colloquialisms

Sending Frequency and Timing

  • Limit messages to 2 – 3 per week per recipient (based on general SMS marketing best practices for markets with limited digital infrastructure)
  • Respect local holidays and observances (see Time Zone Sensitivity section for complete holiday list)
  • Avoid sending during national celebrations
  • Space out messages appropriately (minimum 48 – 72 hours between marketing messages)

Localization

  • Primary languages: Tigrinya, Arabic, and English
  • Consider cultural context in message content
  • Use appropriate date and time formats:
    • English: DD/MM/YYYY or DD Month YYYY (e.g., 04/10/2025 or 04 October 2025), 24-hour time preferred
    • Tigrinya: Similar to English format, 24-hour time
    • Arabic: DD/MM/YYYY format with Arabic-Indic numerals (٠-٩) optional, 24-hour time
  • Include language preference options during opt-in
  • Arabic text handling: Use UCS-2 encoding for right-to-left (RTL) text. Test rendering on both Android and iOS devices. Avoid mixing LTR and RTL text in the same message.

Opt-Out Management

  • Process opt-outs within 24 hours
  • Maintain clear opt-out records
  • Provide multiple opt-out channels
  • Confirm opt-out requests with acknowledgment message

Testing and Monitoring

  • Test messages across different devices (especially Android, given its market dominance)
  • Monitor delivery rates regularly
  • Track engagement metrics
  • Maintain delivery reports for compliance

Key metrics and thresholds:

  • Delivery rate: Target > 95%; investigate if < 90%
  • Delivery time: Monitor average time-to-delivery; flag if > 60 seconds
  • Failure rate by error code: Track 21614 (landline) and other common errors
  • Segment usage: Monitor average segments per message to control costs
  • Opt-out rate: Investigate if > 2% per campaign

Common delivery issues:

  • Invalid number format: Ensure +291 prefix and 7-digit number
  • Landline numbers: Filter out landline numbers before sending (error 21614)
  • Character encoding: Verify GSM-7 vs UCS-2 detection is working correctly
  • Rate limiting: Implement queuing if exceeding 1 message/second/destination
  • Content filtering: Test messages without URLs/special characters if delivery fails

SMS API Integrations and Providers for Eritrea

Twilio

Twilio provides reliable SMS delivery to Eritrea through its REST API. Authentication requires your Account SID and Auth Token.

typescript
import { Twilio } from 'twilio';

// Initialize Twilio client
const client = new Twilio(
  process.env.TWILIO_ACCOUNT_SID,    // Your Account SID
  process.env.TWILIO_AUTH_TOKEN      // Your Auth Token
);

// Function to send SMS to Eritrea
async function sendSMSToEritrea(
  to: string,
  message: string
): Promise<void> {
  try {
    // Ensure proper formatting for Eritrea numbers (+291)
    const formattedNumber = to.startsWith('+291') ? to : `+291${to}`;

    const response = await client.messages.create({
      body: message,
      to: formattedNumber,
      from: process.env.TWILIO_PHONE_NUMBER,
      // Optional: Set status callback URL
      statusCallback: 'https://your-domain.com/sms/status'
    });

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

Sinch

Sinch offers SMS capabilities for Eritrea through its REST API, requiring API Token authentication.

typescript
import axios from 'axios';

class SinchSMSService {
  private readonly apiToken: string;
  private readonly serviceId: string;
  private readonly baseUrl: string = 'https://sms.api.sinch.com/xms/v1';

  constructor(apiToken: string, serviceId: string) {
    this.apiToken = apiToken;
    this.serviceId = serviceId;
  }

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

      console.log('Message sent:', response.data);
    } catch (error) {
      console.error('Sinch SMS error:', error);
      throw error;
    }
  }
}

MessageBird

MessageBird provides SMS connectivity to Eritrea with straightforward REST API integration.

typescript
import { MessageBird } from 'messagebird';

class MessageBirdService {
  private client: MessageBird;

  constructor(apiKey: string) {
    this.client = new MessageBird(apiKey);
  }

  async sendSMS(
    to: string,
    message: string,
    originator: string
  ): Promise<void> {
    const params = {
      originator,
      recipients: [to],
      body: message,
      // Optional parameters for delivery reporting
      reportUrl: 'https://your-domain.com/delivery-reports'
    };

    return new Promise((resolve, reject) => {
      this.client.messages.create(params, (err, response) => {
        if (err) {
          console.error('MessageBird error:', err);
          reject(err);
        } else {
          console.log('Message sent:', response);
          resolve();
        }
      });
    });
  }
}

Plivo

Plivo offers SMS services to Eritrea with REST API support and detailed delivery tracking.

typescript
import { Client } from 'plivo';

class PlivoService {
  private client: Client;

  constructor(authId: string, authToken: string) {
    this.client = new Client(authId, authToken);
  }

  async sendSMS(
    src: string,
    dst: string,
    text: string
  ): Promise<void> {
    try {
      const response = await this.client.messages.create({
        src,  // Sender ID
        dst,  // Destination number (Eritrea format)
        text,
        // Optional parameters
        url: 'https://your-domain.com/delivery-status',
        method: 'POST'
      });

      console.log('Message sent:', response);
    } catch (error) {
      console.error('Plivo error:', error);
      throw error;
    }
  }
}

SMS Provider Comparison for Eritrea

ProviderSMS Cost (Outbound)International Number CostKey FeaturesBest For
Twilio$0.1166/SMS$1.15/monthComprehensive API, excellent docs, global reliabilityEnterprise, developers needing robust support
Plivo$0.10778/SMSVariesCompetitive pricing, good APICost-conscious projects
SinchVaries by accountVariesStrong carrier relationshipsHigh-volume senders
MessageBirdVariesVariesMulti-channel platformOmnichannel communication needs

Pricing as of 2025; verify current rates with providers

API Rate Limits and Throughput

General guidelines (verify with your provider):

  • Standard rate limit: 1 message per second per destination
  • Batch sending limit: 100 messages per request (varies by provider)
  • Daily sending quota varies by provider and account tier

Provider-specific considerations:

  • Twilio: Rate limits based on account type; Enterprise accounts support higher throughput
  • Plivo: Default 10 messages/second globally; contact support for country-specific limits
  • Sinch: Throughput negotiated per account; typically 10 – 50 messages/second
  • MessageBird: Rate limits based on pricing tier

Check your provider's documentation for Eritrea-specific throughput limits and special restrictions.

Throughput Management Strategies:

  • Implement queuing systems for large volumes
  • Use batch APIs when available
  • Monitor delivery rates and adjust sending patterns
  • Implement exponential backoff for retries

Error Handling and Reporting

  • Implement comprehensive logging for all API calls
  • Monitor delivery receipts and status callbacks
  • Track common error codes and their resolutions
  • Maintain error logs for compliance purposes

Common error codes for Eritrea:

Error CodeDescriptionResolution
21614Cannot send to landlineFilter landline numbers before sending; validate number type
30003Unreachable destinationVerify number format (+291 + 7 digits); check if number is active
30005Unknown destinationValidate recipient number; may be disconnected or invalid
30006Landline or unreachableSame as 21614; implement number validation
30007Message filtered/blockedReview content for restricted keywords; check URL reputation
30008Unknown errorRetry with exponential backoff; contact provider support

Twilio-specific: Error 21614 indicates a landline SMS attempt. Implement HLR lookup or number type validation to prevent.


Frequently Asked Questions About SMS in Eritrea

How much does it cost to send SMS in Eritrea?

SMS pricing in Eritrea ranges from $0.075 to $0.1166 per message, with Twilio charging $0.1166/SMS and Plivo charging $0.10778/SMS. International long codes cost approximately $1.15/month plus per-message fees.

Does Eritrea support two-way SMS messaging?

No, Eritrea does not currently support two-way SMS. Businesses must use alternative methods like web forms, IVR systems, or callback numbers for interactive communications.

What phone number format is required for Eritrea SMS?

Eritrea uses the E.164 format with country code +291 followed by a 7-digit subscriber number (e.g., +2917123456). Learn more about E.164 phone number formatting.

Can I send SMS to landlines in Eritrea?

No, SMS to landline numbers is not supported in Eritrea. Messages sent to landlines will fail with error code 21614 and no charges will be incurred.

What languages should I use for SMS in Eritrea?

The primary languages for SMS in Eritrea are Tigrinya, Arabic, and English. Use UCS-2 encoding for Arabic and Tigrinya text to ensure proper rendering.


Summary and Next Steps

Key Takeaways

  1. Compliance Priorities

    • Obtain explicit consent
    • Honor opt-out requests promptly
    • Maintain proper documentation
    • Respect time zone restrictions
  2. Technical Considerations

    • Proper number formatting (+291)
    • Message encoding support
    • Delivery receipt handling
    • Rate limit management
  3. Best Practices

    • Local language support
    • Cultural sensitivity
    • Testing and monitoring
    • Error handling

Next Steps

  1. Review EriTel's telecommunications guidelines
  2. Consult legal counsel for compliance requirements
  3. Set up test accounts with preferred SMS providers
  4. Implement proper error handling and monitoring

Additional Resources

Frequently Asked Questions

How to send SMS messages to Eritrea?

Use a reputable SMS provider like Twilio, Sinch, MessageBird, or Plivo. Ensure the recipient's number includes the +291 country code and follow provider-specific API guidelines for successful delivery. Due to Eritrea's telecommunications landscape, two-way SMS isn't currently supported, and other limitations may apply.

What is the MCC for Eritrea for SMS messaging?

The Mobile Country Code (MCC) for Eritrea is 657. This code is essential for routing international SMS messages correctly to Eritrean mobile numbers.

Why does Eritrea not support two-way SMS?

According to current provider capabilities, Eritrea, under its sole operator EriTel, does not support two-way SMS. This restricts interactive messaging campaigns and automated response systems.

What are the rules for SMS marketing in Eritrea?

Specific SMS marketing regulations aren't extensively documented, but adhere to general telecom guidelines. Prioritize obtaining explicit opt-in consent, honor opt-outs promptly, and respect local customs regarding messaging times and content.

When should I send SMS messages in Eritrea?

The best time to send SMS messages in Eritrea is between 8:00 AM and 8:00 PM local time (EAT, UTC+3). Avoid sending during religious holidays, national celebrations, and Friday prayer times (12:00 PM - 2:00 PM).

Can I send SMS to landlines in Eritrea?

No, sending SMS to landline numbers in Eritrea is not supported. Attempts will result in delivery failure and a 400 response error (code 21614) from messaging APIs, without incurring charges.

How to manage SMS opt-outs in Eritrea?

Process opt-out requests within 24 hours, regardless of whether Eritrea has an official Do Not Call list. Maintain clear records, provide multiple opt-out channels (like STOP commands), and send acknowledgment messages.

What SMS sender IDs are available in Eritrea?

While short codes have limited availability, international long codes are supported and preferred for transactional messages. Alphanumeric sender IDs are supported dynamically, but not for pre-registration.

What is the process for sending concatenated SMS in Eritrea?

Eritrea supports concatenated SMS messages. Standard SMS length limits apply before concatenation. Both GSM-7 and UCS-2 encoding are supported for handling special characters if necessary.

What content is restricted in SMS messages to Eritrea?

Restricted content includes gambling, adult material, unauthorized political or religious content, and cryptocurrency promotions. Content filtering may block messages with restricted keywords or unapproved URLs.

How can I integrate with an SMS API for Eritrea?

Several providers like Twilio, Sinch, MessageBird, and Plivo offer SMS APIs with Eritrea support. Their documentation provides code examples and guidelines for integration and best practices.

What are the SMS API rate limits for Eritrea?

A standard rate limit of 1 message per second per destination and a batch sending limit of 100 messages per request typically apply. Daily quotas vary by provider, so check their specific guidelines.

What are some best practices for SMS messaging in Eritrea?

Key best practices include obtaining explicit consent, localizing content, respecting time zones, and managing opt-outs efficiently. Also, consider using clear call-to-actions, testing messages, and monitoring delivery rates.