Eritrea SMS Best Practices, Compliance, and Features
Eritrea SMS Market Overview
Locale name: | Eritrea |
---|---|
ISO code: | ER |
Region | Middle East & Africa |
Mobile country code (MCC) | 657 |
Dialing Code | +291 |
Market Conditions: Eritrea's telecommunications sector is characterized by a state monopoly through EriTel, the sole operator of both landline and mobile infrastructure. SMS usage is relatively widespread for basic communication, though costs and reliability can vary. OTT messaging apps have limited penetration due to strict internet controls and infrastructure limitations. The mobile market predominantly uses Android devices, with iOS having minimal presence.
Key SMS Features and Capabilities in Eritrea
Eritrea supports basic SMS functionality with some limitations on advanced features, operating under a single-carrier system through EriTel.
Two-way SMS Support
Two-way SMS is not supported in Eritrea according to current provider capabilities. This limitation affects interactive messaging campaigns and automated response systems.
Concatenated Messages (Segmented SMS)
Support: Yes, concatenated messages are supported, though availability may vary by sender ID type.
Message length rules: Standard SMS length limits apply before concatenation occurs.
Encoding considerations: Both GSM-7 and UCS-2 encoding are supported, with UCS-2 available for messages requiring special characters.
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.
Recipient Phone Number Compatibility
Number Portability
Number portability is not available in Eritrea. This means phone numbers remain tied to their original carrier (EriTel).
Sending SMS to Landlines
Sending SMS to landline numbers is not supported in Eritrea. Attempts to send messages to landline numbers will result in delivery failure and a 400 response error (code 21614) from messaging APIs, with no charges incurred.
Compliance and Regulatory Guidelines for SMS in Eritrea
SMS communications in Eritrea are regulated by the Communication Department under EriTel's oversight. While specific SMS marketing laws are not extensively documented, operators must adhere to general telecommunications guidelines and international best practices.
Consent and Opt-In
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. However, 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)
Phone Numbers Options and SMS Sender Types for in Eritrea
Alphanumeric Sender ID
Operator network capability: Not supported for pre-registration, but supported for dynamic usage
Registration requirements: No pre-registration required
Sender ID preservation: Varies by carrier and message type
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
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
Content Filtering
Known Filtering Rules:
- Messages containing restricted keywords may be blocked
- URLs should be from approved domains
- Message content should not violate local cultural norms
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
- Respect local holidays and observances
- Avoid sending during national celebrations
- Space out messages appropriately
Localization
- Primary languages: Tigrinya, Arabic, and English
- Consider cultural context in message content
- Use appropriate date and time formats
- Include language preference options during opt-in
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
- Monitor delivery rates regularly
- Track engagement metrics
- Maintain delivery reports for compliance
SMS API integrations for Eritrea
Twilio
Twilio provides reliable SMS delivery to Eritrea through their REST API. Authentication requires your Account SID and Auth Token.
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 their REST API, requiring API Token authentication.
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.
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.
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;
}
}
}
API Rate Limits and Throughput
- Standard rate limit: 1 message per second per destination
- Batch sending limit: 100 messages per request
- Daily sending quota varies by provider
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
Recap and Additional Resources
Key Takeaways
-
Compliance Priorities
- Obtain explicit consent
- Honor opt-out requests promptly
- Maintain proper documentation
- Respect time zone restrictions
-
Technical Considerations
- Proper number formatting (+291)
- Message encoding support
- Delivery receipt handling
- Rate limit management
-
Best Practices
- Local language support
- Cultural sensitivity
- Testing and monitoring
- Error handling
Next Steps
- Review EriTel's telecommunications guidelines
- Consult legal counsel for compliance requirements
- Set up test accounts with preferred SMS providers
- Implement proper error handling and monitoring