Senegal (+221) OTPs: choosing the right OTP Route product first

Calling code +221OTP Gateway from $0.20 per codeDedicated numbers: US & Canada onlyAPI id: sn
Quick answer

You can receive Senegal (+221) SMS verification codes with OTP Route by ordering a one-time number for country sn in the OTP Gateway, from the dashboard or through the API with webhooks. Pricing starts at $0.20 per code, refunded in full if no SMS arrives within 20 minutes.

OTP Gateway or a Dedicated Number: which one fits Senegal?

Before writing any code, settle what you actually need, because the two products solve different problems.

  • One code, then done. A sign-up test, a QA check of a login screen or verifying a business profile once: that is the OTP Gateway. You get a +221 number for a single verification and it lapses after the activation.
  • A number that keeps working. A staging account that must log in again next month, or a shared team login that needs recovery: that calls for a Dedicated Number. Those are sold instantly only in the United States and Canada, from $1.95/month.

For Senegal there is no self-serve long-term number. If a lasting +221 line matters to you, email [email protected]; what is possible depends on local rules. The temporary vs dedicated numbers guide goes deeper on the trade-off.

What does the OTP Gateway cover for +221?

Senegal currently lists more than 1,600 services. Popular ones include WhatsApp, Facebook, Instagram, TikTok, Telegram, Google (Gmail & YouTube), ChatGPT (OpenAI), Claude, Microsoft & Outlook, Amazon, Netflix, Snapchat, Viber and imo.

That is a snapshot from the live catalogue. Which pairings can be ordered changes throughout the day, so check availability in the dashboard or through the API before each run.

How does the Senegal OTP API flow work with country `sn`?

Authenticate against https://otproute.com/api/v1 with a Bearer key beginning or_live_ (up to 10 keys per account, 300 requests per minute). Then:

  1. Confirm the identifiers via GET /api/v1/countries and GET /api/v1/services; Senegal is sn.
  2. Read the current price with GET /api/v1/prices?country=sn&service=facebook.
  3. Order through POST /api/v1/activations with {"service": "facebook", "country": "sn"} and keep the activation id.
  4. Receive the code by polling GET /api/v1/activations/{id}, or by a webhook event activation.sms_received.
  5. Should a Senegal test be abandoned midway, release the number via POST /api/v1/activations/{id}/cancel.

For webhooks, verify the X-OTPRoute-Signature header: compute HMAC-SHA256 of "<t>.<raw body>" with the endpoint secret, compare it to v1, and refuse old timestamps. Handle activation.expired and activation.cancelled too, and process each activation id only once. Running this inside a pipeline is covered in SMS OTP testing in CI pipelines.

What is particular about Senegalese numbers and SMS?

Senegal's country code is +221 and the numbering plan has no trunk prefix: a nine-digit national number is dialled in full, and mobile numbers start with 7. The E.164 form is simply +221 plus those nine digits, so normalisation mostly means removing spaces, dots and a 00 international prefix.

French is the official language and Wolof is very widely spoken. Most international apps send their codes in French or English depending on the account's language, so test your parsing with French message text, including accented characters around the digits.

Companies test in Senegal when they open in francophone West Africa, localise flows for French-speaking users, or serve customers who split their lives between Dakar and Europe. Teams covering the region often run the same checks for Côte d'Ivoire as well.

Can I receive a Senegal SMS OTP without using the API?

Yes. Sign up with an email address and a six-digit code, or with Google, and turn on TOTP two-factor if you like. Add funds, open the OTP Gateway, pick Senegal and the service, review the price and order. Copy the +221 number into the app; the code appears in your dashboard when the SMS arrives.

The activation stays live for 20 minutes. You only pay when a code is delivered; if the window closes with nothing, or you cancel, the full amount returns to the wallet.

When a +221 code is late or missing

Timing varies by service and route, so patience comes first. If the activation expires without a message:

  • Wait a while and order again, or switch to another service route for the same flow if your product offers one.
  • Check that the service accepts virtual numbers; some decline them, and the refund covers that outcome.
  • Let each window run to the end rather than cancelling and re-ordering in quick succession.
  • In automated suites, back off between attempts instead of hammering the endpoint.

Use numbers only for products and accounts you legitimately run, respect every service's terms, and keep within OTP Route's Acceptable Use Policy.

Wallet, invoices and a sandbox for integration tests

Billing runs from a single prepaid USD wallet: pay as you go, no monthly fee, no plan. Funding works by card or with USDT/USDC stablecoins, and each top-up triggers an emailed PDF invoice for your accounts team. When you are still wiring things up, request sandbox mode for a development account; it returns simulated numbers and codes so you can test the full path without touching your balance. Rates are listed on the pricing page.

Frequently asked questions

Which country id do I send for Senegal?

Send sn, for example in POST /api/v1/activations with {"service": "whatsapp", "country": "sn"}.

Is there a trunk prefix to remove from Senegal numbers?

No. Senegal has no trunk prefix, so the E.164 format is +221 followed by the nine-digit national number.

Can I check my app's French-language OTP messages for Senegal?

Yes. Set the test account to French, order a +221 number for your service, and confirm your parser reads the code from the French message.

Can I get a +221 number for testing that stays mine?

Not as a self-serve product. Long-term Dedicated Numbers exist only for the US and Canada; email [email protected] to ask about Senegal.

What happens to my money if a Senegal code never comes?

It goes back to your wallet automatically once the 20-minute window closes without an SMS, or immediately if you cancel.

Does OTP Route charge a subscription for Senegal access?

No. There is no monthly fee or plan; you pay per delivered code from a prepaid wallet.

Service names are trademarks of their respective owners. OTP Route is not affiliated with them. Use numbers lawfully, follow each service's terms and our Acceptable Use Policy.

Route your first OTP in minutes

Create a free account, top up your USD wallet and order a number from the dashboard or the API. No monthly fee.