Official WhatsApp Business API Partner

WhatsApp for Developers

Integrate WhatsApp in minutes, not weeks. One API call to send messages. Production-ready SDKs for every major language.

2

SDKs

<5 min

Setup

99.9%

Uptime

Send your first WhatsApp message

Install the SDK and send a message in under 5 lines of code

import Zavudev from "@zavudev/sdk";

const client = new Zavu();

// Send a WhatsApp message in one line
const result = await client.messages.send({
  to: "+14155551234",
  channel: "whatsapp",
  text: "Hello from Zavu!",
});

console.log(result.message.id);

Why developers choose Zavu for WhatsApp

Skip the complexity of Meta's Cloud API. Get a developer-friendly experience with production-ready SDKs.

Production SDKs

Python and Node.js SDKs. Install with one command and start sending messages in minutes.

One Simple Endpoint

POST /v1/messages for everything. Text, media, templates, buttons, lists - all the same endpoint.

All Message Types

Text, images, videos, documents, location, contacts, interactive buttons, lists, and templates.

Smart Fallback

Automatic fallback to SMS when WhatsApp delivery fails. Never lose a message.

Real-time Webhooks

Delivery status updates, incoming messages, and reactions. All events in real-time.

Fair Pricing

Pay per monthly active user, not per message. WhatsApp is free within the 24-hour window.

Every WhatsApp message type supported

Send any type of message with the same simple API. Text, media, interactive elements, and templates.

Text

Text

Image

Image

Video

Video

Audio

Audio

Document

Document

Location

Location

Contact

Contact

Buttons

Buttons

Lists

Lists

Templates

Templates

Reactions

Reactions

Sticker

Sticker

Code examples for common use cases

Copy-paste examples for templates, interactive buttons, and webhooks

Send Template Message

Use pre-approved templates to initiate conversations or send notifications outside the 24h window.

import Zavudev from "@zavudev/sdk";

const client = new Zavu();

// Send a WhatsApp template message
const result = await client.messages.send({
  to: "+14155551234",
  messageType: "template",
  content: {
    templateId: "order_confirmation",
    templateVariables: {
      "1": "John",
      "2": "ORD-12345",
    },
  },
});

Send Interactive Buttons

Add up to 3 interactive buttons for quick customer responses.

import Zavudev from "@zavudev/sdk";

const client = new Zavu();

// Send interactive buttons
const result = await client.messages.send({
  to: "+14155551234",
  messageType: "buttons",
  text: "How would you rate your experience?",
  content: {
    buttons: [
      { id: "great", title: "Great!" },
      { id: "okay", title: "It was okay" },
      { id: "poor", title: "Not good" },
    ],
  },
});

Handle Incoming Webhooks

Receive real-time events for message delivery, incoming messages, and reactions.

import express from "express";

const app = express();

app.post("/webhooks/zavu", express.json(), (req, res) => {
  const event = req.body;

  switch (event.type) {
    case "message.inbound":
      console.log("New message from:", event.data.from);
      console.log("Text:", event.data.text);
      break;
    case "message.delivered":
      console.log("Message delivered:", event.data.id);
      break;
  }

  res.status(200).send("OK");
});
Partner Onboarding

Let your customers connect their WhatsApp

Building a platform? Create invitation links for your customers to connect their WhatsApp Business accounts. They complete Meta's embedded signup flow - no credentials shared.

  • One-click invitation link creation via API
  • Secure Meta OAuth flow - no password sharing
  • Webhook notification when onboarding completes
  • Pre-assign Zavu phone numbers to customers
Read the Partner API docs
Create an invitation
import Zavudev from "@zavudev/sdk";

const client = new Zavu();

// Create an invitation for your customer
const invitation = await client.invitations.create({
  clientName: "Acme Corp",
  clientEmail: "contact@acme.com",
  expiresInDays: 7,
});

// Share this URL with your customer
console.log(invitation.invitation.url);
// https://dashboard.zavu.dev/invite/abc123xyz
Calculate your costs

See exactly what you'll pay

No hidden fees. What you see is what you pay.

Unique contacts messaged per month
1,000100,000
Free within 24h conversation window
0100,000
0500,000
0100,000

Cost Breakdown

Platform Fee (MAU)

3,000 contacts × $0.001

$3.00

WhatsApp Messages

100,000 messages

Free

Email Messages

10,000 × $0.0001

$1.00

SMS Messages

0 × $0.0410

$0.00
Estimated Total$4.00

per month

WhatsApp is free within the 24h conversation window. SMS and Email rates are pass-through at cost. All prices in USD.

WhatsApp template messages outside the 24h window are charged directly by Meta. View Meta pricing

$0.001

per MAU

Free

WhatsApp (24h)

$0.041

SMS per message

$0.0001

Email per message

Zavu vs. the alternatives

A developer-friendly WhatsApp API with fair pricing and production-ready SDKs

FeatureZavuMeta Cloud APITwilio
Setup time5 minutesDays/WeeksHours
Official SDKs2 languages07 languages
Pricing model$0.001/MAUPer conversation$0.001/msg
Customer-initiated messagesFreeFree$0.001
Smart fallback to SMSManual
Partner invitation flow
Multi-channel (SMS + Email)
Developer experienceSimpleComplexGood
SupportIncludedNonePaid plans

Get started in 4 steps

From signup to sending your first message in under 5 minutes

1

Get your API key

Sign up for free and get your API key from the dashboard. No credit card required.

export ZAVU_API_KEY=zavu_live_...
2

Install the SDK

Install the SDK for your language with a single command.

pip install zavudev # or: npm install @zavudev/sdk
3

Connect WhatsApp Business

Use the embedded signup flow to connect your WhatsApp Business Account in minutes.

# Complete the setup in your dashboard
4

Send your first message

You're ready to send WhatsApp messages with one API call.

client.messages.send(to="+1...", channel="whatsapp", text="Hello!")

Frequently asked questions

Common questions about WhatsApp Business API integration

What is the 24-hour conversation window?

WhatsApp allows free-form messaging within 24 hours after the customer's last message. Outside this window, you must use pre-approved template messages. Zavu tracks this automatically and can fall back to SMS if needed.

How do WhatsApp templates work?

Templates are pre-approved message formats registered with Meta. Use them for order confirmations, shipping updates, or initiating conversations. Create templates in the Zavu dashboard and Meta will approve them, usually within 24 hours.

Can I send bulk/broadcast messages?

Yes. Zavu supports broadcast campaigns to thousands of recipients. Create a broadcast, add contacts with personalized variables, and send immediately or schedule for later. Templates required for contacts outside the 24h window.

How do webhooks work?

Configure a webhook URL for your sender and we'll POST events in real-time: message.delivered, message.failed, message.inbound (including reactions). Verify signatures with your webhook secret for security.

What happens if WhatsApp fails?

Enable smart fallback to automatically send via SMS when WhatsApp delivery fails. This ensures your message always reaches the customer, even if they don't have WhatsApp or are offline.

Start building with WhatsApp today

Get your free API key and send your first message in minutes. No credit card required.

WhatsApp for Developers | API, SDK & Integration Guide | Zavu