Most setup guides are a list of buttons to click. They are accurate and they leave you unprepared, because the difficulty is never finding the button. It is that four of these steps fail silently and two of them cannot be undone easily.
This is the order, what each step is actually for, and where it goes wrong.
What do you need before you start?
Three things, and getting them wrong later is expensive:
- A phone number that is not currently registered on any WhatsApp account. Not your WhatsApp Business app number, not a personal one. If the number is in use you must delete that account first, and you lose its chat history. A landline, mobile or toll-free number all work.
- A Facebook Page for the business.
- Your legal business documents, matching your Meta Business Manager name exactly. This is what business verification will check, and a mismatch is the commonest reason it fails.
Step 1: Create the Meta app
Go to the Meta Developer site, My Apps → Create App, and choose the app type Business. Then add the WhatsApp product and click Set up.
You will be asked to select or create a WhatsApp Business Account (WABA). That is a separate object from the app, and the distinction matters later: the app is the software identity, the WABA holds your phone numbers and templates.
Step 2: Register the phone number
Add your number in the WhatsApp panel. Meta sends a six-digit code by SMS or voice call, and you enter it in the dashboard.
This is also where you set the display name, which is reviewed and can be rejected. Use your actual business name rather than a description of what you sell.
Step 3: Add a payment method
Attach a payment method to the WhatsApp Business Account. Without one you can send test messages and nothing else.
India now bills in INR, and 18% GST applies on top of Meta's rates. What those rates actually come to per message is in what the WhatsApp Business API costs in India, and there is a free calculator if you would rather put your own numbers in.
Step 4: Replace the temporary token
The token shown in the dashboard is temporary. It expires within hours, which is why the classic first WhatsApp integration works all afternoon and is dead by morning with (#190) Your access token has expired.
Create a System User in Business Settings, assign it your app and WhatsApp account at Full control, and generate a token with business_management, whatsapp_business_messaging and whatsapp_business_management. Full instructions in your token expires in 24 hours, here is the permanent one.
Do this before you build anything. Every hour spent building against the temporary token is an hour you will spend again.
Step 5: Complete business verification
Until you verify, your number can start conversations with 250 unique customers per rolling 24 hours. That is a demo, not a channel.
Verification is the fastest of the three documented routes past that limit, because the other two require sending volume the 250 cap itself prevents. Meta's published decision time ranges from ten minutes to fourteen business days, but with every document correct and consistent on the first submission it lands in 24 to 48 hours. Most of the horror stories are resubmission cycles, and each resubmission restarts the clock.
The full document list and the exact-match trap are in Meta business verification in India.
Step 6: Submit your first template
You cannot message anyone who has not messaged you first without an approved template. Free-form text only works inside the 24-hour window that opens when a customer writes to you.
Two things to get right on the first submission:
- The category is Meta's decision, not yours. You pick one, Meta reads the content and decides. A first-contact message from an ad is marketing whatever you select, and marketing costs roughly seven to eight times utility in India. See why your template is billed as marketing.
- Parameter formatting is mechanical and unforgiving. Sequential
{{1}},{{2}}or all-named lowercase, never both, and never opening or closing the body with a variable. The rules and the 60-day appeal window are in why templates get rejected.
Step 7: Subscribe to webhooks before you go live
This is the step people skip, and it is the one that makes everything else measurable.
Delivery on WhatsApp is webhook-only. There is no endpoint to ask whether a message arrived. A 200 from the send call means Meta accepted the request, nothing more, and the message can still fail afterwards. If you do not store the returned wamid against your outbound row and subscribe to status webhooks, you will never know what landed.
That is the single most expensive assumption in this whole process: why "sent" means nothing.
While you are there, decide how you will classify failures. 131049 is a temporary per-recipient cap worth retrying; 131026 means the number cannot receive messages and must never be retried. Treating them the same is how a well-meaning retry job damages the quality rating that decides your sending tier. The full error code reference has all 82.
How long does the whole thing take?
Two to three days, realistically, and the variance is almost entirely in step 5.
| Step | Time |
|---|---|
| App, WABA, phone number, payment | under an hour |
| System User token | ten minutes |
| Business verification | 24 to 48 hours if documents are right first time |
| First template approval | minutes to a day |
The two things that turn that into three weeks are a document mismatch on verification and building against the temporary token. Both are avoidable, and both are in the order above for that reason.
After you are live
Getting a number from 250 to unlimited is mostly an exercise in sending messages people actually want. Above 2,000 the tier doubles automatically, usually within six hours, but only if you have used at least half your current limit in the last seven days with a high quality rating. How that ladder works, and why a broadcast list is not a substitute, is in the WhatsApp broadcast limit.
The other half of going live is deciding what the system should answer on its own. What to actually automate on WhatsApp covers where that line sits, and the first thing nearly everyone switches on is a greeting and an away message, which have their own examples and their own ways of going wrong.
At Kredoo we do all seven steps as onboarding, connected to your own WhatsApp account so Meta bills you directly with no per-message markup. If you would rather not learn this sequence by hitting each trap, that is what we do.
Questions people ask
How do I set up the WhatsApp Business API?
Seven steps in order: create a Meta app of type Business and add the WhatsApp product, create or select a WhatsApp Business Account, register a phone number that is not currently on any WhatsApp account and verify it with the six-digit code, add a payment method, create a System User token so your credential does not expire, complete business verification to pass the 250 conversation daily limit, then submit your first message template and subscribe to status webhooks.
How long does WhatsApp Business API setup take?
Two to three days in practice. The app, account, phone number and payment method take under an hour, the System User token about ten minutes, and business verification is the variable: Meta's published range is ten minutes to fourteen business days, but with correct documents on the first submission it typically completes in 24 to 48 hours.
Can I use my existing WhatsApp Business app number for the API?
Only if you delete the existing WhatsApp account on that number first, which loses its chat history. The number you register must not be currently in use on any WhatsApp account. Because of this, choose the number before you start rather than after.
Do I need business verification to use the WhatsApp Business API?
You can send without it, but your number is capped at starting conversations with 250 unique customers per rolling 24 hours. Verification is the fastest of the three routes past that cap, because the other two require sending volume the cap itself prevents.
What do I need before starting WhatsApp Business API setup?
A phone number not currently registered on any WhatsApp account, a Facebook Page for the business, and legal business documents whose name matches your Meta Business Manager account exactly. The name mismatch is the most common reason verification fails.
Why does my WhatsApp integration stop working the day after I build it?
Because the access token in the Meta app dashboard is temporary and expires within hours. Meta's documentation says it is not suitable for development purposes. Replace it with a System User token from Business Settings before building anything, or you will build the same integration twice.
Stop losing leads to the follow-up gap
Kredoo captures leads from Meta and Google Ads, then follows up on WhatsApp automatically. Live in 5 minutes.
Get Started