sms compliance

Sent logo
Sent TeamMar 8, 2026 / sms compliance / Article

Cyprus SMS Guide

Explore Cyprus SMS: compliance (GDPR, OECPR), features, & best practices. Learn about alphanumeric sender IDs, Unicode support for Greek, & handling 400 errors. Two-way SMS is unsupported. Includes Twilio, Sinch API integration details.

Cyprus SMS Best Practices, Compliance, and Features

Cyprus SMS Market Overview

Locale name:Cyprus
ISO code:CY
RegionEurope
Mobile country code (MCC)280
Dialing Code+357

Market Conditions: Cyprus has a mature mobile market with high smartphone penetration and widespread SMS usage. The market is served by major operators including CYTA (Cytamobile-Vodafone), epic (formerly MTN), and PrimeTel. While OTT messaging apps like WhatsApp and Viber are popular for personal communications, SMS remains crucial for business messaging due to its reliability and universal reach. The market shows a relatively even split between Android and iOS devices, with Android having a slight edge in market share.


Key SMS Features and Capabilities in Cyprus

Cyprus supports most standard SMS features including alphanumeric sender IDs and concatenated messages, though two-way SMS functionality is limited.

Two-way SMS Support

Two-way SMS is not supported in Cyprus through major SMS providers. This means businesses cannot receive replies to their messages through standard A2P SMS channels.

Concatenated Messages (Segmented SMS)

Support: Yes, concatenation is supported, though availability may vary by sender ID type.
Message length rules: Standard SMS length of 160 characters for GSM-7 encoding, 70 characters for Unicode (UCS-2).
Encoding considerations: Both GSM-7 and UCS-2 encodings are supported. Messages using Greek characters require UCS-2 encoding, reducing the character limit to 70 per segment.

MMS Support

MMS messages are not directly supported in Cyprus. 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.

Recipient Phone Number Compatibility

Number Portability

Number portability is available in Cyprus, allowing users to keep their phone numbers when switching carriers. This feature is fully supported and does not affect SMS delivery or routing.

Sending SMS to Landlines

Sending SMS to landline numbers is not supported in Cyprus. Attempts to send messages to landline numbers will result in delivery failure, typically with a 400 response error (code 21614). These messages will not appear in logs and accounts will not be charged.

Compliance and Regulatory Guidelines for SMS in Cyprus

Cyprus follows EU data protection regulations, including GDPR and the e-Privacy Directive. The Office of the Commissioner for Personal Data Protection (OCPDP) oversees data privacy compliance, while the Office of Electronic Communications and Postal Regulations (OCECPR) regulates telecommunications.

Explicit Consent Requirements:

  • Written or electronic consent must be obtained before sending marketing messages
  • Consent must be freely given, specific, and informed
  • Keep detailed records of when and how consent was obtained
  • Pre-checked boxes are not considered valid consent under GDPR

Best Practices for Consent Collection:

  • Use clear, unambiguous language when requesting consent
  • Specify the types of messages recipients will receive
  • Maintain timestamped records of all opt-ins
  • Provide clear information about how personal data will be used

HELP/STOP and Other Commands

  • All marketing messages must include opt-out instructions
  • Standard keywords like "STOP" must be supported in both English and Greek
  • Greek language keywords include "??????????????" (stop) and "??????????????" (help)
  • Opt-out mechanisms must be free of charge for recipients

Do Not Call / Do Not Disturb Registries

Cyprus does not maintain a centralized Do Not Call registry. However, businesses should:

  • Maintain their own suppression lists
  • Honor opt-out requests within 24 hours
  • Keep records of opted-out numbers for at least two years
  • Regularly clean contact lists to remove unsubscribed numbers

Time Zone Sensitivity

Cyprus follows Eastern European Time (EET/EEST). While there are no strict legal time restrictions for SMS sending, best practices include:

  • Limiting marketing messages to 9:00 AM - 8:00 PM local time
  • Avoiding messages during public holidays
  • Sending transactional messages at any time if urgent

Phone Numbers Options and SMS Sender Types for in Cyprus

Alphanumeric Sender ID

Operator network capability: Fully supported across all networks
Registration requirements: No pre-registration required; dynamic usage allowed
Sender ID preservation: Sender IDs are preserved and displayed as sent

Long Codes

Domestic vs. International:

  • Domestic long codes are not supported
  • International long codes are supported but sender ID is not preserved

Sender ID preservation: No, international long codes are typically replaced with generic alphanumeric IDs
Provisioning time: Immediate activation for international long codes
Use cases: Suitable for transactional messages and two-factor authentication

Short Codes

Support: Not currently supported in Cyprus
Provisioning time: N/A
Use cases: N/A

Restricted SMS Content, Industries, and Use Cases

Restricted Industries:

  • Gambling (requires special permits)
  • Adult content (prohibited)
  • Cryptocurrency (subject to financial regulations)
  • Financial services (must comply with CySEC regulations)

Content Filtering

Carrier Filtering Rules:

  • Messages containing certain keywords may be blocked
  • URLs should be from reputable domains
  • Excessive punctuation may trigger spam filters

Best Practices to Avoid Filtering:

  • Avoid URL shorteners
  • Use clear, professional language
  • Limit special characters and excessive capitalization
  • Include clear sender identification

