Sao Tome and Principe SMS Best Practices, Compliance, and Features
Sao Tome and Principe SMS Market Overview
Locale name: | Sao Tome and Principe |
---|---|
ISO code: | ST |
Region | Middle East & Africa |
Mobile country code (MCC) | 626 |
Dialing Code | +239 |
Market Conditions: Sao Tome and Principe has a growing mobile telecommunications sector with increasing SMS adoption. The market is characterized by limited competition among mobile operators and moderate smartphone penetration. While OTT messaging apps are gaining popularity in urban areas, SMS remains a reliable communication channel, especially for business communications and notifications due to its universal reach and reliability.
Key SMS Features and Capabilities in Sao Tome and Principe
Sao Tome and Principe supports basic SMS functionality with some limitations on advanced features, making it important to understand the specific capabilities and restrictions when implementing SMS communications.
Two-way SMS Support
Two-way SMS is not supported in Sao Tome and Principe according to current provider capabilities. This means businesses should design their SMS strategies around one-way communications only.
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 - 160 characters for GSM-7 encoding and 70 characters for Unicode messages.
Encoding considerations: Both GSM-7 and UCS-2 encodings are supported, with messages being split and rejoined based on the encoding used.
MMS Support
MMS messages are not directly supported in Sao Tome and Principe. Instead, MMS content is automatically converted to SMS with an embedded URL link where recipients can view the multimedia content. This ensures compatibility while still allowing businesses to share rich media content with their audience.
Recipient Phone Number Compatibility
Number Portability
Number portability is not available in Sao Tome and Principe. This means mobile numbers remain tied to their original carrier, which can simplify message routing but limits consumer flexibility in changing providers.
Sending SMS to Landlines
Sending SMS to landline numbers is not supported in Sao Tome and Principe. Attempts to send messages to landline numbers will result in a failed delivery and an error response (400 error code 21614) from the API. These messages will not appear in logs and accounts will not be charged for failed attempts.
Compliance and Regulatory Guidelines for SMS in Sao Tome and Principe
SMS communications in Sao Tome and Principe must comply with general telecommunications regulations and data protection laws. While specific SMS marketing regulations are still evolving, businesses should follow international best practices and general privacy principles to ensure compliance.
Consent and Opt-In
Explicit Consent Requirements:
- Obtain clear, explicit consent before sending any marketing messages
- Document and maintain records of all opt-in confirmations
- Provide clear information about message frequency and content type
- Include company identification in consent requests
Best Practices for Consent Collection:
- Use double opt-in processes for marketing lists
- Store consent timestamps and collection methods
- Regularly clean and update consent records
- Provide clear terms and conditions during opt-in
HELP/STOP and Other Commands
While Sao Tome and Principe doesn't mandate specific keywords, implementing standard opt-out mechanisms is recommended:
- Include STOP option in marketing messages
- Support common opt-out keywords (STOP, END, CANCEL)
- Process opt-out requests within 24 hours
- Consider supporting both Portuguese and English commands
Do Not Call / Do Not Disturb Registries
Sao Tome and Principe currently does not maintain an official Do Not Call registry. However, businesses should:
- Maintain internal opt-out databases
- Honor all opt-out requests immediately
- Keep suppression lists updated
- Regularly clean contact databases
Time Zone Sensitivity
Sao Tome and Principe follows GMT+0. Best practices include:
- Send messages between 8:00 AM and 8:00 PM local time
- Avoid messaging during religious holidays
- Respect weekend quiet hours
- Only send urgent messages outside these hours
Phone Numbers Options and SMS Sender Types for in Sao Tome and Principe
Alphanumeric Sender ID
Operator network capability: Supported with dynamic usage allowed
Registration requirements: No pre-registration required
Sender ID preservation: Sender IDs are generally preserved but may be subject to operator policies
Long Codes
Domestic vs. International: International long codes supported; domestic long codes not currently available
Sender ID preservation: Original sender ID typically preserved for international numbers
Provisioning time: Immediate to 24 hours
Use cases: Transactional messages, alerts, and notifications
Short Codes
Support: Not currently supported in Sao Tome and Principe
Provisioning time: N/A
Use cases: N/A
Restricted SMS Content, Industries, and Use Cases
Restricted Industries and Content:
- Gambling and betting services
- Adult content and services
- Unauthorized financial services
- Political campaign messages without proper authorization
- Pharmaceutical promotions without proper licensing
Content Filtering
Known Filtering Rules:
- Messages containing certain keywords may be blocked
- URLs may be subject to screening
- High-volume identical messages may be filtered
Best Practices to Avoid Filtering:
- Avoid spam-triggering words
- Use approved URL shorteners
- Vary message content for bulk sends
- Maintain consistent sending patterns
Best Practices for Sending SMS in Sao Tome and Principe
Messaging Strategy
- Keep messages under 160 characters when possible
- Include clear call-to-actions
- Use personalization thoughtfully
- Maintain consistent brand voice
Sending Frequency and Timing
- Limit to 2-4 messages per week per recipient
- Respect local holidays and customs
- Avoid late night/early morning sends
- Space out bulk campaigns
Localization
- Primary languages: Portuguese (official), Forro, Angolar
- Consider bilingual messages (Portuguese/English) for business communications
- Use appropriate date and time formats
- Respect cultural sensitivities
Opt-Out Management
- Process opt-outs within 24 hours
- Maintain centralized opt-out database
- Confirm opt-out with acknowledgment message
- Regular audit of opt-out compliance
Testing and Monitoring
- Test across major local carriers
- Monitor delivery rates closely
- Track engagement metrics
- Regular performance reporting
SMS API integrations for Sao Tome and Principe
Twilio
Twilio provides reliable SMS delivery to Sao Tome and Principe through their REST API. Here's how to implement it:
import * as Twilio from 'twilio';
// Initialize client with your credentials
const client = new Twilio(
process.env.TWILIO_ACCOUNT_SID,
process.env.TWILIO_AUTH_TOKEN
);
async function sendSMS() {
try {
// Send message to Sao Tome and Principe number
const message = await client.messages.create({
body: 'Your message here', // Keep under 160 chars for single SMS
from: 'YourSenderID', // Your approved sender ID
to: '+239XXXXXXXX' // Sao Tome and Principe number in E.164 format
});
console.log(`Message sent successfully: ${message.sid}`);
return message;
} catch (error) {
console.error('Error sending message:', error);
throw error;
}
}
Sinch
Sinch offers direct carrier connections for Sao Tome and Principe. Implementation example:
import { SinchClient } from '@sinch/sdk-core';
const sinchClient = new SinchClient({
projectId: process.env.SINCH_PROJECT_ID,
keyId: process.env.SINCH_KEY_ID,
keySecret: process.env.SINCH_KEY_SECRET
});
async function sendSMS() {
try {
const response = await sinchClient.sms.batches.send({
sendSMSRequestBody: {
to: ['+239XXXXXXXX'],
from: 'YourSenderID',
body: 'Your message here',
// Optional delivery report URL
deliveryReport: 'none'
}
});
console.log('Message sent:', response);
return response;
} catch (error) {
console.error('Error:', error);
throw error;
}
}
MessageBird
MessageBird provides SMS connectivity to Sao Tome and Principe with detailed delivery reporting:
import messagebird from 'messagebird';
const client = messagebird(process.env.MESSAGEBIRD_API_KEY);
function sendSMS() {
const params = {
originator: 'YourSenderID',
recipients: ['+239XXXXXXXX'],
body: 'Your message here',
reportUrl: 'https://your-callback-url.com/delivery-reports'
};
client.messages.create(params, (err, response) => {
if (err) {
console.error('Error:', err);
return;
}
console.log('Message sent successfully:', response);
});
}
Plivo
Plivo offers SMS services to Sao Tome and Principe with high deliverability:
import plivo from 'plivo';
const client = new plivo.Client(
process.env.PLIVO_AUTH_ID,
process.env.PLIVO_AUTH_TOKEN
);
async function sendSMS() {
try {
const message = await client.messages.create({
src: 'YourSenderID', // Your sender ID
dst: '+239XXXXXXXX', // Destination number
text: 'Your message here',
// Optional parameters
url: 'https://your-callback-url.com/delivery-status',
method: 'POST'
});
console.log('Message sent:', message);
return message;
} catch (error) {
console.error('Error:', error);
throw error;
}
}
API Rate Limits and Throughput
- Default rate limit: 1 message per second per destination
- Batch sending: Maximum 100 numbers per request
- Daily sending limits may apply based on account type
Strategies for Large-Scale Sending:
- Implement queuing system for high-volume campaigns
- Use batch APIs when available
- Space out sends to avoid carrier throttling
- Monitor delivery rates and adjust sending speed
Error Handling and Reporting
- Implement retry logic for failed messages
- Log all API responses and delivery receipts
- Monitor common error codes:
- 21614: Invalid number format
- 21408: Rate limit exceeded
- 21611: Message content rejected
Recap and Additional Resources
Key Takeaways
-
Compliance Priorities:
- Obtain explicit consent
- Honor opt-out requests
- Respect sending hours
- Maintain clean contact lists
-
Technical Considerations:
- Use E.164 number formatting
- Monitor delivery rates
- Implement proper error handling
- Follow rate limiting guidelines
-
Best Practices:
- Localize content appropriately
- Keep messages concise
- Test thoroughly before campaigns
- Maintain proper documentation
Next Steps
-
Technical Implementation:
- Choose an SMS provider
- Set up development environment
- Implement error handling
- Test with small user group
-
Compliance:
- Review local regulations
- Document consent processes
- Set up opt-out handling
- Consult legal experts
-
Operations:
- Create monitoring dashboard
- Set up alerting system
- Develop escalation procedures
- Train support team
Additional Information: