sms compliance
sms compliance
Equatorial Guinea SMS Best Practices, Compliance, and Features
Learn how to send SMS messages to Equatorial Guinea with this comprehensive guide covering regulatory compliance, API integration, carrier requirements, and technical specifications for successful SMS campaigns in the GQ market.
Equatorial Guinea SMS Best Practices, Compliance, and Features
Learn how to send SMS messages to Equatorial Guinea with this comprehensive guide covering regulatory compliance, API integration, carrier requirements, and technical specifications for successful SMS campaigns in the GQ market.
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. As of January 2025, there were 872,000 cellular mobile connections active in the country (45.5% mobile penetration), with 59.5% of connections considered "broadband" (3G/4G/5G capable). Internet penetration stood at 60.4% (1.16 million users). The market is primarily served by two GSM operators: GETESA (formerly Orange GQ), the dominant state-owned operator, and Muni, a private competitor. GETESA leads with stronger coverage and speeds, particularly in urban areas like Malabo and Bata, though rural coverage remains limited. 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.
How to Send SMS to Equatorial Guinea: Key Features and Technical Requirements
| Feature | Support Status | Details |
|---|---|---|
| Two-way SMS | Not Supported | Outbound only; no reply capability |
| Concatenated SMS | Not Supported | Messages exceeding 160/70 chars may fail |
| MMS | Converted to SMS | Multimedia sent as URL link |
| Alphanumeric Sender ID | Supported | Dynamic, up to 11 characters, no registration |
| Number Portability | Not Available | Numbers tied to original carrier |
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 through major SMS providers. Businesses can only send outbound messages without the ability to receive replies through the same channel.
Workarounds for two-way communication:
- Use web forms or mobile apps for customer responses instead of SMS replies
- Direct users to WhatsApp or other OTT messaging platforms for interactive conversations
- Implement voice call-back systems for urgent customer inquiries
- Use email follow-ups for non-time-sensitive feedback collection
Concatenated Messages (Segmented SMS)
Support: Concatenated messaging is not supported in Equatorial Guinea.
What happens to longer messages: Carriers reject or truncate messages that exceed standard character limits at 160 characters (GSM-7) or 70 characters (Unicode). Messages are not automatically split into segments and reassembled. Keep all messages within single-segment limits to ensure delivery.
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 you must keep messages within single-message character limits.
MMS Support
Carriers automatically convert MMS messages to SMS with an embedded URL link. Multimedia content becomes accessible via a web link rather than directly in the message. 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. 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.
SMS Compliance and Regulatory Requirements 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 Rights and Public Service Obligations for telecommunications activities. The regulatory body ORTEL (Organismo Regulador de las Telecomunicaciones y de la Electricidad) oversees compliance and inspections. While specific SMS marketing laws are limited, businesses must follow general telecommunications guidelines and international best practices. Non-compliance may result in service suspension, fines, or loss of operating licenses, though specific penalty amounts are not publicly detailed.
Consent and Opt-In Requirements
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
Example of compliant opt-in flow:
Website/App Opt-In Form:
☐ Yes, I agree to receive SMS notifications from [Company Name]
regarding order updates, promotions, and service information.
Message frequency: up to 4 messages per month.
Reply STOP to unsubscribe. Message and data rates may apply.
Confirmation SMS (sent immediately after opt-in):
"Welcome to [Company Name] SMS updates! You'll receive up to 4
messages/month. Reply STOP to opt-out, HELP for assistance."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
Technical implementation for keyword detection:
// Keyword detection logic for inbound messages
function processInboundSMS(from: string, body: string): void {
const normalizedBody = body.trim().toUpperCase();
// Spanish and French STOP keywords
const stopKeywords = ['STOP', 'BAJA', 'CANCELAR', 'ARRÊTER', 'ARRET'];
const helpKeywords = ['HELP', 'AYUDA', 'AIDE', 'INFO'];
if (stopKeywords.some(kw => normalizedBody === kw)) {
addToSuppressionList(from);
sendConfirmation(from, "You have been unsubscribed. No more messages will be sent.");
logOptOut(from, new Date());
} else if (helpKeywords.some(kw => normalizedBody === kw)) {
sendHelpMessage(from, "Reply STOP to unsubscribe. Contact: support@company.com");
}
}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
Major holidays to avoid (based on official public holidays):
- January 1: New Year's Day
- March 8: International Women's Day
- April (variable): Good Friday
- May 1: Labour Day
- June 5: President's Day
- June (variable): Corpus Christi
- August 3: Freedom Day
- August 15: Constitution Day
- October 12: Independence Day
- December 8: Immaculate Conception
- December 25: Christmas Day
Phone Number Options and SMS Sender Types in Equatorial Guinea
Alphanumeric Sender ID
Operator network capability: Supported with dynamic usage allowed
Registration requirements: No pre-registration required
Sender ID preservation: Carriers preserve sender IDs as sent
Alphanumeric ID restrictions (standard SMS protocol limits):
- Maximum length: 11 characters
- Allowed characters: A-Z (uppercase and lowercase), 0-9, and space character (ASCII 32)
- No special characters or symbols permitted
- Cannot consist of numbers only
- Examples: "YourBrand", "CompanyABC", "Alert 24"
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
Why domestic long codes are unavailable: Major international SMS providers (Twilio, Sinch, Bird) have not established domestic number provisioning agreements with Equatorial Guinea operators. The limited market size and regulatory complexity make it economically challenging for providers to offer local number inventory. Businesses typically use alphanumeric sender IDs instead, which provide better brand recognition and don't require number provisioning.
Sender ID preservation: Carriers preserve original sender IDs for domestic numbers
Provisioning time: N/A for domestic numbers
Use cases: Use primarily 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
Enforcement mechanisms: ORTEL conducts network monitoring and requests traffic reports from operators. Carriers employ content filtering systems to block prohibited messages. Violations result in account suspension, service termination, or regulatory penalties.
Content Filtering
Known Carrier Filtering Rules:
- Messages containing certain keywords related to restricted industries (e.g., "casino", "bet", "gambling", "adult")
- URLs from suspicious or blacklisted domains
- Messages with excessive punctuation or all-caps text (may be flagged as spam)
Best Practices to Avoid Filtering:
- Use clear, professional language
- Avoid URL shorteners (bit.ly, tinyurl, etc.) – use full, branded domains
- Limit special characters and excessive punctuation
- Include company name in sender ID when possible
- Test messages before large-scale campaigns
Best Practices for SMS Marketing 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
Key metrics to track:
- Delivery rate (target: >95% for valid numbers)
- Bounce rate (investigate if >5%)
- Opt-out rate (acceptable: <2% per campaign; investigate if >5%)
- Time-to-delivery (monitor for carrier issues)
- Cost per message (track for budget management)
Action thresholds:
- Delivery rate drops below 90%: Check sender ID reputation and message content
- Opt-out rate exceeds 5%: Review message relevance and frequency
- Bounce rate increases suddenly: Verify number list quality and formatting
- 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 Integration for Equatorial Guinea: Twilio, Sinch, and Bird
Twilio SMS API for Equatorial Guinea
Twilio provides a straightforward REST API for sending SMS messages to Equatorial Guinea. Authenticate using your Account SID and Auth Token.
Phone number validation logic:
import { Twilio } from 'twilio';
// Initialize client with environment variables
const client = new Twilio(
process.env.TWILIO_ACCOUNT_SID,
process.env.TWILIO_AUTH_TOKEN
);
// Validate Equatorial Guinea phone number format
function validateEQGuineaNumber(phoneNumber: string): boolean {
// E.164 format: +240 followed by 6-9 digits
const eqGuineaRegex = /^\+240\d{6,9}$/;
return eqGuineaRegex.test(phoneNumber);
}
// Function to send SMS to Equatorial Guinea
async function sendSMSToEquatorialGuinea(
to: string,
message: string,
senderId: string
) {
try {
// Validate message length (no concatenation support)
if (message.length > 160) {
throw new Error("Message exceeds 160 character limit. Concatenation not supported.");
}
// Ensure proper number formatting for Equatorial Guinea (+240)
const formattedNumber = to.startsWith('+240') ? to : `+240${to}`;
// Validate number format
if (!validateEQGuineaNumber(formattedNumber)) {
throw new Error("Invalid Equatorial Guinea phone number format");
}
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 SMS API for Equatorial Guinea
Sinch offers a robust SMS API with support for Equatorial Guinea. Authenticate using your API Token and Service Plan ID.
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 SMS API for Equatorial Guinea
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
Cost considerations for high-volume sending:
- Equatorial Guinea SMS pricing ranges from $0.045–$0.18 per message depending on provider
- Providers typically offer volume discounts for >10,000 messages/month
- Providers typically don't charge for failed messages to invalid numbers or landlines
- Consider implementing message batching and queue management to optimize costs
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);
}Common error codes by provider:
| Error Type | Twilio Code | Sinch Code | Bird Code | Cause |
|---|---|---|---|---|
| Invalid Number | 21614 | 400 | INVALID_RECIPIENT | Landline or malformed number |
| Rate Limit | 20429 | 429 | RATE_LIMIT | Too many requests |
| Message Too Long | 21605 | 400 | MESSAGE_TOO_LONG | Exceeds 160/70 char limit |
| Delivery Failed | 30003-30006 | delivery_failed | DELIVERY_FAILED | Network/carrier issue |
| Invalid Sender ID | 21212 | 400 | INVALID_SENDER | Sender ID format violation |
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)
- Keep messages under 160 characters (no concatenation)
- 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:
- Ministry of Transport, Posts and Telecommunications – Regulatory oversight body
- ORTEL Telecommunications Regulatory Authority – Compliance and inspections authority
- Ministerial Order No. 3/2020 Overview – Regulatory framework
Provider Documentation:
- Twilio Equatorial Guinea Guidelines – Official SMS specifications
- Sinch API Documentation – Integration guides
- Bird SMS API Guide – Developer resources
Industry Resources:
- Mobile Ecosystem Forum Guidelines – Global SMS best practices
- GSMA Messaging Services Guidelines – Industry standards
- DataReportal Equatorial Guinea Digital Statistics – Market data and trends
Frequently Asked Questions
How to send SMS messages in Equatorial Guinea?
Use an SMS API provider like Twilio, Sinch, or Bird. Ensure correct number formatting (+240) and implement error handling and retry mechanisms for reliable delivery. Remember to comply with local regulations and best practices.
What is the SMS character limit in Equatorial Guinea?
Equatorial Guinea follows standard SMS limits: 160 characters for GSM-7 encoding and 70 characters for Unicode. Concatenated messages are not supported, so ensure your message fits within a single SMS.
Why does Equatorial Guinea not support two-way SMS?
While the reason isn't explicitly stated, the article indicates two-way SMS is not supported. Businesses can send outbound messages but cannot receive replies through the same SMS channel.
When should I send marketing SMS in Equatorial Guinea?
Send messages between 8:00 AM and 8:00 PM local time (WAT, UTC+1). Avoid sending on Sundays and religious holidays. Limit marketing messages to 2-4 per month per recipient.
Can I send SMS to landlines in Equatorial Guinea?
No, sending SMS to landline numbers in Equatorial Guinea is not possible. Attempts to do so will result in failed delivery, and you may receive an error response from your provider.
What are the SMS compliance requirements in Equatorial Guinea?
Obtain explicit consent before sending marketing messages, honor opt-out requests promptly, and respect local sending hours (8:00 AM - 8:00 PM WAT). Follow guidelines from the Ministry of Transport, Posts and Telecommunications.
What SMS sender types are available in Equatorial Guinea?
Alphanumeric sender IDs are supported and do not require pre-registration. Domestic long codes are supported but not widely available through providers. Short codes are not currently supported.
How to handle SMS opt-outs in Equatorial Guinea?
Process opt-out requests (STOP, BAJA, CANCELAR, ARRÊTER) within 24 hours. Maintain a centralized opt-out database and include opt-out instructions in every marketing message. Regularly audit your opt-out list compliance.
What are the best practices for SMS marketing in Equatorial Guinea?
Localize content in Spanish and French, maintain a consistent sender ID, keep messages under 160 characters, include clear calls-to-action, and personalize when appropriate. Test messages across all major carriers and monitor delivery rates.
What is the process for sending SMS with Twilio in Equatorial Guinea?
Initialize the Twilio client with your Account SID and Auth Token. Ensure proper number formatting with +240 prefix. Use the client's messages.create method to send SMS messages, specifying the recipient, message body, and sender ID.
What are the rate limits for SMS APIs in Equatorial Guinea?
Rate limits vary by provider: Twilio (100/second), Sinch (30/second), Bird (50/second). For large-scale sending, use strategies like exponential backoff, queue systems, and batching.
How to format phone numbers for SMS in Equatorial Guinea?
Use the international format with the +240 country code prefix followed by the subscriber number. Ensure all numbers include this prefix for accurate delivery.
What are the restricted content categories for SMS in Equatorial Guinea?
Gambling, adult content, unauthorized financial services, political messaging without authorization, and cryptocurrency schemes are restricted. Avoid using related keywords and URLs.
What are some common SMS API error codes for Equatorial Guinea?
Common errors include 'invalid_number' for incorrect formatting, 'rate_limit_exceeded' if sending too quickly, and 'delivery_failed' indicating issues with the recipient's network or device.
Where can I find more information on Equatorial Guinea SMS regulations?
Refer to official resources like the Ministry of Transport, Posts and Telecommunications (https://www.gq-transport.org) and the Telecommunications Regulatory Authority (https://www.ortel.gq) websites.