English
Testing +243 sign-ups in the DRC without a SIM in Kinshasa
Yes, you can receive Congo (DRC) +243 verification codes with OTP Route: order a one-time number from the OTP Gateway, then read the code in the dashboard or collect it through the REST API and signed webhooks. Pricing begins at $0.20 per code, and a DRC order that receives nothing during its 20-minute window costs you nothing.
Your team is adding the DRC, but nobody holds a +243 SIM. Now what?
It is a common position for product and QA teams: the roadmap says the Democratic Republic of the Congo, the release candidate is ready, and the people who must sign off on the phone-verification step sit in another country. Shipping physical SIM cards to a test lab, keeping them topped up and passing handsets around the office is slow, and it ties every test to whoever has the phone that day.
The OTP Gateway removes that bottleneck. You ask for a +243 number for one specific service, use it once on your own sign-up or login screen, and the code lands where your tooling can read it. That makes a Congo (DRC) verification number something a test script can request on demand, the same way it requests any other fixture.
Typical reasons teams run this check:
- confirming that a French-language onboarding screen accepts and formats Congolese numbers correctly;
- regression-testing a mobile app before a regional release in Central Africa;
- letting an operations team verify a company-owned business account without exposing a staff member's personal phone.
Which services can a +243 number verify right now?
Coverage for the DRC currently spans more than 1,000 services. Popular ones in the live snapshot include WhatsApp, Telegram, Facebook, Instagram, TikTok, imo, Viber, Signal, Google (Gmail & YouTube), Microsoft & Outlook, Uber, Amazon and ChatGPT (OpenAI).
Messaging apps such as imo, Viber and WhatsApp are worth singling out, because many products in the region hand off support or notifications to them and QA often needs an account on the same number range as real users.
Inventory moves throughout the day, so treat any list as a starting point. The authoritative view is the live one: GET /api/v1/countries and GET /api/v1/prices return what can be ordered at this moment, and the dashboard shows the same data before you pay. The full catalog sits under all countries.
How does the Congo (DRC) OTP API fit into a test run?
Everything happens against https://otproute.com/api/v1 with a Bearer key prefixed or_live_, created in the Developer console. An account can hold up to 10 keys and 5 webhook endpoints, and the limit is 300 requests per minute.
- Look up prices with
GET /api/v1/prices?country=cd&service=whatsapp(swap in the service you test). The DRC's country id iscd. - Place the order with
POST /api/v1/activationsand a JSON body such as{"service": "whatsapp", "country": "cd"}. You get back an activation id and the +243 number. - Type that number into your app's verification step.
- Wait for
activation.sms_receivedon your webhook, or pollGET /api/v1/activations/{id}every few seconds. - Release unused orders with
POST /api/v1/activations/{id}/cancel.
Webhook calls carry X-OTPRoute-Signature: t=<unix>,v1=<hex>. Recompute HMAC-SHA256 over "<t>.<raw body>" with the endpoint secret, compare in constant time and drop stale timestamps. The webhook capture guide and the API reference cover the details of this SMS verification API.
How should +243 numbers be stored, and what language will the SMS be in?
Congolese numbers are written locally with a trunk prefix 0 followed by nine digits. In international form the zero disappears: +243 and then those nine digits. Store the E.164 version, strip spaces and the leading zero on input, and test that your form accepts both the local and the international spelling, since users type whichever they saw last.
French is the official language, and Lingala, Swahili, Kikongo and Tshiluba are the national languages. Verification texts from global services generally arrive in French or English depending on the app and the account settings. Do not parse on the surrounding wording; pull the digit group out of the body so the same parser works whatever language the template uses.
For a localization pass, it helps to capture the full SMS text alongside the extracted code. That gives translators and QA a record of what a Congolese user actually reads.
What if the verification code never shows up?
Each order stays open for 20 minutes. You only pay if the code arrives; if the window closes without an SMS, or you cancel, the full amount returns to the wallet automatically. So a silent number costs time, not money.
When that happens:
- let the window run before deciding it failed, because some services send late;
- retry later, or try another service route, since availability changes by the hour;
- check whether the service accepts virtual numbers at all, because some refuse them;
- do not reorder in a tight loop, which burns the rate limit without improving the outcome.
The post on reducing failed OTP deliveries goes further into retry design for OTP routing.
Is there a long-term +243 line for accounts we keep?
No. OTP Route does not offer a self-serve long-term number in the DRC. Gateway numbers are built for one code each, which suits sign-up tests but not an account that must log in again in six months.
Dedicated Numbers, which you keep while they renew, are a United States and Canada product from $1.95/month. If your team needs a lasting Congolese line, email [email protected] and describe the use; availability depends on local rules and cannot be promised.
How is billing handled for DRC test traffic?
There is one prepaid USD wallet, with no monthly fee and no plan to choose. Top up by card or with USDT/USDC, and every top-up arrives with a PDF invoice by email, which keeps QA spend easy to reconcile. See pricing for how the live price is shown before each order.
For integration work, a development account can be switched to sandbox on request; it returns simulated numbers and codes so a pipeline can be exercised end to end without spending wallet funds.
Use these numbers only on your own products and accounts, follow each service's terms, and remember that OTP Route's Acceptable Use Policy applies to every order.
Frequently asked questions
Can I test my app's DRC sign-up flow without a local SIM?
Yes. Order a +243 number from the OTP Gateway for the service you are testing, enter it in your app, and read the code in the dashboard or through the API.
What country id does the API use for the Democratic Republic of the Congo?
Use cd in both the prices query and the activation body, for example {"service": "telegram", "country": "cd"}.
Am I charged if a +243 code never arrives?
No. A +243 order that stays silent for 20 minutes, or that you cancel early, is refunded to the wallet in full without a ticket.
Should I save Congolese numbers with the leading zero?
Store them in E.164 form, which is +243 followed by nine digits with the trunk zero removed. Keep the local format only for display if your users expect it.
Can my staff use the same +243 number to log in again next month?
Not reliably, because gateway numbers are for a single code. Long-term dedicated lines are self-serve only in the US and Canada; for the DRC you can email [email protected] to ask.
Is there a way to run CI against the API without spending money?
Yes. Ask for your development account to be switched to sandbox, and it will return simulated numbers and codes.
Why did a service reject the +243 number I ordered?
Some services refuse virtual numbers or limit certain ranges. Cancel or let the window expire for a refund, then try later or test a different service route.
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.