When Meta verifies a WhatsApp number by voice, it calls that number and reads a 6-digit code. Edesy points your virtual number's incoming calls at a short-lived forwarding rule, so Meta's call rings the phone you choose. You hear the code, type it in the wizard, and Edesy restores the number's normal call routing.
Facts#
| Item | Detail |
|---|---|
| Used in | Embedded Signup (Connect with Facebook) and the manual path (Bring Your Own WABA) |
| Forwarding window | 20 minutes during Embedded Signup; 10 minutes from the code request on the manual path |
| Cost | Billed like normal call forwarding; the setup checklist checks your wallet covers one forwarded call |
| Method | Meta voice call (VOICE), not SMS |
| Who rings | The phone you enter as Your Phone Number |
| Caller ID you see | Your Edesy virtual number |
| Code | 6 digits |
| Session lifetime (manual path) | 10 minutes from the code request |
| Attempts | Up to 3 per session |
| Your normal inbound routing | Restored after the number is verified, the session is cancelled, or setup fails |
| Works with | Mobile, landline-style and other virtual numbers on your Edesy account |
How it works#
With Embedded Signup, you enter your phone number before opening Meta's window, and calls to the Edesy number ring that phone for 20 minutes. In Meta's window choose Phone call, answer, and enter the code there. See Embedded Signup.
On the manual path:
- You click Request Verification Code. Edesy creates a verification session and points the number's incoming calls at the forwarding rule.
- Edesy asks Meta for a voice code. Meta calls your Edesy number.
- The call is forwarded to your phone, showing your virtual number as the caller.
- You answer and listen for the 6-digit code.
- You type the code and click Verify Code. Edesy submits it to Meta.
- Routing is restored. The number goes back to its previous incoming-call setup, and WhatsApp messaging is enabled.
If the call does not come, click Resend Code. The wizard shows a 10-minute countdown.
Verification API#
Base URL: https://voice-api.edesy.in/v1/whatsapp. Auth: Authorization: Bearer sk_....
| Method | Path | Description |
|---|---|---|
| POST | /verify/start |
Start a session. Body: pool_number_id, waba_id, meta_phone_id, access_token, display_name, forwarding_number |
| GET | /verify/{session_id} |
Session status |
| POST | /verify/{session_id}/code |
Submit the code. Body: {"code": "123456"} |
| POST | /verify/{session_id}/resend |
Ask Meta to call again |
| DELETE | /verify/{session_id} |
Cancel and restore routing |
Session status values: pending, code_requested, verified, failed, expired.
Error codes: VERIFICATION_NOT_FOUND, VERIFICATION_ALREADY_ACTIVE, VERIFICATION_EXPIRED, MAX_ATTEMPTS_EXCEEDED, INVALID_VERIFICATION_STATUS, INVALID_CODE.
FAQ#
Can I put WhatsApp on a landline number?#
Yes, if it is a number on your Edesy account. Meta verifies by voice call and Edesy forwards that call to your phone.
Why not use SMS verification?#
Many virtual and landline-style numbers cannot receive SMS. The voice call works on any number that can take calls.
What number shows on my phone when the call comes in?#
Your Edesy virtual number.
How long is the code valid?#
On the manual path, the session expires 10 minutes after the code is requested; resend if it runs out. During Embedded Signup, forwarding stays on for 20 minutes.
Is the forwarded call charged?#
Yes, like normal call forwarding. It is usually one short call.
How many times can I try?#
Up to 3 attempts per session. After that, cancel and start a new session.
Will my IVR or call forwarding on this number break?#
Only for the few minutes of verification. Edesy restores the number's previous incoming-call routing when verification finishes, is cancelled or fails.
Does Edesy record or read the code for me?#
No. The call is forwarded to you live. You listen and type the code.
Can I start two verifications for the same number?#
No. Only one active session per number is allowed. Cancel the existing one first.