Skip to content
Flowgento

Features · OTP and notification API

WhatsApp OTP API for login codes and notifications

Send one-time passcodes, order updates and account alerts on WhatsApp from your own systems — one REST call per message, with delivery status sent back to you by webhook.

Flowgento is a Meta Tech Provider, built on the official WhatsApp Cloud API. Its REST API lets your backend send WhatsApp authentication templates for one-time passcodes, and utility templates for orders, bookings and accounts — the same approved templates your team uses in the inbox.

You choose the template, pass its variables and any button values, and Flowgento handles the WhatsApp side: building the request Meta expects, sending it from the right number, and recording the message in the customer’s conversation.

What you get

Authentication (OTP) templates

Send login, sign-up and verification codes as WhatsApp authentication templates. The copy-code or one-tap button is filled from the code you pass, so one variable is enough.

Order and account notifications

Send order confirmations, shipping updates, appointment reminders or account alerts as utility templates, with variables and button values filled per message.

One endpoint, one JSON body

POST /api/v1/messages with the recipient, the template name, its variables and any button values. Media and text headers are supported too.

Discover the exact send shape

GET /api/v1/templates returns your approved templates with their variable count, header type, buttons and a ready-made example body.

Delivery status by webhook

Subscribe to the message.status webhook to hear when a message is sent, delivered, read or failed — signed with HMAC so you can verify it came from Flowgento.

Replies land in the inbox

Every API message is part of a normal conversation. If a customer replies to an order update, your team sees the thread in the shared inbox.

Authentication and utility templates are priced by Meta per delivered message, by recipient country, with monthly volume tiers. Current rates: Meta’s WhatsApp pricing (as of 13 Oct 2026).

Example requests

Authenticate with your API key as a Bearer token (an X-API-Key header also works). Template names and variables must match a template that is approved on the sending number.

Send a one-time passcode

An authentication template with a copy-code or one-tap button. Pass the code as variable 1 — the button is filled from the same value, so you send nothing else.

curl -X POST https://api.flowgento.com/api/v1/messages \
  -H "Authorization: Bearer $FLOWGENTO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+14155550123",
    "type": "template",
    "template": {
      "name": "login_code",
      "language": "en_US",
      "variables": { "1": "482913" }
    }
  }'

Send an order notification with a tracking button

A utility template whose Visit website button has a dynamic URL. The button value is the part of the link that changes for each message; index is the button’s position, starting at 0.

curl -X POST https://api.flowgento.com/api/v1/messages \
  -H "Authorization: Bearer $FLOWGENTO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+447700900123",
    "type": "template",
    "template": {
      "name": "order_shipped",
      "language": "en_US",
      "variables": { "1": "Alex", "2": "1042" },
      "buttons": [ { "index": 0, "type": "url", "value": "1042" } ]
    }
  }'

# 201 Created
{"message":{"id":"cmq...","conversationId":"cmq...","status":"SENT","metaMessageId":"wamid..."}}

Every endpoint, scope and error code is in the API reference.

How it works

  1. 1

    Get your templates approved

    Create notification templates in Flowgento. Authentication templates use wording Meta writes itself, so create those in Meta’s WhatsApp Manager and use Sync from Meta to bring them in.

  2. 2

    Create an API key

    In Settings → API, create a key with the messages scope. A key can be limited to one WhatsApp number, so a service can only ever send from the number it is meant to.

  3. 3

    Call the API from your backend

    Send the request when your system needs to — a login, a checkout, a shipment. Keep the key on your server; never put it in a browser or mobile app.

  4. 4

    Listen for delivery status

    Add a webhook endpoint for message.status if you want to fall back to another channel when a message fails, or log delivery for support.

Who it's for

Website and app owners

Sign-in and sign-up codes delivered on WhatsApp, where many customers already are, with delivery status you can act on.

Ecommerce sellers

Order, payment and shipping notifications sent from your store’s backend or from Flowgento’s own order flow.

Colleges and schools

Portal login codes, application status updates and fee receipts sent automatically from your student system.

Large businesses

Number-scoped API keys per service, and webhooks per number, so each system only touches what it should.

Plan availability

Available on Vistaar (Growth) , Shikhar (Scale) , Vishwa (Enterprise) and Sampoorn (Lifetime) .

Meta charges per delivered template message, separately from your Flowgento plan.

Limits and prices for every plan are on the pricing page.

FAQs

What is a WhatsApp OTP API?

It is an API that sends one-time passcodes as WhatsApp messages instead of SMS. On WhatsApp these use authentication templates approved by Meta. With Flowgento you call one endpoint with the recipient, the template name and the code.

Do I need to fill the OTP button myself?

No. For authentication templates, the copy-code or one-tap button is filled automatically from variable 1, which is the code. You only send buttons yourself for things like a dynamic Visit website link.

Which plans include the API?

The REST API and webhooks are on Vistaar and above. The pricing page lists every plan and what it includes.

What does Meta charge for OTP and notification messages?

Meta charges per delivered template message, depending on the category (authentication, utility or marketing) and the recipient’s country, with volume tiers for utility and authentication. Meta’s pricing page has the current rates.

Can I send from a specific number when I have several?

Yes. Use a key scoped to one number, or pass from with the number on each request when your key covers all numbers.

Try it on your own WhatsApp number.

Start on the free plan — no credit card needed.