Best Practices for Sending SMS in Cyprus

Messaging Strategy

  • Keep messages under 160 characters when possible
  • Include clear calls-to-action
  • Personalize messages using recipient's name or relevant details
  • Maintain consistent sender ID across campaigns

Sending Frequency and Timing

  • Limit marketing messages to 2-4 per month per recipient
  • Respect local holidays and cultural events
  • Schedule campaigns during business hours
  • Space out messages to avoid overwhelming recipients

Localization

  • Support both Greek and English languages
  • Use Greek for marketing messages to local audiences
  • Consider bilingual messages for tourist-focused businesses
  • Ensure proper character encoding for Greek text

Opt-Out Management

  • Process opt-outs within 24 hours
  • Maintain centralized opt-out database
  • Include clear opt-out instructions in every marketing message
  • Confirm opt-out requests with a final confirmation message

Testing and Monitoring

  • Test messages across all major Cyprus carriers
  • Monitor delivery rates by carrier
  • Track engagement metrics and opt-out rates
  • Regularly audit compliance with regulations

SMS API integrations for Cyprus

Twilio

Twilio provides a robust SMS API with comprehensive support for Cyprus. Integration requires an account SID and auth token for authentication.

Key Parameters:

  • from: Alphanumeric sender ID (up to 11 characters)
  • to: Recipient number in E.164 format (+357XXXXXXXX)
  • body: Message content (supports Unicode for Greek characters)
typescript
import * as Twilio from 'twilio';

// Initialize client with environment variables
const client = new Twilio(
  process.env.TWILIO_ACCOUNT_SID,
  process.env.TWILIO_AUTH_TOKEN
);

async function sendSMSToCyprus() {
  try {
    // Send message with error handling
    const message = await client.messages.create({
      body: 'Your message in English or Greek',
      from: 'YourBrand', // Alphanumeric sender ID
      to: '+35799XXXXXX' // Cyprus 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 in Cyprus with support for alphanumeric sender IDs.

Key Parameters:

  • sender: Your alphanumeric sender ID
  • recipient: Destination number in international format
  • message: SMS content with Unicode support
typescript
import { SinchClient } from '@sinch/sdk-core';

const client = new SinchClient({
  projectId: process.env.SINCH_PROJECT_ID,
  apiToken: process.env.SINCH_API_TOKEN
});

async function sendSinchSMS() {
  try {
    const response = await client.sms.batches.send({
      sendSMSRequestBody: {
        from: 'CompanyName',
        to: ['+35799XXXXXX'],
        body: 'Your message content',
        // Optional parameters for delivery reporting
        deliveryReport: 'summary'
      }
    });
    
    console.log('Message batch ID:', response.id);
    return response;
  } catch (error) {
    console.error('Sinch SMS error:', error);
    throw error;
  }
}

MessageBird

MessageBird (not "Bird") provides SMS services with high deliverability in Cyprus.

Key Parameters:

  • originator: Alphanumeric sender ID
  • recipients: Array of recipient numbers
  • content: Message content with Unicode support
typescript
import messagebird from 'messagebird';

const client = messagebird(process.env.MESSAGEBIRD_API_KEY);

function sendMessageBirdSMS(): Promise<any> {
  return new Promise((resolve, reject) => {
    client.messages.create({
      originator: 'YourBrand',
      recipients: ['+35799XXXXXX'],
      content: 'Your message here',
      type: 'unicode' // For Greek character support
    }, (err, response) => {
      if (err) {
        reject(err);
      } else {
        resolve(response);
      }
    });
  });
}

Plivo

Plivo offers reliable SMS delivery to Cyprus with support for alphanumeric sender IDs.

Key Parameters:

  • src: Sender ID
  • dst: Destination number
  • text: Message content
typescript
import plivo from 'plivo';

const client = new plivo.Client(
  process.env.PLIVO_AUTH_ID,
  process.env.PLIVO_AUTH_TOKEN
);

async function sendPlivoSMS() {
  try {
    const message = await client.messages.create({
      src: 'YourBrand',
      dst: '35799XXXXXX',
      text: 'Your message content',
      // Optional parameters
      url_strip_query: false,
      log_dlt_status: true
    });
    
    console.log('Message UUID:', message.messageUuid);
    return message;
  } catch (error) {
    console.error('Plivo error:', error);
    throw error;
  }
}

API Rate Limits and Throughput

  • Default rate limits vary by provider (typically 1-10 messages per second)
  • Implement exponential backoff for retry logic
  • Use batch APIs for high-volume sending
  • Consider implementing a queue system for large campaigns

Error Handling and Reporting

  • Log all API responses and message IDs
  • Implement webhook endpoints for delivery receipts
  • Monitor delivery rates and failure patterns
  • Set up alerts for unusual error rates
  • Store message metadata for troubleshooting

Recap and Additional Resources

Key Takeaways:

  • Always use alphanumeric sender IDs for best deliverability
  • Implement proper error handling and monitoring
  • Follow GDPR compliance requirements
  • Support both Greek and English content
  • Process opt-outs immediately

Next Steps:

  1. Review the Cyprus Office of Electronic Communications and Postal Regulations (OCECPR) guidelines
  2. Implement proper consent management systems
  3. Set up monitoring and reporting infrastructure
  4. Test message delivery across all major carriers

Additional Information: