Gambia SMS Best Practices, Compliance, and Features
Gambia SMS Market Overview
Locale name: | Gambia |
---|---|
ISO code: | GM |
Region | Middle East & Africa |
Mobile country code (MCC) | 607 |
Dialing Code | +220 |
Market Conditions: The Gambian mobile market is characterized by a growing SMS adoption rate, with SMS remaining a crucial communication channel for businesses and consumers. The market is served by multiple mobile operators, with significant Android device penetration. OTT messaging apps are gaining popularity but SMS maintains its importance for critical communications and business messaging.
Key SMS Features and Capabilities in Gambia
Gambia supports standard SMS features including concatenated messaging and alphanumeric sender IDs, though two-way SMS functionality is limited.
Two-way SMS Support
Two-way SMS is not supported in Gambia through major SMS providers.
No special requirements are available since the feature is not supported.
Concatenated Messages (Segmented SMS)
Support: Yes, concatenation is supported for most sender ID types.
Message length rules: Standard SMS length limits apply - 160 characters for GSM-7 encoding, 70 characters for UCS-2 encoding before splitting occurs.
Encoding considerations: Both GSM-7 and UCS-2 encodings are supported, with UCS-2 recommended for messages containing non-Latin characters.
MMS Support
MMS messages are automatically converted to SMS with an embedded URL link for accessing multimedia content.
Best Practice: When sending multimedia content, ensure the URL is short to maximize the available characters for your message content.
Recipient Phone Number Compatibility
Number Portability
Number portability is not available in Gambia.
This simplifies message routing as numbers remain tied to their original carriers.
Sending SMS to Landlines
Sending SMS to landline numbers is not possible in Gambia.
Attempts to send SMS to landline numbers will result in a failed delivery and an error response (400 error code 21614 for Twilio API).
Compliance and Regulatory Guidelines for SMS in Gambia
The Public Utilities Regulatory Authority (PURA) oversees SMS communications in Gambia, with specific guidelines focused on consumer protection and unsolicited messages. Compliance with PURA regulations is mandatory for all SMS senders.
Consent and Opt-In
Explicit Consent Requirements:
- Written or electronic consent must be obtained before sending marketing messages
- Keep detailed records of when and how consent was obtained
- Clearly state the purpose and frequency of messages during opt-in
Best Practices for Consent:
- Use double opt-in verification
- Maintain consent logs with timestamps
- Provide clear terms and conditions
- Allow easy opt-out options
HELP/STOP and Other Commands
- All SMS campaigns must support STOP and HELP keywords
- Messages should include opt-out instructions
- Common keywords to support:
- STOP, UNSUBSCRIBE, END
- HELP, INFO
- Support both English and local languages where possible
Do Not Call / Do Not Disturb Registries
Gambia maintains a Do Not Disturb (DND) registry managed by PURA:
- Consumers can register for DND by sending an SMS to short code 1040
- Two DND options available:
- FULL DND: Blocks all unsolicited messages
- PARTIAL DND: Allows selected categories
- Compliance Requirements:
- Regular checking of DND registry
- Immediate removal of DND numbers
- Monthly reporting to PURA
Time Zone Sensitivity
- Permitted messaging hours: 8:00 AM to 8:00 PM local time
- Exceptions only for emergency messages
- Recommended sending window: 10:00 AM to 6:00 PM
- Consider Ramadan timing adjustments
Phone Numbers Options and SMS Sender Types for in Gambia
Alphanumeric Sender ID
Operator network capability: Supported across all networks
Registration requirements: No pre-registration required, dynamic usage allowed
Sender ID preservation: Yes, sender IDs are preserved as specified
Long Codes
Domestic vs. International:
- Domestic: Not supported
- International: Supported for all networks except Comium
Sender ID preservation: Yes, except for Comium network
Provisioning time: Immediate for international numbers
Use cases: Transactional messages, alerts, notifications
Short Codes
Support: Not currently supported in Gambia
Provisioning time: N/A
Use cases: N/A
Restricted SMS Content, Industries, and Use Cases
Restricted Content:
- Gambling and betting
- Adult content
- Political messaging without proper authorization
- Cryptocurrency promotions
- Misleading financial services
Content Filtering
Known Carrier Rules:
- URLs must be from approved domains
- Message content screened for restricted keywords
- Character limit enforcement
Tips to Avoid Blocking:
- Avoid excessive capitalization
- Don't use multiple exclamation marks
- Keep URLs to trusted domains
- Maintain consistent sender IDs
Best Practices for Sending SMS in Gambia
Messaging Strategy
- Keep messages under 160 characters when possible
- Include clear call-to-action
- Use personalization tokens strategically
- Maintain consistent brand voice
Sending Frequency and Timing
- Limit to 4-5 messages per month per recipient
- Respect religious observances (especially Ramadan)
- Avoid sending during Friday prayers
- Consider seasonal adjustments during holidays
Localization
- Primary languages: English, Mandinka, Fula, Wolof
- Consider bilingual messages for wider reach
- Use appropriate cultural references
- Respect local customs and sensitivities
Opt-Out Management
- Process opt-outs within 24 hours
- Maintain centralized opt-out database
- Regular cleanup of contact lists
- Document opt-out handling procedures
Testing and Monitoring
- Test across all major carriers
- Monitor delivery rates by carrier
- Track engagement metrics
- Regular performance reporting
- A/B test message content
SMS API integrations for Gambia
Twilio
Twilio provides a robust SMS API with comprehensive support for Gambia. Integration requires your Account SID and Auth Token from the Twilio Console.
import { Twilio } from 'twilio';
// Initialize Twilio client with credentials
const client = new Twilio(
process.env.TWILIO_ACCOUNT_SID,
process.env.TWILIO_AUTH_TOKEN
);
// Function to send SMS to Gambia
async function sendSMSToGambia(
to: string,
message: string,
senderId: string
) {
try {
// Ensure proper formatting for Gambia numbers (+220)
const formattedNumber = to.startsWith('+220') ? to : `+220${to}`;
const response = await client.messages.create({
body: message,
from: senderId, // Alphanumeric sender ID
to: formattedNumber,
});
console.log(`Message sent successfully! SID: ${response.sid}`);
return response;
} catch (error) {
console.error('Error sending message:', error);
throw error;
}
}
Sinch
Sinch offers direct carrier connections in Gambia with support for alphanumeric sender IDs.
import axios from 'axios';
class SinchSMSClient {
private readonly apiToken: string;
private readonly servicePlanId: string;
private readonly baseUrl: string;
constructor(apiToken: string, servicePlanId: string) {
this.apiToken = apiToken;
this.servicePlanId = servicePlanId;
this.baseUrl = `https://sms.api.sinch.com/xms/v1/${this.servicePlanId}`;
}
async sendSMS(to: string, message: string, senderId: string) {
try {
const response = await axios.post(
`${this.baseUrl}/batches`,
{
from: senderId,
to: [to],
body: message
},
{
headers: {
'Authorization': `Bearer ${this.apiToken}`,
'Content-Type': 'application/json'
}
}
);
return response.data;
} catch (error) {
console.error('Sinch SMS Error:', error);
throw error;
}
}
}
MessageBird
MessageBird provides reliable SMS delivery to Gambia with support for both transactional and promotional messages.
import { MessageBird } from 'messagebird';
class MessageBirdClient {
private client: MessageBird;
constructor(apiKey: string) {
this.client = new MessageBird(apiKey);
}
sendSMS(to: string, message: string, senderId: string): Promise<any> {
return new Promise((resolve, reject) => {
this.client.messages.create({
originator: senderId,
recipients: [to],
body: message,
type: 'sms'
}, (err, response) => {
if (err) {
reject(err);
} else {
resolve(response);
}
});
});
}
}
Plivo
Plivo offers competitive rates for SMS delivery to Gambia with detailed delivery reporting.
import plivo from 'plivo';
class PlivoSMSClient {
private client: any;
constructor(authId: string, authToken: string) {
this.client = new plivo.Client(authId, authToken);
}
async sendSMS(to: string, message: string, senderId: string) {
try {
const response = await this.client.messages.create({
src: senderId,
dst: to,
text: message,
});
return response;
} catch (error) {
console.error('Plivo SMS Error:', error);
throw error;
}
}
}
API Rate Limits and Throughput
- Default rate limit: 30 messages per second
- Batch processing recommended for volumes over 1000/hour
- Implement exponential backoff for retry logic
Throughput Management Strategies:
- Queue messages using Redis or similar
- Implement batch sending for large campaigns
- Monitor delivery rates and adjust sending speed
Error Handling and Reporting
- Implement comprehensive logging
- Monitor delivery receipts
- Track common error codes:
- 4001: Invalid number format
- 4002: Network not available
- 4003: Message blocked
- Store delivery status updates
Recap and Additional Resources
Key Takeaways
-
Compliance Priorities
- Respect DND registry
- Adhere to time restrictions (8 AM - 8 PM)
- Maintain proper consent records
-
Technical Considerations
- Use alphanumeric sender IDs
- Implement proper error handling
- Monitor delivery rates
-
Best Practices
- Localize content appropriately
- Maintain clean contact lists
- Regular testing across carriers
Next Steps
- Review PURA regulations at www.pura.gm
- Consult with local legal counsel for compliance
- Set up test accounts with preferred SMS providers
- Implement proper consent management system
Additional Resources
- PURA Guidelines: www.pura.gm/guidelines
- Gambia Communications Act: www.gambia.gov.gm/communications
- Industry Best Practices: www.gsma.com/gambia