INDONESIA

WhatsApp API and WhatsApp gateway for businesses in Indonesia

A WhatsApp API for Indonesian businesses: send from your own +62 number with no per-message fee, get replies on a webhook, schedule in WIB, WITA or WIT, and test free.

Free Sandbox, no card needed. Pair an Indonesian number and send your first message in about 10 minutes.
The Jakarta skyline with the National Monument behind a phone showing a WhatsApp chat, linked by a line to a small server

Your own +62 number

Pair the WhatsApp number your customers already have saved, as a linked device. It keeps working on the phone.

A flat price, not a fee per message

Meta charges $0.025 for each utility message in Indonesia. ChatRail Core is $15 a month for unlimited sending.

WIB, WITA or WIT

Recurring schedules take a timezone, so a 09:00 reminder goes out at 09:00 local time in Jakarta, Makassar or Jayapura.

WhatsApp API or WhatsApp gateway: what is the difference?

On the left a phone linked to a formal building with a coin for every message; on the right a phone linked to a laptop with one flat monthly ticket

In Indonesia the two words usually mean two different products.

  • WhatsApp Business API means Meta's official WhatsApp Business Platform, bought directly or through a Business Solution Provider. Every message that starts a conversation must use a template Meta has approved, and each delivered message is charged.
  • WhatsApp gateway usually means a service that pairs a normal WhatsApp number as a linked device, the same way WhatsApp Web does, and lets your code send through it. There are no templates and no per-message fee.

ChatRail is the second kind, built for developers: a REST API, signed webhooks, delivery states, schedules and optional AI replies. It is not affiliated with Meta or WhatsApp. If you need the green-tick profile, one-time passcodes at large volume, or marketing to big opted-in lists, Meta's official platform is the right choice. Official API or linked devices compares the two in detail.

Harga WhatsApp Business API: what the official API costs in Indonesia

Meta charges per message delivered, by category. Its Indonesia rates from the card effective 1 October 2026, in US dollars:

CategoryMeta list rate10,000 a month
Marketing$0.0411$411
Utility (order updates, reminders)$0.0250$250
Authentication (one-time codes)$0.0250$250
Authentication, business based abroad$0.1360$1,360
Service (replies past 1,000 a month)$0.0250$250

Indonesia's utility rate is about 18 times India's and seven times the US rate. Its authentication rate for businesses based outside Indonesia is one of the highest on Meta's card. Your provider may add its own fee on top.

A coin-fed meter printing a long receipt beside a single flat monthly pass

ChatRail Core is $15 a month for one number with unlimited sending, so it costs the same as Meta's fee at 600 utility messages a month. Above that the flat fee is cheaper, and replies are included. The full rate logic is in our WhatsApp API pricing guide.

Send a WhatsApp message from your app

One HTTP request with your API key. The message is plain text, so Bahasa Indonesia, English or both work the same way.

curl -X POST https://www.chatrail.dev/v1/messages/text \ -H "Authorization: Bearer $CHATRAIL_API_KEY" \ -H "Idempotency-Key: pesanan-5521-dikirim" \ -H "Content-Type: application/json" \ -d '{"connection":"toko-jakarta","to":"+628XXXXXXXXXX", "body":"Pesanan 5521 sedang dikirim dan tiba hari ini sebelum pukul 18.00.", "context":{"order_id":"5521","status":"shipped"}}'

The response is 202 Accepted: the message is stored and queued, and delivery arrives later on your webhook. Send an Idempotency-Key on every request so a retry never sends the same update twice. You can also attach an image, invoice PDF or location, and check whether a number is on WhatsApp first with GET /v1/numbers/check.

Schedule messages in WIB, WITA or WIT

The Indonesian archipelago under three clocks reading 7, 8 and 9 o'clock, one per time zone, each with an outgoing message

Indonesia spans three time zones and none of them changes for daylight saving. POST /v1/schedules takes a timezone, so set the one your customers live in:

ZoneTimezone to sendCovers, for example
WIB, UTC+7Asia/JakartaJava, Sumatra
WITA, UTC+8Asia/MakassarBali, Sulawesi
WIT, UTC+9Asia/JayapuraPapua, Maluku

Recurrence can be daily, weekly on chosen days, or monthly on a day of the month, with -1 for the last day, which suits bill and instalment reminders. Pause, resume and cancel a schedule from the API. A single message takes send_at instead. See the API reference for the full body.

Get replies and delivery status on a webhook

Register an HTTPS endpoint with POST /v1/webhook-endpoints and ChatRail posts signed events to it, each with a chatrail-signature header you verify before you trust it.

  • message.received for every incoming message, including photos, voice notes and documents.
  • message.sent, message.delivered, message.read and message.failed as each message moves.
  • message.reply_correlated when a reply is matched to the alert it answers, with that alert's context attached.
  • connection.disconnected and connection.requires_repair when the linked device needs attention.

Optional AI replies can answer follow-up questions using only the context attached to the alert, and either send automatically or wait as drafts. They are off until you turn them on. Context-aware replies.

Is there a free WhatsApp API? (API WhatsApp gratis)

Yes, for testing. ChatRail's Sandbox is free and needs no card: one connected number, 500 messages a month, and the basic API and webhooks. Pair a number by scanning a QR code or typing a pairing code on the phone, send a message to yourself, and watch the events arrive.

For production, paid plans start at $15 a month per number with unlimited sending. Free gateways that never charge anything are worth a hard look at who runs the session and where your customers' messages go. The quickstart takes about ten minutes.

What to know before you build on it

A linked-device API is not Meta's official platform, and that has consequences you should plan for:

  • A session can drop and need pairing again. ChatRail tells you by webhook and holds queued messages, but someone has to re-pair.
  • WhatsApp's rules on unwanted messages apply in Indonesia as everywhere. Numbers get restricted for bulk messages people did not ask for. ChatRail refuses more than 10 messages to one person in 5 minutes and keeps an opt-out list, but nothing makes blasting a bought list safe.
  • There is no green tick. The number is a regular WhatsApp account.

Send updates people expect, at a steady pace, and have a plan for re-pairing. How to tell a ban from an expired session.

Frequently asked questions

Does ChatRail work with an Indonesian +62 number?

Yes. Any number that runs WhatsApp can be paired as a linked device, including Telkomsel, Indosat, XL and other Indonesian mobile numbers. The number keeps working on the phone.

Is ChatRail a WhatsApp gateway?

Yes, in the sense the word is used in Indonesia: it pairs a normal WhatsApp number as a linked device and lets your code send and receive through it. It adds webhooks, delivery states, schedules and optional AI replies.

Is this the official WhatsApp Business API?

No. ChatRail uses a linked-device session, so there is no Meta onboarding, no template approval and no per-message fee, and also no green tick.

Can I send messages in Bahasa Indonesia?

Yes. The message body is plain text, so Bahasa Indonesia, English or a mix work the same way.

Can I message WhatsApp groups?

Yes. You can list the groups the number is in, create and manage groups, and send to a group by name.

What does it cost?

The Sandbox is free with 500 messages a month. Core is $15 a month for one number with unlimited messaging. Core + AI is $29 and adds 10,000 AI replies a month. Prices are in US dollars.

BUILD A CONTROLLED TEST

Start with one number and one real workflow.

Validate the connection, delivery state and reply path before increasing traffic.

Start free