eSMS AfricaeSMS Africa
SMS Platform

Global Coverage

Send SMS to Africa and the rest of the world - regions, availability, number formatting and per-region compliance notes.

eSMS Africa sells SMS worldwide. Most African countries are live (a few are still on request - see live coverage), and the rest of the world is grouped into six more regions. You use the same API, the same API key and the same wallet for every destination.

Regions

Regionregion valueNotes
AfricaafricaThe 54 African countries plus Mayotte, Reunion and Saint Helena. Most are available; check the live endpoint for the current list.
EuropeeuropeEU, UK and the rest of Europe.
AsiaasiaSouth, South-East and East Asia.
Middle Eastmiddle-eastGulf states and the wider Middle East.
North Americanorth-americaUnited States, Canada and the Caribbean NANP countries.
Latin America & Caribbeanlatin-americaMexico, Central and South America, the Caribbean.
OceaniaoceaniaAustralia, New Zealand and the Pacific islands.

How availability works

Every country has one of two statuses:

  • available - priced and active. You can send to it right now.
  • on_request - the country is in our catalogue but not yet enabled. Sends to it are rejected with destination_unavailable and you are not charged.

Most international (non-African) countries start as on_request. To enable one, email [email protected] with the countries, your expected monthly volume and your use case (OTP, alerts, marketing). Once the sales team sets a price and activates the country it switches to available and you can send straight away - no code change needed.

Live coverage and prices

Query live status and prices from the public coverage endpoint. It needs no authentication, so you can call it from a pricing page or a sign-up form.

curl https://sms.esmsafrica.io/api/pricing/coverage
{
  "total": 240,
  "available": 62,
  "regions": {
    "africa": "Africa",
    "europe": "Europe",
    "middle-east": "Middle East",
    "asia": "Asia",
    "north-america": "North America",
    "latin-america": "Latin America & Caribbean",
    "oceania": "Oceania"
  },
  "countries": [
    {
      "code": "FR",
      "name": "France",
      "region": "europe",
      "dial_code": "33",
      "status": "available",
      "price_usd": 0.065
    },
    {
      "code": "JP",
      "name": "Japan",
      "region": "asia",
      "dial_code": "81",
      "status": "on_request",
      "price_usd": null
    }
  ]
}
FieldDescription
totalNumber of countries in the catalogue.
availableNumber of countries you can send to right now.
regionsMap of region value to display name.
countries[].codeISO 3166-1 alpha-2 country code.
countries[].nameCountry name.
countries[].regionOne of the region values above.
countries[].dial_codeCountry calling code without the + (NANP countries share 1; see below).
countries[].statusavailable or on_request.
countries[].price_usdStarting price per SMS segment in USD, or null when the country is on request.

The values in the sample above are illustrative - always read the live endpoint. For the exact price of a specific message (segments, encoding and the rate for each recipient's country) call POST /api/messages/rate with your API key. It never sends or charges.

Number formatting (E.164)

International numbers must be in E.164 format:

  • a +, then the country code, then the national number
  • no trunk prefix (drop the leading 0 used for national dialling)
  • no spaces, dashes, dots or brackets
CountryNational formatE.164 (send this)
United Kingdom07700 900123+447700900123
United States(415) 555-0123+14155550123
India098123 45678+919812345678
Kenya0712 345678+254712345678

Numbers without a country code are rejected - the platform does not guess a default country for international traffic.

NANP (+1) countries

The United States, Canada and many Caribbean countries share the +1 country code (the North American Numbering Plan). They are told apart by the three-digit area code that follows, so always send the full number:

  • +1876... is Jamaica, +1868... is Trinidad and Tobago, +1246... is Barbados
  • +1 followed by a US or Canadian area code (e.g. +1415..., +1416...) is the United States or Canada

Each NANP country is priced and enabled separately, even though they share +1.

Compliance by region

Every country has its own rules for sender IDs and content. The notes below are a starting point, not legal advice - rules change, and a country may require more than is listed here. Contact [email protected] before launching a campaign in a new country. All traffic must also follow our Acceptable Use Policy.

North America (US and Canada)

  • No alphanumeric sender IDs. Messages are sent from a phone number (10DLC long code, toll-free number or short code), not a brand name.
  • US A2P 10DLC: application-to-person traffic over standard long codes requires brand and campaign registration before sending.
  • Toll-free numbers require toll-free verification before they can carry traffic at volume.
  • Consent (opt-in) is expected for all messages, and STOP / HELP keywords must be honoured.

India

  • DLT registration with an Indian operator platform is required: your business (entity), each sender ID (header) and each message template must be registered.
  • Messages that do not match a registered template may be blocked by the networks.
  • Promotional and transactional traffic are treated differently and may be limited to certain hours.

Middle East (UAE, Saudi Arabia and others)

  • UAE: sender IDs may require registration with the regulator (TDRA) before use.
  • Saudi Arabia: sender IDs may require registration with the regulator (CST) before use.
  • Promotional messages may need to be marked as such (for example with an AD prefix) and may be limited to certain hours.
  • Other countries in the region may also require pre-registered sender IDs.

Europe (EU and UK)

  • GDPR: you need a lawful basis (usually explicit consent) to message a person, and you must offer a simple way to opt out.
  • Marketing messages should identify the sender and include opt-out instructions.
  • Some countries restrict alphanumeric sender IDs or require them to be pre-registered; others may replace an unregistered sender with a generic one.

Asia

  • China: message templates and a company signature must be registered before sending; unregistered content is likely to be blocked.
  • Other Asian countries may require sender ID or template registration and may filter promotional content.

Latin America and the Caribbean

  • Many countries replace alphanumeric sender IDs with a numeric sender, so do not rely on your brand name appearing as the sender.
  • Some countries restrict promotional traffic or require consent records.

Oceania

  • Consent and an easy opt-out are expected for marketing messages.
  • Some countries may require alphanumeric sender IDs to be registered.

On this page