> ## Documentation Index
> Fetch the complete documentation index at: https://docs.orbit.devotel.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Get started with the WhatsApp Business Platform

> A step-by-step how-to for sending your first WhatsApp Business Platform message through Orbit — connect a WABA, get a template approved, send it, and reply inside the 24-hour window.

# Get started with the WhatsApp Business Platform

The WhatsApp Business Platform is Meta's official API for sending and receiving WhatsApp messages at scale — the same platform behind order updates, appointment reminders, and support chats from businesses you already message. Through Orbit you use it with one REST call and one API key, without integrating Meta's Cloud API directly.

This guide takes you from zero to your first delivered message. If you already have a WhatsApp Business Account (WABA) connected, skip to [Step 3](#step-3-send-your-first-template-message).

## How the platform works

Two rules shape everything you send. Understand them first and the rest of the API is straightforward.

* **You need an approved template to start a conversation.** Any message *you* send first — an order confirmation, a one-time passcode, a shipping update — must use a template Meta reviewed and approved. Templates come in four categories: **authentication**, **utility**, **marketing**, and **service**. The category drives [what you pay](/guides/whatsapp/pricing).
* **A reply opens a 24-hour window.** When a customer messages you, a 24-hour *service window* opens. Inside it you can send free-form (non-template) messages — plain text, media, interactive buttons. When the window closes, you're back to templates only. See [The 24-hour window](/guides/whatsapp/24h-window) for the full model.

Everything else — media, buttons, delivery receipts — layers on top of these two rules.

## Before you begin

You need:

* An Orbit account and a live API key (**Settings → API Keys**). Live keys are prefixed `dv_live_sk_`; keep them server-side only.
* A **WhatsApp Business Account (WABA)** connected to Orbit. If you don't have one yet, follow [Step 1](#step-1-connect-a-whatsapp-business-account) — the full account, number, and verification path lives in the [WABA setup guide](/guides/whatsapp/waba-setup).

<Steps>
  <Step title="Connect a WhatsApp Business Account">
    In the Orbit dashboard, go to **Settings → Channels → WhatsApp → Connect** and complete Meta's embedded sign-up: pick your Business Manager, create or select a WABA, and verify a phone number by SMS or voice code.

    You can start sending as soon as the number verifies — you don't have to wait for Meta's business verification to finish. Until it does, a new WABA is capped at **250 unique recipients per 24 hours**.

    The deep version of this step — the documents Meta requires, choosing or porting a number, and display-name approval — is the [WABA setup guide](/guides/whatsapp/waba-setup).
  </Step>

  <Step title="Create and approve a template">
    Go to **Channels → WhatsApp → Templates → New Template** and submit one:

    1. Pick a **category** — authentication, utility, marketing, or service.
    2. Pick a **language** (each locale is a separate submission).
    3. Write the body with numbered variables, e.g. `Hi {{1}}, your order {{2}} shipped.`
    4. Submit. Most templates are approved within minutes; allow up to 24 hours.

    Keep the category honest — a promotional message submitted as `utility` is the most common rejection. See the [content policy](/compliance/whatsapp-content-policy) for what Meta rejects.
  </Step>

  <Step title="Send your first template message">
    Once a template is approved, send it with a single POST. Reference the template by `name` and `language`, and fill its variables through `components`:

    ```bash theme={null}
    curl -X POST https://api.orbit.devotel.io/api/v1/messages/whatsapp \
      -H "X-API-Key: dv_live_sk_..." \
      -H "Content-Type: application/json" \
      -d '{
        "to": "+14155552671",
        "type": "template",
        "template": {
          "name": "order_confirmation",
          "language": { "code": "en" },
          "components": [
            {
              "type": "body",
              "parameters": [
                { "type": "text", "text": "Ada" },
                { "type": "text", "text": "ORD-12345" }
              ]
            }
          ]
        }
      }'
    ```

    The response returns a message id you can track through [delivery webhooks](/webhooks/events) (`message.sent`, `message.delivered`, `message.read`).
  </Step>

  <Step title="Reply inside the 24-hour window">
    When a customer replies, a 24-hour service window opens and you can send free-form messages — no template required:

    ```bash theme={null}
    curl -X POST https://api.orbit.devotel.io/api/v1/messages/whatsapp \
      -H "X-API-Key: dv_live_sk_..." \
      -H "Content-Type: application/json" \
      -d '{
        "to": "+14155552671",
        "type": "text",
        "text": { "body": "Thanks for reaching out! How can we help?" }
      }'
    ```
  </Step>

  <Step title="Check the window before you send">
    Not sure whether a contact is still inside the window? Check it before composing a free-form message. If the window has closed, fall back to a template.

    ```bash theme={null}
    curl "https://api.orbit.devotel.io/api/v1/messages/whatsapp/window-status?to=+14155552671&from=+18005551234" \
      -H "X-API-Key: dv_live_sk_..."
    ```

    The send pipeline enforces the same rule, so a free-form send outside the window is rejected rather than silently dropped — but the pre-flight check lets you gate your UI to template-only and avoid a wasted attempt.
  </Step>

  <Step title="Scale beyond the starter limit">
    New WABAs start at 250 unique recipients per 24 hours. As you send consistently to more recipients while keeping your quality rating **Medium** or **Green**, Meta raises your tier automatically — to 1,000, then 10,000, then 100,000, then unlimited. A **Low** quality rating freezes tier increases, so keep templates relevant and honor opt-outs. The [WABA setup guide](/guides/whatsapp/waba-setup#messaging-limits) covers the tier table in full.
  </Step>
</Steps>

## Frequently asked questions

### Do I need my own Meta Cloud API access to use the WhatsApp Business Platform?

No. Orbit connects to Meta's Cloud API on your behalf. You connect a WhatsApp Business Account once through the dashboard and then send through Orbit's REST API with a single `X-API-Key` header — you never handle Meta access tokens or webhook plumbing yourself.

### Why do I have to use a template to message a customer first?

The WhatsApp Business Platform only lets a business start a conversation with a message Meta has pre-approved. This keeps unsolicited messaging in check. Once the customer replies, a 24-hour window opens in which you can send free-form messages without a template.

### How long does template approval take?

Most templates are approved within minutes; Meta allows up to 24 hours. The most common cause of rejection is a category mismatch — for example, promotional copy submitted as a `utility` template. See the [WhatsApp content policy](/compliance/whatsapp-content-policy).

### What is the 24-hour window?

When a customer sends you a message, a 24-hour *service window* opens. Inside it you can reply with free-form text, media, and interactive messages. When it closes, you can only re-engage with an approved template. You can check whether a contact is still inside the window with the `window-status` endpoint before sending. See [The 24-hour window](/guides/whatsapp/24h-window).

### How much does a WhatsApp message cost?

Pricing depends on the template category (authentication, utility, marketing, or service) and the destination country. See the [WhatsApp pricing guide](/guides/whatsapp/pricing) for the model and rates.

### Can I make voice or video calls over WhatsApp?

Yes — the WhatsApp Business Platform supports business calling. See [WhatsApp Business Calling](/guides/whatsapp/business-calling).

## Next steps

* [WABA setup guide](/guides/whatsapp/waba-setup) — the complete account, number, and verification path.
* [The 24-hour window](/guides/whatsapp/24h-window) — how service windows and re-engagement work.
* [WhatsApp channel reference](/channels/whatsapp) — every WhatsApp API field, including media and interactive messages.
* [WhatsApp pricing](/guides/whatsapp/pricing) — how conversations are priced.
* [Content policy](/compliance/whatsapp-content-policy) — what Meta approves and rejects.
