Market Conditions: Cambodia has a growing mobile market with several major operators including Smart Axiata, Metfone, and Cellcard. SMS remains an important communication channel, particularly for business messaging and notifications, though OTT apps like LINE and Facebook Messenger are increasingly popular. The market shows strong Android dominance, with iOS having a relatively small market share. A2P (Application-to-Person) SMS services face some challenges with gray routes, which account for approximately 39% of SMS traffic.
Key SMS Features and Capabilities in Cambodia
Cambodia supports basic SMS functionality with some limitations on two-way messaging and specific requirements for sender ID registration, particularly for messages sent to Smart Axiata networks.
Two-way SMS Support
Two-way SMS is not supported in Cambodia through major SMS providers. This means businesses cannot receive replies to their messages through standard SMS channels.
Concatenated Messages (Segmented SMS)
Support: Yes, concatenated messages are supported in Cambodia, though support may vary by sender ID type. Message length rules: Standard SMS length limits apply, with messages being split according to encoding type. Encoding considerations: Both GSM-7 and UCS-2 encoding are supported, with UCS-2 being particularly important for local Khmer language support.
MMS Support
MMS messages are not directly supported in Cambodia. 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 rich media sharing capabilities.
Recipient Phone Number Compatibility
Number Portability
Number portability is not available in Cambodia. This means mobile numbers remain tied to their original carrier, which can simplify message routing but limits consumer flexibility.
Sending SMS to Landlines
Sending SMS to landline numbers is not possible in Cambodia. Attempts to send messages to landline numbers will result in a failed delivery and typically generate a 400 response error (error code 21614) through SMS APIs. These messages will not appear in logs and accounts will not be charged for failed attempts.
Compliance and Regulatory Guidelines for SMS in Cambodia
Cambodia's SMS regulations are primarily overseen by the Telecommunication Regulator of Cambodia (TRC). While specific SMS marketing laws are still evolving, businesses must adhere to general telecommunications guidelines and carrier-specific requirements.
Consent and Opt-In
Explicit Consent Required: You must obtain and document explicit opt-in consent before sending marketing or promotional messages. Best practices include:
Maintaining clear records of how and when consent was obtained
Using double opt-in processes for marketing campaigns
Providing clear terms and conditions at the point of opt-in
Specifying the types of messages users will receive
HELP/STOP and Other Commands
While Cambodia doesn't have strict HELP/STOP requirements, implementing these features is considered best practice:
Support both English and Khmer language keywords
Common commands should include: STOP, CANCEL, END, HELP
Process opt-out requests within 24 hours
Send confirmation messages in the user's preferred language
Do Not Call / Do Not Disturb Registries
Cambodia does not maintain an official Do Not Call registry. However, businesses should:
Maintain their own suppression lists
Honor opt-out requests immediately
Document all opt-out requests for compliance purposes
Regularly clean contact lists to remove unsubscribed numbers
Time Zone Sensitivity
Cambodia follows ICT (UTC+7) time zone. While there are no strict time restrictions, recommended practices include:
Sending messages between 8:00 AM and 8:00 PM ICT
Avoiding messages during religious holidays and festivals
Limiting late-night messages to urgent communications only
Phone Numbers Options and SMS Sender Types for in Cambodia
Alphanumeric Sender ID
Operator network capability: Fully supported across major networks Registration requirements: Pre-registration required for Smart Axiata (effective August 1, 2023); Dynamic usage supported for other carriers Sender ID preservation: Preserved for Smart Axiata when registered; May be overwritten by Metfone with generic sender ID Provisioning time: 14 business days for registration
Long Codes
Domestic vs. International:
Domestic long codes not supported
International long codes supported (except for Smart Axiata) Sender ID preservation: No, typically overwritten with generic sender ID Provisioning time: Immediate for international long codes Use cases: Transactional messaging, alerts, notifications
Short Codes
Support: Not currently supported in Cambodia Provisioning time: N/A Use cases: N/A
Restricted SMS Content, Industries, and Use Cases
The following content types are restricted:
Political content
Religious messaging
Adult content
Gambling-related content
Spam or unsolicited promotional content
Content Filtering
Known carrier filters:
Messages containing restricted keywords
High-volume sending from unregistered sender IDs
Messages with suspicious URLs
Best practices to avoid filtering:
Use registered sender IDs
Avoid URL shorteners
Maintain consistent sending patterns
Use clear, professional language
Best Practices for Sending SMS in Cambodia
Messaging Strategy
Keep messages under 160 characters when possible
Include clear call-to-actions
Personalize messages using recipient's name or relevant details
Maintain consistent branding across messages
Sending Frequency and Timing
Limit to 2-3 messages per week per recipient
Respect Cambodian holidays and festivals
Schedule campaigns during business hours
Space out bulk sends to avoid network congestion
Localization
Support both Khmer and English languages
Use proper character encoding for Khmer script
Consider cultural context in message content
Provide language preference options
Opt-Out Management
Process opt-outs within 24 hours
Send opt-out confirmation messages
Maintain updated suppression lists
Regular audit of opt-out processes
Testing and Monitoring
Test messages across all major carriers
Monitor delivery rates by carrier
Track engagement metrics
Regular testing of opt-out functionality
SMS API integrations for Cambodia
Twilio
Twilio provides a robust SMS API with comprehensive support for Cambodia. Integration requires an account SID and auth token for authentication.
Key Parameters:
from: Registered alphanumeric sender ID or phone number
to: Recipient number in E.164 format (+855)
body: Message content (supports Unicode for Khmer)
Use an SMS API like Twilio, Sinch, or MessageBird, ensuring correct parameters such as recipient number in E.164 format (+855) and a registered alphanumeric sender ID. Remember to handle Unicode for Khmer language support and implement error handling for reliable delivery.
Cambodia's mobile market is growing, with SMS remaining important for business communication despite rising OTT app usage. Key operators include Smart Axiata, Metfone, and Cellcard, with Android dominating the device market. Gray routes pose a challenge, impacting about 39% of SMS traffic.
Two-way SMS is not supported through major providers in Cambodia, meaning businesses cannot receive replies via standard SMS channels. Alternative communication methods like OTT apps may be more suitable for interactive messaging.
Adhere to best practices by sending messages between 8:00 AM and 8:00 PM ICT, avoiding religious holidays and festivals, and limiting late-night messages to urgent communications. Respect recipient preferences and limit marketing messages to 2-3 per week.
No, short codes are not currently supported in Cambodia. Alternatives include alphanumeric sender IDs and international long codes (except for Smart Axiata), each with its own registration and usage requirements.
Alphanumeric sender IDs are supported but require pre-registration with Smart Axiata as of August 1, 2023. Other carriers support dynamic usage. Sender ID preservation varies; Smart Axiata preserves registered IDs, while Metfone may overwrite them.
Obtain explicit opt-in consent before sending marketing messages, including clear terms and conditions. Document consent and consider double opt-in processes. Although not mandatory, offering HELP/STOP commands is best practice.
Concatenated messages are supported, allowing longer messages to be split and delivered. Standard length limits apply based on encoding (GSM-7 or UCS-2). UCS-2 is essential for Khmer language support.
MMS is not directly supported. Instead, MMS content converts to SMS with a URL link to the multimedia content. This approach maintains compatibility while allowing rich media sharing.
Restricted content includes political, religious, adult, gambling-related, and spam/unsolicited promotional material. Content filtering exists, so use registered sender IDs, avoid URL shorteners, and use professional language.
Process opt-out requests within 24 hours and send confirmation messages. Maintain updated suppression lists and regularly audit these processes to ensure compliance and best practices.
Prioritize compliance by registering sender IDs, managing opt-outs, and adhering to time zone best practices. Technically, use E.164 formatting, Unicode for Khmer, and proper error handling. Test across carriers, monitor delivery rates, and maintain clean contact lists.
Essential parameters include 'from' (registered sender ID), 'to' (recipient in E.164 format), and 'body' (message content). Other parameters like status callbacks and delivery reports enhance tracking and reliability.
Manage throughput by implementing strategies like exponential backoff for retries, using batch APIs for bulk sends, queueing messages during peak times, and monitoring delivery rates by carrier.
Refer to resources like the Telecommunication Regulator of Cambodia (TRC) website, Smart Axiata Business Solutions, and the GSMA guidelines for detailed information and updates on regulations and best practices.
Cambodia SMS Market Overview
Market Conditions: Cambodia has a growing mobile market with several major operators including Smart Axiata, Metfone, and Cellcard. SMS remains an important communication channel, particularly for business messaging and notifications, though OTT apps like LINE and Facebook Messenger are increasingly popular. The market shows strong Android dominance, with iOS having a relatively small market share. A2P (Application-to-Person) SMS services face some challenges with gray routes, which account for approximately 39% of SMS traffic.
Key SMS Features and Capabilities in Cambodia
Cambodia supports basic SMS functionality with some limitations on two-way messaging and specific requirements for sender ID registration, particularly for messages sent to Smart Axiata networks.
Two-way SMS Support
Two-way SMS is not supported in Cambodia through major SMS providers. This means businesses cannot receive replies to their messages through standard SMS channels.
Concatenated Messages (Segmented SMS)
Support: Yes, concatenated messages are supported in Cambodia, though support may vary by sender ID type.
Message length rules: Standard SMS length limits apply, with messages being split according to encoding type.
Encoding considerations: Both GSM-7 and UCS-2 encoding are supported, with UCS-2 being particularly important for local Khmer language support.
MMS Support
MMS messages are not directly supported in Cambodia. 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 rich media sharing capabilities.
Recipient Phone Number Compatibility
Number Portability
Number portability is not available in Cambodia. This means mobile numbers remain tied to their original carrier, which can simplify message routing but limits consumer flexibility.
Sending SMS to Landlines
Sending SMS to landline numbers is not possible in Cambodia. Attempts to send messages to landline numbers will result in a failed delivery and typically generate a 400 response error (error code 21614) through SMS APIs. These messages will not appear in logs and accounts will not be charged for failed attempts.
Compliance and Regulatory Guidelines for SMS in Cambodia
Cambodia's SMS regulations are primarily overseen by the Telecommunication Regulator of Cambodia (TRC). While specific SMS marketing laws are still evolving, businesses must adhere to general telecommunications guidelines and carrier-specific requirements.
Consent and Opt-In
Explicit Consent Required: You must obtain and document explicit opt-in consent before sending marketing or promotional messages. Best practices include:
HELP/STOP and Other Commands
While Cambodia doesn't have strict HELP/STOP requirements, implementing these features is considered best practice:
Do Not Call / Do Not Disturb Registries
Cambodia does not maintain an official Do Not Call registry. However, businesses should:
Time Zone Sensitivity
Cambodia follows ICT (UTC+7) time zone. While there are no strict time restrictions, recommended practices include:
Phone Numbers Options and SMS Sender Types for in Cambodia
Alphanumeric Sender ID
Operator network capability: Fully supported across major networks
Registration requirements: Pre-registration required for Smart Axiata (effective August 1, 2023); Dynamic usage supported for other carriers
Sender ID preservation: Preserved for Smart Axiata when registered; May be overwritten by Metfone with generic sender ID
Provisioning time: 14 business days for registration
Long Codes
Domestic vs. International:
Sender ID preservation: No, typically overwritten with generic sender ID
Provisioning time: Immediate for international long codes
Use cases: Transactional messaging, alerts, notifications
Short Codes
Support: Not currently supported in Cambodia
Provisioning time: N/A
Use cases: N/A
Restricted SMS Content, Industries, and Use Cases
The following content types are restricted:
Content Filtering
Known carrier filters:
Best practices to avoid filtering:
Best Practices for Sending SMS in Cambodia
Messaging Strategy
Sending Frequency and Timing
Localization
Opt-Out Management
Testing and Monitoring
SMS API integrations for Cambodia
Twilio
Twilio provides a robust SMS API with comprehensive support for Cambodia. Integration requires an account SID and auth token for authentication.
Key Parameters:
from: Registered alphanumeric sender ID or phone numberto: Recipient number in E.164 format (+855)body: Message content (supports Unicode for Khmer)import { Twilio } from 'twilio'; // Initialize client with environment variables const client = new Twilio( process.env.TWILIO_ACCOUNT_SID, process.env.TWILIO_AUTH_TOKEN ); async function sendSMSCambodia( to: string, message: string, senderId: string ): Promise<void> { try { // Send message with error handling const response = await client.messages.create({ from: senderId, // Registered alphanumeric sender ID to: to, // Format: +85512345678 body: message, // Optional parameters for delivery tracking statusCallback: 'https://your-callback-url.com/status' }); console.log(`Message sent successfully: ${response.sid}`); } catch (error) { console.error('Error sending message:', error); throw error; } }Sinch
Sinch offers direct carrier connections in Cambodia with support for both text and binary messages.
Key Parameters:
from: Registered sender IDto: Array of recipient numbersbody: Message contentdelivery_report: Delivery status trackingimport axios from 'axios'; interface SinchMessage { from: string; to: string[]; body: string; delivery_report: string; } async function sendSinchSMS( apiToken: string, message: SinchMessage ): Promise<void> { const baseUrl = 'https://sms.api.sinch.com/xms/v1'; const servicePlanId = process.env.SINCH_SERVICE_PLAN_ID; try { const response = await axios.post( `${baseUrl}/${servicePlanId}/batches`, message, { headers: { 'Authorization': `Bearer ${apiToken}`, 'Content-Type': 'application/json' } } ); console.log('Batch ID:', response.data.id); } catch (error) { console.error('Sinch SMS Error:', error); throw error; } }MessageBird
MessageBird provides reliable SMS delivery in Cambodia with support for Unicode messages.
Key Parameters:
originator: Sender ID (alphanumeric or number)recipients: Array of recipient numberscontent: Message content and typeimport messagebird from 'messagebird'; class MessageBirdService { private client: any; constructor(apiKey: string) { this.client = messagebird(apiKey); } async sendSMS( originator: string, recipient: string, message: string ): Promise<void> { return new Promise((resolve, reject) => { this.client.messages.create({ originator, recipients: [recipient], body: message, type: 'sms' }, (err: any, response: any) => { if (err) { reject(err); return; } resolve(response); }); }); } }API Rate Limits and Throughput
Throughput Management Strategies:
Error Handling and Reporting
interface SMSError { code: string; message: string; timestamp: Date; recipient: string; } class SMSErrorHandler { private errors: SMSError[] = []; logError(error: SMSError): void { this.errors.push(error); // Implement your logging logic console.error(`SMS Error [${error.code}]: ${error.message}`); } async retryFailedMessages(): Promise<void> { // Implement retry logic with exponential backoff const retryDelay = (attempt: number) => Math.pow(2, attempt) * 1000; // Retry implementation } }Recap and Additional Resources
Key Takeaways
Compliance Priorities
Technical Requirements
Best Practices
Next Steps
Additional Resources
Industry Guidelines: