Sierra Leone SMS Best Practices, Compliance, and Features
Sierra Leone SMS Market Overview
Locale name: | Sierra Leone |
---|---|
ISO code: | SL |
Region | Middle East & Africa |
Mobile country code (MCC) | 619 |
Dialing Code | +232 |
Market Conditions: Sierra Leone's mobile market is dominated by major operators including Africell and Orange. SMS remains a crucial communication channel, particularly for business messaging and notifications. While OTT messaging apps are gaining popularity in urban areas, SMS maintains widespread reach due to its universal compatibility and reliability in areas with limited internet connectivity. Android devices significantly outnumber iOS in the market, reflecting broader African mobile usage patterns.
Key SMS Features and Capabilities in Sierra Leone
Sierra Leone supports basic SMS functionality with some limitations on advanced features, focusing primarily on one-way messaging capabilities for business and personal communication.
Two-way SMS Support
Two-way SMS is not supported in Sierra Leone, meaning recipients cannot directly reply to messages sent through messaging platforms.
Concatenated Messages (Segmented SMS)
Support: Yes, concatenated messaging is supported in Sierra Leone, though with some limitations.
Message length rules: Standard SMS character limits apply before message splitting occurs.
Encoding considerations: Both GSM-7 and UCS-2 encoding are supported, though support may vary by sender ID type.
MMS Support
MMS messages are not directly supported in Sierra Leone. When attempting to send MMS content, the message will be automatically converted to an SMS containing a URL link to access the multimedia content.
Recipient Phone Number Compatibility
Number Portability
Number portability is not available in Sierra Leone. Users cannot retain their mobile numbers when switching between service providers.
Sending SMS to Landlines
Sending SMS to landline numbers is not possible in Sierra Leone. Attempts to send messages to landline numbers will result in a 400 error response with error code 21614, and these messages will not be logged or charged to the account.
Compliance and Regulatory Guidelines for SMS in Sierra Leone
SMS communications in Sierra Leone are regulated by the National Communications Authority (NatCA), formerly known as the National Telecommunications Commission. The Telecommunications Act of 2006 provides the primary legal framework for telecommunications services, including SMS messaging.
Consent and Opt-In
Explicit Consent Requirements:
- Written or electronic consent must be obtained before sending marketing messages
- Maintain clear records of when and how consent was obtained
- Include clear terms and conditions during the opt-in process
- Provide transparent information about message frequency and purpose
HELP/STOP and Other Commands
- All SMS campaigns must support standard opt-out keywords (STOP, CANCEL, END)
- HELP messages must provide clear information about the service
- Commands should be recognized in both English and local languages (Krio, Mende, Temne)
- Responses to these commands should be processed immediately and free of charge
Do Not Call / Do Not Disturb Registries
While Sierra Leone does not maintain an official Do Not Call registry, businesses should:
- Maintain their own suppression lists
- Honor opt-out requests within 24 hours
- Keep records of opted-out numbers for at least 12 months
- Regularly clean contact lists to remove unsubscribed numbers
Time Zone Sensitivity
- Sierra Leone operates in the GMT timezone (UTC+0)
- Recommended sending hours: 8:00 AM to 8:00 PM local time
- Urgent messages (e.g., security alerts, emergency notifications) may be sent outside these hours
- Respect local holidays and cultural observances
Phone Numbers Options and SMS Sender Types for Sierra Leone
Alphanumeric Sender ID
Operator network capability: Dynamic alphanumeric sender IDs are supported
Registration requirements: Pre-registration is not supported, but dynamic usage is allowed
Sender ID preservation: Sender IDs may be modified by certain carriers, particularly Africell
Long Codes
Domestic vs. International:
- Domestic long codes are not supported
- International long codes are supported but with limitations
Sender ID preservation: No, original sender IDs are not preserved
Provisioning time: Immediate activation for international long codes
Use cases: Suitable for transactional messages and notifications
Short Codes
Support: Short codes are supported in Sierra Leone
Provisioning time: 4-8 weeks for approval and activation
Use cases:
- Marketing campaigns
- Two-factor authentication
- Customer service
- Promotional content
Restricted SMS Content, Industries, and Use Cases
Restricted Industries and Content:
- Gambling and betting services
- Adult content or explicit material
- Unauthorized financial services
- Political campaign messages without proper authorization
- Cryptocurrency promotions
Content Filtering
Known Carrier Filtering Rules:
- Messages containing certain keywords may be blocked
- URLs from unknown domains may be filtered
- High-volume sending patterns may trigger spam filters
Best Practices to Avoid Filtering:
- Avoid excessive punctuation and all-caps text
- Use registered and approved sender IDs
- Maintain consistent sending patterns
- Include clear opt-out instructions
Best Practices for Sending SMS in Sierra Leone
Messaging Strategy
- Keep messages under 160 characters when possible
- Include clear call-to-actions
- Personalize messages with recipient's name when appropriate
- Avoid URL shorteners that might trigger spam filters
Sending Frequency and Timing
- Limit marketing messages to 2-4 per week per recipient
- Space out bulk campaigns to avoid network congestion
- Consider Ramadan and other religious observances
- Avoid sending during major national holidays
Localization
- Primary languages: English and Krio
- Consider multi-language support for wider reach
- Use simple, clear language
- Avoid colloquialisms that might not translate well
Opt-Out Management
- Process opt-outs within 24 hours
- Send confirmation message for opt-out requests
- Maintain detailed opt-out logs
- Regular audit of opt-out compliance
Testing and Monitoring
- Test messages across all major carriers (Africell, Orange)
- Monitor delivery rates by carrier
- Track opt-out rates and patterns
- Regular testing of HELP/STOP functionality
SMS API integrations for Sierra Leone
Twilio
Twilio provides robust SMS capabilities for sending messages to Sierra Leone. Here's how to implement it:
import { Twilio } from 'twilio';
// Initialize Twilio client with your credentials
const client = new Twilio(
process.env.TWILIO_ACCOUNT_SID,
process.env.TWILIO_AUTH_TOKEN
);
// Function to send SMS to Sierra Leone
async function sendSMSToSierraLeone(
to: string,
message: string,
senderId: string
) {
try {
// Ensure proper formatting for Sierra Leone numbers
const formattedNumber = to.startsWith('+232') ? to : `+232${to}`;
const response = await client.messages.create({
body: message,
from: senderId, // Alphanumeric sender ID or approved number
to: formattedNumber,
// Optional parameters for delivery tracking
statusCallback: 'https://your-webhook.com/status'
});
return response;
} catch (error) {
console.error('SMS sending failed:', error);
throw error;
}
}
Sinch
Sinch offers comprehensive SMS services for Sierra Leone with the following integration approach:
import { SinchClient } from '@sinch/sdk-core';
// Initialize Sinch client
const sinchClient = new SinchClient({
projectId: process.env.SINCH_PROJECT_ID,
apiToken: process.env.SINCH_API_TOKEN
});
// Function to send SMS via Sinch
async function sendSinchSMS(
recipientNumber: string,
messageText: string
) {
try {
const response = await sinchClient.sms.batches.send({
sendSMSRequestBody: {
to: [recipientNumber],
from: 'YourCompany', // Alphanumeric sender ID
body: messageText,
// Optional delivery report settings
deliveryReport: 'summary'
}
});
return response;
} catch (error) {
console.error('Sinch SMS failed:', error);
throw error;
}
}
MessageBird
MessageBird (referred to as "Bird" in the template) provides SMS capabilities for Sierra Leone:
import messagebird from 'messagebird';
// Initialize MessageBird client
const mbClient = messagebird(process.env.MESSAGEBIRD_API_KEY);
// Function to send SMS via MessageBird
function sendMessageBirdSMS(
recipient: string,
message: string,
originator: string
): Promise<any> {
return new Promise((resolve, reject) => {
mbClient.messages.create({
originator: originator,
recipients: [recipient],
body: message,
// Optional parameters
reportUrl: 'https://your-webhook.com/delivery-reports'
}, (err, response) => {
if (err) {
reject(err);
return;
}
resolve(response);
});
});
}
Plivo
Plivo's SMS API integration for Sierra Leone:
import plivo from 'plivo';
// Initialize Plivo client
const plivoClient = new plivo.Client(
process.env.PLIVO_AUTH_ID,
process.env.PLIVO_AUTH_TOKEN
);
// Function to send SMS via Plivo
async function sendPlivoSMS(
destination: string,
message: string,
senderId: string
) {
try {
const response = await plivoClient.messages.create({
src: senderId,
dst: destination,
text: message,
// Optional URL tracking
url: 'https://your-webhook.com/delivery-status'
});
return response;
} catch (error) {
console.error('Plivo SMS failed:', error);
throw error;
}
}
API Rate Limits and Throughput
- Default rate limit: 100 messages per second
- Batch processing recommended for volumes over 1000 messages
- Implement exponential backoff for retry logic
- Consider time-of-day restrictions when scheduling bulk sends
Error Handling and Reporting
- Implement comprehensive error logging
- Monitor delivery receipts via webhooks
- Track common failure patterns
- Maintain audit logs for compliance purposes
Recap and Additional Resources
Key Takeaways
-
Compliance Priorities
- Obtain explicit consent
- Honor opt-out requests promptly
- Respect sending hours (8 AM - 8 PM)
- Maintain proper records
-
Technical Considerations
- Use proper number formatting (+232)
- Implement retry logic
- Monitor delivery rates
- Test across all carriers
-
Best Practices
- Localize content appropriately
- Keep messages concise
- Regular testing and monitoring
- Maintain clean contact lists
Next Steps
- Review the Telecommunications Act 2006
- Consult with local legal counsel
- Set up test accounts with preferred SMS providers
- Implement proper consent management systems