Everything worth knowing, nothing that isn't.
How it works end-to-end
Your app calls our /verify/start with a phone number and method=flashcall. We dial the number from a single-use MSISDN whose last digits encode the OTP. The Android CALL_LOG permission lets your app read the incoming caller-ID; it strips the last 4-6 digits, hashes them, and POSTs to /verify/check. If the hash matches, the user is verified. End-to-end: 3-5 seconds. Cost: 30-60% of SMS OTP.
Why operators love it
Flash Call doesn't touch the SMSC, doesn't consume a billable SMS event, and doesn't burn an A2P trunk. It is a single CAMEL/SIP call setup that gets cancelled before connect — most operators treat it as an unanswered call (free or near-free). For high-volume OTP services in markets where SMS A2P pricing is punishing (India, Indonesia, Brazil), Flash Call drops verification cost dramatically.
Where it doesn't work
iOS apps cannot read incoming caller-ID programmatically. Flash Call is Android-only (and only via the user granting CALL_LOG, which Google has been increasingly restrictive about — Android 11+ requires the app to be the default Caller ID app or use SMS_RETRIEVER as a fallback). Always pair Flash Call with an SMS-OTP fallback. BroadNet's /products/myotp service auto-falls-back from Flash Call → SMS OTP → WhatsApp OTP → Voice OTP in a single API call.
Regulatory state
GSMA published RCC.20 guidelines for Flash Call in 2022, treating it as a legitimate verification technique. Some operators (parts of India, the UAE) have started classifying it as A2P and applying A2P pricing; others (most of MENA, EU) still treat it as a voice event. Pricing varies accordingly. We track per-country classification and price accordingly.