Skip to main content

Registering business phone numbers

Updated: Nov 14, 2025 This document describes the steps to programmatically register business phone numbers on WhatsApp Business Accounts (WABA). Note that Embedded Signup performs steps 1-3 automatically (unless you are bypassing the phone number addition screen) so you only need to perform step 4 when a business customer completes the flow. If you have disabled phone number selection, however, you must perform all 4 steps. Registering business phone numbers is a four step process: Create the number on a WABA. Get a verification code for that number. Use the code to verify the number. Register the verified number for use with Cloud API or On-Premises API. These steps are described below. You can also perform all 4 steps repeatedly to register business phone numbers in bulk.

Limitations

Business phone numbers must meet our phone number requirements.

Step 1: Create the phone number

Send a POST request to the WhatsApp Business Account > Phone Numbers endpoint to create a business phone number on a WABA.

Request syntax

POST /<WHATSAPP_BUSINESS_ACCOUNT_ID>/phone_numbers

Post body

\{
  "cc": "<CC>",
  "phone_number": "<PHONE_NUMBER>",
  "verified_name": "<VERIFIED_NAME>"
}

Body properties

PlaceholderDescriptionExample Value
<CC>
String
Required.
The phone number’s country calling code.
1
<PHONE_NUMBER>
String
Required.
The phone number, with or without the country calling code.
15551234
<VERIFIED_NAME>
String
Required.
The phone number’s display name.
Lucky Shrub

Response

Upon success, the API returns a business phone number ID. Capture this ID for use in the next step.
\{
  "id": "<ID>"
}

Response properties

PlaceholderDescriptionExample Value
<ID>An unverified WhatsApp Business Phone Number ID.106540352242922

Example request

curl 'https://graph.facebook.com/v24.0/102290129340398/phone_numbers' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAH7...' \
-d '{
    "cc": "1",
    "phone_number": "14195551518",
    "verified_name": "Lucky Shrub"
}'

Example Response

\{
  "id": "110200345501442"
}

Step 2: Request a verification code

Send a POST request to the WhatsApp Business Phone Number > Request Code endpoint to have a verification code sent to the business phone number.

Request syntax

POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/request_code
  ?code_method=<CODE_METHOD>
  &language=<LANGUAGE>

Query string parameters

PlaceholderDescriptionExample Value
<CODE_METHOD>Required.
Indicates how you want the verification code delivered to the business phone number. Values can be SMS or VOICE.
SMS
<LANGUAGE>Required.
Indicates language used in delivered verification code.
en_US

Response

\{
  "success": <SUCCESS>
}

Response properties

PlaceholderDescriptionExample Value
<SUCCESS>Boolean indicating success or failure.
Upon success, the API will respond with true and a verification code will be sent to the business phone number using the method specified in your request.
true

Example request

curl -X POST 'https://graph.facebook.com/v24.0/110200345501442/request_code?code_method=SMS&language=en_US' \
-H 'Authorization: Bearer EAAJB...'

Example response

\{
  "success": true
}

Example SMS delivery

Example of an SMS message in English containing a verification code, delivered to a business phone number:
WhatsApp code 123-830

Step 3: Verify the number

Send a POST request to the WhatsApp Business Phone Number > Verify Code endpoint to verify the business phone number, using the verification code contained in the SMS or voice message delivered to the number.

Request syntax

POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/verify_code
  ?code=<CODE>

Query string parameters

PlaceholderDescriptionExample Value
<CODE>
String
Required.
Verification code, without the hyphen.
123830

Response

\{
  "success": <SUCCESS>
}

Response properties

PlaceholderDescriptionExample Value
<SUCCESS>Boolean indicating success or failure.
Upon success, the API will respond with true, indicating that the business phone number has been verified.
true

Example request

curl -X POST 'https://graph.facebook.com/v24.0/110200345501442/verify_code?code=123830' \
-H 'Authorization: Bearer EAAJB...'

Example response

\{
  "success": true
}

Step 4: Register the number

Send a POST request to the WhatsApp Business Phone Number > Register endpoint to register the business phone number for use with Cloud API. If registering the business phone number for use with On-Premises API, see the On-Premises API Account endpoint reference for instructions.

Request syntax

POST /<BUSINESS_PHONE_NUMBER_ID>/register

Post body

\{
  "messaging_product": "whatsapp",
  "pin": "<PIN>"
}

Body properties

PlaceholderDescriptionExample Value
<PIN>
String
Required.
If the verified business phone number already has two-step verification enabled, set this value to the number’s 6-digit two-step verification PIN. If you do not recall the PIN, you can update it.
If the verified business phone number does not have two-step verification enabled, set this value to a 6-digit number. This will be the business phone number’s two-step verification PIN.
123456

Response

Upon success, the API will respond with true, indicating successful registration.
\{
  "success": <SUCCESS>
}

Response properties

PlaceholderDescriptionExample Value
<SUCCESS>Boolean indicating success or failure.
Upon success, the API will respond with true, indicating successful registration.
true

Example request

curl 'https://graph.facebook.com/v24.0/110200345501442/register' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
\{
  "messaging_product": "whatsapp",
  "pin": "123456"
}'

Example response

\{
  "success": true
}
Did you find this page helpful? Thumbs up icon Thumbs down icon ON THIS PAGE Limitations Step 1: Create the phone number Request syntax Post body Body properties Response Response properties Example request Example Response Step 2: Request a verification code Request syntax Query string parameters Response Response properties Example request Example response Example SMS delivery Step 3: Verify the number Request syntax Query string parameters Response Response properties Example request Example response Step 4: Register the number Request syntax Post body Body properties Response Response properties Example request Example response