Create free account

For SaaS and devs

WhatsApp API for SaaS and Developers

You want WhatsApp inside your product, but Meta's official API is bureaucratic and charges per conversation, and running Baileys on your own server becomes technical debt nobody wants to maintain. ZapZap API gives you a managed instance, REST and webhooks, with no session or QR handling on your side.

R$15per active number / month.Prepaid, with a welcome credit when you create the account, subject to the current campaign.
+74 thousand events per day+60 operations active operations in the Family

What holds you back today

The official API (Cloud API) requires Meta verification, pre-approved templates and per-conversation billing, which is unworkable for an MVP or a product still being validated.

Your Supabase Edge Functions blow past the 60s timeout when the send call hangs waiting for a synchronous response from WhatsApp.

You need the incoming message webhook to close the loop in your backend, but every provider sends a different, poorly documented payload.

Running Baileys or venom-bot on your own server means managing auth storage, reconnection and a session that drops at 3 a.m. with nobody around.

Scaling to many numbers in a multi-tenant product turns into a nightmare of QR codes, sessions and reconnections for every customer.

Sending OTPs and transactional notifications from the same number that sends marketing raises the risk of the account being blocked.

How it works with ZapZap

  1. 1

    Provision the instance and get the token

    Create the number from the dashboard or the API, scan the QR once and receive a REST token ready to use in your backend. No proprietary SDK, just HTTP.

  2. 2

    Point the webhook to your endpoint

    Set the URL of your backend (a Next.js route, Edge Function or Worker) and start receiving every message, delivery status and connection event as clean JSON.

  3. 3

    Send asynchronously

    Call the send endpoint and return immediately. The actual sending happens in the instance's queue, so your Edge Function finishes well before the 60s timeout.

  4. 4

    Close the loop with the reply

    When the user replies, the webhook hits your backend, you save it to your database and, if you want, let the per-instance AI qualify or answer on its own.

What to use

The features that matter here

The ZapZap modules that solve exactly the pain points of this scenario.

Webhooks and REST

The heart of the integration: send over HTTP and receive every message, status and event at your endpoint. Stable JSON payload, no proprietary library needed in your stack.

Per-instance AI

Plug a support or qualification agent straight into the number, using your product's business_description. Useful for answering onboarding questions without writing flows by hand.

Anti-block

Automatic typing indicator, delays and non-standard sending pattern reduce the risk when you send OTPs and notifications in volume through the unofficial account.

Flow Builder

Build the onboarding or data collection flow with no code, in a visual editor, and let WhatsApp guide the new user while your backend just listens to the events.

Ready-made messages to adapt

Examples to get started. Personalize them with the customer's name and your business details.

Your verification code is 384291. It expires in 5 minutes. If you didn't request it, ignore this message.

Payment approved. Your Pro plan is now active and access is unlocked in the dashboard. If you have any questions, just reply here.

Welcome to [Product]. Your environment is live. Want me to send you the step-by-step for your first integration now?

For OTPs and transactional messages, record the user's opt-in and handle contact data in line with the LGPD (Brazil's data protection law). ZapZap API acts as an intermediary: data flows through your backend and you keep control of the contact base.

Frequently asked questions

Is this Meta's official API?

No. ZapZap API is an unofficial API through managed WhatsApp instances. You don't need Meta verification, approved templates or per-conversation billing. In exchange, use the anti-block and warm-up modules to reduce the account's risk.

How do I solve the 60s timeout on Supabase Edge Functions?

Send asynchronously. You call the send endpoint, it queues the message on the instance and returns immediately, so your function finishes well before 60s. Delivery confirmation arrives later through the webhook, without blocking the request.

Do I receive a webhook for messages the user sends?

Yes. You point the webhook to your backend and start receiving incoming messages, delivery status and connection events as JSON. You can save them to your database, trigger automations or let the per-instance AI reply.

How does billing work?

It is R$15 per active number per month, prepaid, with no per-message charge. You provision as many numbers as you need (useful for multi-tenant) and pay only for the ones that are active. There is a welcome credit when you create the account, subject to the current campaign.

Can I separate the OTP number from the marketing number?

Yes, and it is recommended. Each number is an isolated instance with its own token. Run transactional messages and OTPs on one instance and marketing sends on another, which lowers the risk of a block on the account that sends critical codes.

Start now

Create your account, connect a number in minutes and test the API with warm-up and anti-ban. R$15 per active number/month, prepaid, no lock-in.