Equatorial Guinea SMS Best Practices, Compliance, and Features
Equatorial Guinea SMS Market Overview
Locale name: | Equatorial Guinea |
---|---|
ISO code: | GQ |
Region | Middle East & Africa |
Mobile country code (MCC) | 627 |
Dialing Code | +240 |
Market Conditions: Equatorial Guinea has a growing mobile market with SMS remaining a crucial communication channel. While OTT messaging apps like WhatsApp are gaining popularity, SMS continues to be reliable for business communications and notifications due to its universal reach and network independence. The market is primarily served by major operators including GETESA (Orange GQ).
Key SMS Features and Capabilities in Equatorial Guinea
Equatorial Guinea offers basic SMS functionality with some limitations on advanced features like two-way messaging and concatenation.
Two-way SMS Support
Two-way SMS is not supported in Equatorial Guinea. This means businesses can only send outbound messages without the ability to receive replies through the same channel.
Concatenated Messages (Segmented SMS)
Support: Concatenated messaging is not supported in Equatorial Guinea.
Message length rules: Standard SMS character limits apply - 160 characters for GSM-7 encoding and 70 characters for Unicode.
Encoding considerations: Both GSM-7 and UCS-2 encoding are supported, but messages must fit within single-message character limits.
MMS Support
MMS messages are automatically converted to SMS with an embedded URL link. This means any multimedia content will be accessible via a web link rather than directly in the message. Best practice is to ensure your multimedia content is mobile-optimized and hosted on a reliable, fast-loading platform.
Recipient Phone Number Compatibility
Number Portability
Number portability is not available in Equatorial Guinea. This means mobile numbers remain tied to their original carrier, which helps ensure more reliable message routing.
Sending SMS to Landlines
Sending SMS to landline numbers is not possible in Equatorial Guinea. Attempts to send messages to landline numbers will result in a failed delivery and may trigger an error response (such as Twilio's 400 response with error code 21614). Messages to landline numbers will not appear in logs and accounts will not be charged.
Compliance and Regulatory Guidelines for SMS in Equatorial Guinea
SMS communications in Equatorial Guinea are regulated by the Ministry of Transport, Posts and Telecommunications, which has issued Ministerial Order No. 3/2020 outlining telecommunications regulations. While specific SMS marketing laws are limited, businesses must follow general telecommunications guidelines and international best practices.
Consent and Opt-In
Explicit Consent Requirements:
- Obtain clear, documented consent before sending any marketing or promotional messages
- Maintain detailed 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 content type
HELP/STOP and Other Commands
- Support for STOP commands is required for all marketing messages
- Messages should be provided in Spanish (official language) and French (widely used)
- Common keywords to support:
- STOP, BAJA, CANCELAR (Spanish)
- ARRÊTER, STOP (French)
- HELP, AYUDA, AIDE
Do Not Call / Do Not Disturb Registries
While Equatorial Guinea does not maintain an official Do Not Call registry, businesses should:
- Maintain their own suppression lists
- Honor opt-out requests immediately
- Document all opt-out requests and their processing dates
- Regularly clean contact lists to remove unsubscribed numbers
Time Zone Sensitivity
Equatorial Guinea operates in the West Africa Time zone (WAT, UTC+1):
- Send messages between 8:00 AM and 8:00 PM local time
- Avoid sending during religious holidays and Sundays
- Emergency messages may be sent outside these hours if truly urgent
Phone Numbers Options and SMS Sender Types for in Equatorial Guinea
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 as sent
Long Codes
Domestic vs. International:
- Domestic long codes are supported by operators but not currently available through major providers
- International long codes are not supported
Sender ID preservation: Original sender IDs are preserved for domestic numbers
Provisioning time: N/A for domestic numbers
Use cases: Primarily used for transactional and verification messages
Short Codes
Support: Short codes are not currently supported in Equatorial Guinea
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 or services
- Unauthorized financial services
- Political messaging without proper authorization
- Cryptocurrency and investment schemes
Content Filtering
Known Carrier Filtering Rules:
- Messages containing certain keywords related to restricted industries
- URLs from suspicious or blacklisted domains
- Messages with excessive punctuation or all-caps text
Best Practices to Avoid Filtering:
- Use clear, professional language
- Avoid URL shorteners
- Limit special characters and excessive punctuation
- Include company name in sender ID when possible
Best Practices for Sending SMS in Equatorial Guinea
Messaging Strategy
- Keep messages under 160 characters when possible
- Include clear call-to-actions
- Personalize messages with recipient's name when appropriate
- Maintain consistent sender ID for brand recognition
Sending Frequency and Timing
- Limit marketing messages to 2-4 per month per recipient
- Respect local business hours (8:00 AM - 8:00 PM)
- Consider local events and holidays
- Space out messages to avoid overwhelming recipients
Localization
- Primary languages: Spanish and French
- Consider local dialects for specific regions
- Use formal tone in business communications
- Include both Spanish and French versions for critical messages
Opt-Out Management
- Process opt-outs within 24 hours
- Maintain centralized opt-out database
- Include opt-out instructions in every marketing message
- Regular audit of opt-out list compliance
Testing and Monitoring
- Test messages across all major carriers
- Monitor delivery rates by carrier
- Track opt-out rates and patterns
- Regular review of message performance metrics
- Test message rendering on popular device types
SMS API integrations for Equatorial Guinea
Twilio
Twilio provides a straightforward REST API for sending SMS messages to Equatorial Guinea. Authentication uses your Account SID and Auth Token.
import { Twilio } from 'twilio';
// Initialize client with environment variables
const client = new Twilio(
process.env.TWILIO_ACCOUNT_SID,
process.env.TWILIO_AUTH_TOKEN
);
// Function to send SMS to Equatorial Guinea
async function sendSMSToEquatorialGuinea(
to: string,
message: string,
senderId: string
) {
try {
// Ensure proper number formatting for Equatorial Guinea (+240)
const formattedNumber = to.startsWith('+240') ? to : `+240${to}`;
const response = await client.messages.create({
body: message,
from: senderId, // Alphanumeric sender ID or Twilio number
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 a robust SMS API with support for Equatorial Guinea. Their API requires API Token and Service Plan ID for authentication.
import { SinchClient } from '@sinch/sdk-core';
// Initialize Sinch client
const sinchClient = new SinchClient({
projectId: process.env.SINCH_PROJECT_ID,
keyId: process.env.SINCH_KEY_ID,
keySecret: process.env.SINCH_KEY_SECRET,
});
// Function to send SMS using Sinch
async function sendSMSWithSinch(
to: string,
message: string,
senderId: string
) {
try {
const response = await sinchClient.sms.batches.send({
sendSMSRequestBody: {
to: [to],
from: senderId,
body: message,
delivery_report: 'summary' // Request delivery report
}
});
console.log(`Batch ID: ${response.id}`);
return response;
} catch (error) {
console.error('Sinch API error:', error);
throw error;
}
}
Bird
Bird's API provides SMS capabilities for Equatorial Guinea with straightforward REST endpoints.
import axios from 'axios';
// Bird API configuration
const BIRD_API_CONFIG = {
baseURL: 'https://api.bird.com',
headers: {
'Authorization': `Bearer ${process.env.BIRD_API_KEY}`,
'Content-Type': 'application/json'
}
};
// Function to send SMS via Bird
async function sendSMSWithBird(
to: string,
message: string,
senderId: string
) {
try {
const response = await axios.post(
'/v1/messages',
{
recipient: to,
sender_id: senderId,
content: message,
country_code: 'GQ'
},
BIRD_API_CONFIG
);
console.log('Message sent:', response.data);
return response.data;
} catch (error) {
console.error('Bird API error:', error);
throw error;
}
}
API Rate Limits and Throughput
Rate limits for Equatorial Guinea vary by provider:
- Twilio: 100 messages per second
- Sinch: 30 messages per second
- Bird: 50 messages per second
Strategies for Large-Scale Sending:
- Implement exponential backoff for retry logic
- Use queue systems like Redis or RabbitMQ
- Batch messages in groups of 50-100
- Monitor throughput and adjust sending rates
Error Handling and Reporting
Common Error Scenarios:
// Generic error handler for SMS APIs
function handleSMSError(error: any): void {
if (error.code === 'invalid_number') {
console.error('Invalid phone number format for Equatorial Guinea');
} else if (error.code === 'rate_limit_exceeded') {
// Implement exponential backoff
setTimeout(() => {
// Retry logic here
}, calculateBackoffTime());
} else if (error.code === 'delivery_failed') {
// Log delivery failure for analysis
logDeliveryFailure(error);
}
}
// Logging function for delivery failures
function logDeliveryFailure(error: any): void {
const logEntry = {
timestamp: new Date().toISOString(),
error_code: error.code,
message_id: error.messageId,
recipient: error.recipient,
reason: error.reason
};
// Log to monitoring system
console.error('Delivery failure:', logEntry);
}
Recap and Additional Resources
Key Takeaways
-
Compliance Priorities:
- Obtain explicit consent
- Honor opt-out requests
- Respect sending hours (8:00 AM - 8:00 PM WAT)
-
Technical Considerations:
- Use proper number formatting (+240)
- Implement retry logic
- Monitor delivery rates
-
Best Practices:
- Localize content (Spanish/French)
- Maintain consistent sender ID
- Regular testing across carriers
Next Steps
-
Technical Setup:
- Choose an SMS API provider
- Implement error handling
- Set up monitoring
-
Compliance:
- Review Ministry of Transport regulations
- Document consent collection process
- Establish opt-out handling procedures
Additional Resources
Official Resources:
Provider Documentation:
Industry Resources: