Developer Plan

Free WhatsApp API Developer Plan: Start at ₹0, Scale to 100K Messages

Developer plans are the StartMessaging REST API and signed webhooks with a view-only dashboard, sized by the API messages your app sends a month: 100 free, then 1,000, 10,000 or 100,000 from ₹100 a month, GST included. Connect your own WhatsApp Business number: Meta bills message charges to your account, and we never add a per-message fee.

✦ 14-day free trial · Your own WhatsApp Business number · Meta bills messages directly

Developer Plan Sizes

WhatsApp API Pricing for Developers

Every size includes the REST API, 2 webhook endpoints, a view-only dashboard with 1 seat, and docs and email support. Prices are in INR with GST included; pay yearly and get 12 months for the price of 10.

Plan Price / month Price / year API messages / month Requests / minute API sends / hour
Developer Free ₹0 ₹0 100 60 2,000
Developer 1K ₹100 ₹1,000 1,000 120 10,000
Developer 10K ₹499 ₹4,990 10,000 300 10,000
Developer 100K ₹999 ₹9,990 100,000 1,200 10,000
Included

What Every Developer Size Includes

  • REST API with scoped keys

    Plain REST at /api/v1, authenticated with a workspace key (Authorization: Bearer sm_live_…). Choose Full access, Send only, Read only or Custom scopes, and give each integration its own key.

  • Two signed webhook endpoints

    Receive message, contact, conversation, template and campaign events on up to 2 HTTPS endpoints. Every delivery is signed with HMAC-SHA256 and retried after 1m, 5m, 30m, 2h, 6h and 12h if your server doesn’t answer.

  • Templates, text and media

    Send approved templates, carousels and limited-time offers included, at any time, and text or media within the customer’s 24-hour window. Interactive buttons and lists need Team or Business.

  • Usage you can check any time

    GET /me returns your plan, rate limits and this month’s API messages: how many were sent, the allowance, where sends stop and when the count resets. Developers → Logs keeps your last 500 requests from the past 7 days.

  • Limits without surprise bills

    Past the allowance, a send gets 402 PLAN_MESSAGE_LIMIT_REACHED, and nothing upgrades or charges by itself. On paid sizes, other sends stop at 3× the allowance and authentication templates never stop.

  • Your own WhatsApp Business Account

    You connect your number through Meta’s Embedded Signup. Meta bills message charges to your WhatsApp Business Account at Meta’s rates; StartMessaging charges only the plan, with no wallet and no markup.

Quickstart

Your First API Message in 4 Steps

There is no sandbox number: you build on your own WhatsApp Business Account from the start.

01

Sign up and create a workspace

Your first workspace starts with a 14-day free trial of Business, with 1,000 API messages. When it ends, the workspace moves to Developer Free unless you choose a plan, and nothing is deleted.

02

Connect your WhatsApp number

Open Connect and run Meta’s Embedded Signup to link your WhatsApp Business Account and number. Then add a payment method in WhatsApp Manager: Meta needs it before it accepts template sends.

03

Get a template approved and create a key

Submit a template to Meta from Templates. Then open Developers → API keys, create a key with the scopes you need and copy it: it starts with sm_live_ and is shown only once.

04

Check your key, then send

Call GET /api/v1/me to confirm the key, plan and allowance, then send the approved template with POST /api/v1/messages. A 201 means WhatsApp accepted it; delivery and read receipts follow as webhooks.

Code Sample

Send Your First Template Message

Use the template name exactly as Meta approved it. The Idempotency-Key makes a retry safe: the same key and body within 24 hours never sends twice.

curl -X POST https://waba-api.startmessaging.com/api/v1/messages \
  -H "Authorization: Bearer sm_live_your_api_key" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: welcome-919876543210" \
  -d '{
    "to": "+919876543210",
    "type": "template",
    "template": {
      "name": "order_confirmation",
      "language": "en_US",
      "parameters": [{ "text": "Aarti" }, { "text": "#1042" }]
    },
    "clientReference": "order-1042"
  }'
const res = await fetch('https://waba-api.startmessaging.com/api/v1/messages', {
  method: 'POST',
  headers: {
    Authorization: 'Bearer sm_live_your_api_key',
    'Content-Type': 'application/json',
    'Idempotency-Key': 'welcome-919876543210',
  },
  body: JSON.stringify({
    to: '+919876543210',
    type: 'template',
    template: {
      name: 'order_confirmation',
      language: 'en_US',
      parameters: [{ text: 'Aarti' }, { text: '#1042' }],
    },
    clientReference: 'order-1042',
  }),
});
const { data } = await res.json();
console.log(data.id, data.status); // "3f6c2a1e-…" "sent"
import requests

res = requests.post(
    "https://waba-api.startmessaging.com/api/v1/messages",
    headers={
        "Authorization": "Bearer sm_live_your_api_key",
        "Idempotency-Key": "welcome-919876543210",
    },
    json={
        "to": "+919876543210",
        "type": "template",
        "template": {
            "name": "order_confirmation",
            "language": "en_US",
            "parameters": [{"text": "Aarti"}, {"text": "#1042"}],
        },
        "clientReference": "order-1042",
    },
)
print(res.json()["data"])
Usage

Track Your Monthly API Messages with GET /me

No scope needed. In this response, a Developer 1K workspace has sent 420 of its 1,000 API messages; sends would stop at 3,000, and the count resets on the 1st, India time.

curl https://waba-api.startmessaging.com/api/v1/me \
  -H "Authorization: Bearer sm_live_your_api_key"
const res = await fetch('https://waba-api.startmessaging.com/api/v1/me', {
  headers: { Authorization: `Bearer ${process.env.SM_API_KEY}` },
});
const { data } = await res.json();
console.log(data.apiKey.scopes);
import os, requests

res = requests.get(
    "https://waba-api.startmessaging.com/api/v1/me",
    headers={"Authorization": f"Bearer {os.environ['SM_API_KEY']}"},
)
print(res.json()["data"]["apiKey"]["scopes"])
<?php
$ch = curl_init('https://waba-api.startmessaging.com/api/v1/me');
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('SM_API_KEY')],
]);
$me = json_decode(curl_exec($ch), true);
print_r($me['data']['apiKey']['scopes']);
{
  "data": {
    "workspace": {
      "id": "6f1e2d3c-4b5a-4968-8776-5a4b3c2d1e0f",
      "name": "Meera Boutique",
      "slug": "meera-boutique"
    },
    "plan": { "code": "DEV_1K", "name": "Developer 1K", "tier": 2 },
    "apiKey": {
      "id": "0e9d8c7b-6a5f-4e3d-2c1b-0a9f8e7d6c5b",
      "prefix": "sm_live_ab12",
      "scopes": ["messages:send", "messages:read"]
    },
    "limits": { "requestsPerMinute": 120, "sendsPerHour": 10000 },
    "usage": { "requestsThisMinute": 12, "sendsThisHour": 140 },
    "messages": {
      "period": "2026-10",
      "sent": 420,
      "limit": 1000,
      "stopAt": 3000,
      "resetsAt": "2026-10-31T18:30:00.000Z"
    }
  },
  "meta": {
    "requestId": "b7c1e0d2-5a4f-4c3b-9e8d-1f2a3b4c5d6e",
    "timestamp": "2026-10-02T10:00:00.000Z"
  }
}
Compare Plans

Developer vs Team vs Business

Developer is for apps that send through the API. Team and Business are for people who reply to customers. All of them keep the same workspace and API keys, so you can move up any time.

Feature Developer Team Business
Price / month ₹0 to ₹999, by size ₹999 ₹2,999
Price / year ₹0 to ₹9,990, by size ₹9,990 ₹29,990
Seats included 1 3 10
Dashboard View-only Shared team inbox, contacts and CRM Everything in Team, plus chatbot flows and WhatsApp Forms
API messages / month 100 to 100,000, by size Unlimited (fair use) Unlimited (fair use)
Requests / minute 60 to 1,200, by size 300 1,200
Webhook endpoints 2 1 5
Interactive messages (buttons and lists)
Assign and resolve conversations via the API
Campaigns from the dashboard
Conversions API (POST /conversions)
Support Docs and email Email Priority chat
FAQs

WhatsApp API Developer Plan — FAQ

Is there a free WhatsApp API plan?

Yes. Developer Free costs ₹0 and includes 100 API messages a month, 60 requests a minute, 2,000 API sends an hour, 2 webhook endpoints and a view-only dashboard. Meta still bills its own message charges to your WhatsApp Business Account; StartMessaging adds nothing per message.

How is Developer Free different from the free trial?

The 14-day free trial is the Business plan for up to 3 people, 1,000 contacts and 1,000 API messages, once per account owner. Developer Free has no end date. When a trial ends without a plan, the workspace moves to Developer Free: the API keeps working within its limits and your data stays.

What counts as an API message?

Each message sent through POST /api/v1/messages (or the deprecated POST /trigger/send) that WhatsApp accepted. A refused send gives its slot back. The month follows India time and the count starts again on the 1st.

What happens when I reach my monthly limit?

The send gets 402 PLAN_MESSAGE_LIMIT_REACHED with sent, stopAt and resetsAt in its details. Developer Free stops at 100, authentication templates included. A paid size stops other sends at 3× its allowance (3,000, 30,000 or 300,000) and never stops authentication templates. Nothing upgrades or charges by itself: choose a bigger size or another plan to send more.

Does StartMessaging charge per WhatsApp message?

No. StartMessaging is a Meta Tech Provider: you connect your own WhatsApp Business Account, and Meta bills message charges to it directly at Meta’s rates. We charge a flat plan, with no wallet, no credits and no per-message markup. Developer sizes are set by how many API messages a month they include.

What can’t I do on a Developer plan?

The dashboard is view-only, with 1 seat: replying to chats, adding contacts and sending campaigns from the dashboard need Team or Business. Over the API, interactive messages and assigning or resolving conversations need the team inbox (Team or Business), and POST /conversions needs Business. Reading conversations and managing contacts through the API work on Developer.

Can I move from Developer to Team or Business later?

Yes, from the Billing page. You keep the same workspace and API keys. A change of plan applies as soon as it is paid, and the unused days of your current plan are refunded.

Do Developer prices include GST?

Yes. Every price is in Indian rupees (INR) and includes 18% GST, with a GST invoice for every payment. Billing is in INR only, in every country. Pay yearly to get 12 months for the price of 10: ₹1,000, ₹4,990 or ₹9,990 a year.

Is there a sandbox or test number?

No. You connect your own WhatsApp Business Account from the start. The 14-day free trial includes the API (300 requests a minute, 100 sends an hour, 1,000 API messages), which is enough to build and test an integration end to end. After it, Developer Free keeps the API on with 100 messages a month.

WhatsApp API

Start Building on the Free Developer Plan

Sign up, connect your own WhatsApp Business number and make your first call. Your first workspace gets a 14-day free trial; after it, Developer Free keeps the API on with 100 messages a month.