Getting Started with Dialogwa
Most founders we talk to assume connecting WhatsApp to their own software is a slow, expensive process. They picture approval queues at Meta, a business account they do not want, a per-message bill that punishes growth, and a backlog of template reviews that stalls every campaign. When we started Dialogwa, we refused that model. We wanted something a solo developer could stand up in an afternoon and a non-technical owner could still understand. This guide shows how we flipped the usual script.
What we actually built
Dialogwa is a gateway. You connect a real WhatsApp number by scanning a QR code, and from that moment your number can send and receive messages through our REST API and SDK. There is no Business API application, no green tick requirement, and no per-template pricing. The session is the account. You own the number, you control the messages, and you pay for throughput rather than for permission to exist.
Why a session, not the official API
The official WhatsApp Business API is powerful but heavy. You need approval, a phone number you can verify by SMS, and a message template system that blocks free-form replies outside tight windows. For a shop answering ten questions a day, that overhead is the whole project. We use a connected WhatsApp Web session instead. That gives us full two-way messaging, media, groups, and presence, with the tradeoff that the number should be treated as a service line, not your personal SIM. We think that trade is worth it for the freedom it buys.
Your first session in three steps
- Register at dialogwa.com and create a session. Give it a clear name like "sales-line" so you can tell your numbers apart later.
- Scan the QR code with the WhatsApp number you want to use as your gateway. Keep that phone nearby until the session shows online.
- Watch the session status flip to online. You are now ready to send, and inbound messages will start landing in your webhook.
Sending your first message
Once a session is online, sending is just an HTTP call. We keep it boring on purpose, because boring is what survives at 2 a.m.:
POST /api/send
{
"session": "your-session-name",
"to": "6281234567890",
"message": "Hello from our gateway"
}
The same action is available from our Node SDK if you prefer code over curl. The SDK simply wraps the HTTP surface so you get autocomplete and errors you can read:
const { Client } = require("dialogwa");
const bot = new Client(session, "6281234567890");
await bot.sendText("Hello from our gateway");
What we see in the field
The teams that succeed fastest are the ones who send one real message from a script before touching the dashboard. That single end-to-end send proves the number is live, the token works, and the format is right. Everything after that is configuration, not mystery.
An honest caveat
A WhatsApp Web session is not the same as a sanctioned API. WhatsApp can limit or block numbers that send spam, use your main personal number, or behave like a bot farm. We strongly recommend a dedicated SIM, sensible rate limits, and real opt-in. We give you the tools to stay safe, but the responsibility for how you message is yours, and we will say that plainly every time.
What we learned building this
The part nobody warns you about is session durability. A QR session lives as long as the phone stays connected and the app stays logged in, so we tell every customer to keep that handset on charge, on stable wifi, and away from the daily driver they might reset. A session that drops at midnight is a support line that goes dark exactly when customers need it. Treat the phone like a small server, not a phone, and the gateway stops being a surprise.
Where to go next
Start with auto-reply to answer common questions, then wire your own webhook when you are ready for custom logic. The rest of this blog walks through each piece. Pick the one you need today and ship it.