WhatsApp only
The two WhatsApp rails, and how to choose
This page is about WhatsApp and nothing else. Facebook and Instagram have one route each and no decision to make, so they are not on it.
Njiwa can put a message on WhatsApp by two different roads. They look identical from the inbox and identical from your code. They differ in what it takes to get started, in what Meta charges, and in what you are allowed to send once a conversation has gone quiet.
The Web rail
This rail speaks the same multi-device protocol that WhatsApp Web speaks. Your number is linked by scanning a QR code from the phone, exactly as you would link a laptop, and after that Njiwa holds that session on a server and sends through it.
There is no approval process, no business verification, and no waiting. It works with the number your customers already have saved. Meta charges nothing per message. You can be sending in five minutes with a number you already own, and either side can start a conversation at any time.
It is not Meta's official API, and we do not describe it as one. It is the same protocol a linked desktop uses, driven by a server instead of a browser.
Keeping a number healthy
A number that behaves like a person keeps working. A number that blasts does not. In practice that means:
- Pace your sends. Njiwa spaces messages out of one number by default, and you can slow it further. Sending as fast as the socket allows is the single fastest way to get a number reported.
- Message people who expect it. A customer who bought from you yesterday is not going to report you. A bought list will.
- Let people reply, and answer them. A number that only ever sends looks like what it is.
- Warm a new number up over days rather than opening at full volume.
- Keep your contacts in Njiwa rather than only on the phone, so changing number is an afternoon of work rather than a disaster.
The Cloud rail
This is the official WhatsApp Business Cloud API. Meta verifies your business, you get a dedicated number, and everything runs through Meta's own infrastructure.
The costs are different rather than absent. Verification takes days to weeks. The number is dedicated to the API, so it is not the number your customers already message. Meta charges per conversation. And outside a twenty four hour window opened by the customer, you can only send templates you got approved in advance, which rules out a lot of ordinary replies.
Side by side
| Web rail | Cloud rail | |
|---|---|---|
| Approval from Meta | Not needed | Required, with business verification |
| Works with a number you already own | Yes | No, the number is dedicated to the API |
| Cost per message | None from Meta | Meta charges per conversation |
| Who can start the conversation | Either side | The customer, or a template you got approved |
| Message types | Anything WhatsApp supports | Templates outside the 24 hour window |
| Time to first message | About five minutes | Days to weeks, depending on verification |
| Same Njiwa API | Yes | Yes |
How to choose
Start with the Web rail if you want to be sending today, from the number your customers already know, with two way conversation and no per message charge from Meta. That covers most invoices, receipts, order updates and support.
Choose the Cloud rail when you need a dedicated business number with Meta's verified badge, when your volume makes per conversation pricing worth the setup, or when your own compliance people require the official channel.
You do not have to decide once. The same Njiwa API drives both, so a number can move rails without your code changing, and plenty of accounts run both at the same time.
Above a certain volume the choice is made for you
From the Volume package upwards the Cloud rail is the only one we will run, and your Meta business verification has to clear before the package turns on rather than after.
Not a policy for its own sake. WhatsApp can restrict a number at any time, without warning and without appeal. At a few hundred messages a month that is a bad afternoon; at a hundred thousand it is a business off the air, and the rail with an agreement behind it is the only responsible one to be running at that size. The pricing page says which packages those are.
What Njiwa promises
- Every number is labelled with its rail, in the console and in the API.
- We never describe the Web rail as Meta's official API, because it is not, and you should be able to trust what we tell you.
- Sends are paced by default rather than as an option you have to find.
- If a number stops working, the console says so plainly and tells you what to do next.