WAME is your software house's messaging layer. One SDK, three official Meta channels and one webhook — the same code in every project you ship. Plus a monthly fee of your own on top of each client.
From 20 instances · no lock-in · see partner pricing
You write the integration once. It serves every project you ship from here on.
The module you build for today's client drops into the next one unchanged. The integration stops being a line item and becomes an in-house library.
WhatsApp, Instagram and Messenger arrive in the same envelope. A single field names the channel. The client who asks for Instagram tomorrow is not a new project.
No approved app, no business verification under your client's name, no becoming a Tech Provider. The step that stalls delivery for weeks — the one nobody can estimate — disappears.
What leaves the quote
The work was never sending a message. It is keeping alive an integration you already delivered and no longer bill for.
We are a Meta Business Partner. The official infrastructure is already built and maintained on our side — your team consumes it and ships.
Send us a message. We will walk you through the API, the webhook and firm pricing for your volume.
Talk to the partner teamThat simple
The end client never sees WAME. They see WhatsApp working inside the system you built.
Create, activate, deactivate and delete are your calls. Provisioning happens inside your own onboarding — nobody opens a dashboard of ours.
Secure login through Meta itself on the official API, or a QR code on the unofficial one. They pick WhatsApp, Instagram and/or Messenger.
All three channels in the same envelope, at the URL you configured. WhatsApp becomes a feature of your system — not a separate project.
Fully API-managed. The client lifecycle lives in your billing, not in our dashboard — so trials, suspensions and reactivations are your call.
One single pattern
You write the handler once. It serves all three — and the next client too.
The incoming event — only the provider field changes
{
"object": "wame",
// whatsapp | instagram | messenger
"provider": "instagram",
"entry": [{
"id": "<instance-id>",
"changes": [{
"field": "messages",
"value": {
"messages": [{
"from": "5511999990000",
"type": "text",
"text": { "body": "Hi! 👋" }
}]
}
}]
}]
}Your side of it — one module for all three
// One module. Every project you deliver reuses it.
export function wameWebhook(req, res) {
const { provider, entry } = req.body;
const msg = entry[0].changes[0].value.messages?.[0];
if (!msg) return res.sendStatus(200);
onIncomingMessage({
channel: provider, // whatsapp | instagram | messenger
from: msg.from,
text: msg.text?.body,
});
res.sendStatus(200);
}Partner Program
Volume pricing, a single consolidated monthly invoice and Enterprise permissions on every instance. From 20 instances, no lock-in.
The more clients you connect, the less you pay for each one.
What the client base you already have would bring in monthly with the channel switched on.
That is BRL 24,600.00 over 12 months — recurring, with no new project to deliver.
Tier applied: 20–99 instances at BRL 28.00 per instance/month. Platform cost only. On official instances, conversations are billed separately by Meta, straight to your client's account.
Small client and large client
You do not need two vendors to serve two sizes of client. Same platform, same SDK, same webhook.
For the client who needs a contract, scale and the number under their own name.
For the small client who wants to start today with no per-conversation cost.
Moving a client from one to the other does not rewrite your code: the instance changes, the handler stays the same.
The number belongs to the client, and that does not change. On the official API the account is created in their own Business Manager, so they can leave whenever they want — including leaving you. It is an awkward thing to say on a sales page, but it is what separates a partner from a hostage: whoever stays, stays by choice.
Either works. On the official API the WhatsApp account sits in the client's Business Manager while the instance sits in your partner account — they own the number, you own the operation. If you would rather keep everything under your own name, that works too.
You do — it is your brand in front. But the people supporting you are the ones who build the platform, directly, not a tier-1 agent reading a script. Channel failures, odd webhook behaviour and payload questions reach whoever touches the code.
Yes. Everything is managed through the API, inside your onboarding and your billing. The client sees WhatsApp working in the system you delivered; there is no dashboard of ours in front of them.
Not for the partner program yet — that starts at 20 instances. But you can use the platform per client right away and join the program once the volume is there. The code does not change; the invoice does.
No need to throw it away. Official and unofficial share the same SDK and the same webhook format, and the choice is per instance. Put new clients on the official API and migrate the older ones at your own pace, without rewriting the handler.
One SDK, three channels, one webhook — and a revenue line that does not end when the project does.
Talk to the partner team