# Kirimdev — Full Content > This file aggregates the full body of every published blog post, intended for AI context ingestion. Source: https://kirimdev.com/blog/ ## https://kirimdev.com/blog/apa-itu-kirimdev-dan-fiturnya [Kirimdev](https://kirimdev.com) adalah platform WhatsApp Business API (Cloud API) yang dirancang untuk **developer yang butuh integrasi cepat** sekaligus **operasional yang butuh inbox siap pakai**. Satu organisasi, satu dashboard di [app.kirimdev.com](https://app.kirimdev.com), satu set kredensial — kirim pesan lewat REST API, kelola chat lewat browser, otomasi lewat webhook atau n8n. Artikel ini merangkum **apa yang Kirimdev tawarkan** dan **di mana setiap fitur hidup** di dashboard maupun dokumentasi. ## Untuk siapa Kirimdev? | Profil | Yang biasanya dipakai | |--------|----------------------| | **Developer / backend** | [Public API `/v1`](https://docs.kirimdev.com/api/), [TypeScript SDK](https://docs.kirimdev.com/sdks/typescript/), webhooks | | **Support / CS** | Sidebar **WhatsApp → Chats**, Contacts, Templates | | **Sales / CRM** | Sidebar **CRM → Pipelines**, Reports | | **Agency / SaaS platform** | [Multi-tenant](/features/multi-tenant), [Customers](https://docs.kirimdev.com/platform/customers/) (Business plan) | | **Builder no-code / AI** | [n8n node](/features/n8n), [MCP Server](/features/mcp) | Kalau Anda baru mulai, baca [persiapan sebelum pakai Kirimdev](/blog/persiapan-sebelum-pakai-kirimdev) atau [Quickstart docs](https://docs.kirimdev.com/quickstart/). ## Untuk developer: API, SDK, webhooks ### API & SDK Public API Kirimdev **meta-compatible** — payload kirim pesan mengikuti bentuk WhatsApp Cloud API Meta, jadi contoh dari dokumentasi Meta sering bisa dipakai langsung dengan mengganti base URL ke `https://api.kirimdev.com/v1/`. Yang ditambahkan di atas Meta: - **Autentikasi API key** (`kdv_live_...`) — kelola di **Developers → API Keys** - **Auto-retry** dan **idempotency key** bawaan di SDK - **Cursor pagination** untuk list conversations, messages, contacts - **OpenAPI 3.1** publik → [API Reference](https://docs.kirimdev.com/api/) Detail: [halaman fitur API & SDK](/features/api) · [Send text](https://docs.kirimdev.com/sending/send-text/) ### Webhooks Kirimdev push event ke endpoint HTTPS Anda — pesan masuk, status delivery, perubahan kontak, dan lainnya. Setiap delivery ditandatangani **HMAC-SHA256** (Stripe-style); verifikasi wajib di production. - Daftar & kelola subscription: **Developers → Webhooks** (`/developers/webhooks`) - Log delivery & replay manual: **Developers → Deliveries** - Retry otomatis hingga 8 kali (~31 jam) Detail: [halaman fitur Webhooks](/features/webhooks) · [Webhook overview](https://docs.kirimdev.com/webhooks/overview/) · [Event catalog](https://docs.kirimdev.com/webhooks/events/) ### MCP Server Bridge WhatsApp ke **AI agents** — Cursor, Claude Desktop, ChatGPT, atau custom agent lewat **Model Context Protocol**. Sekitar **18 tools** siap pakai (kirim pesan, list conversation, dll.) tanpa menulis HTTP client sendiri. Detail: [halaman fitur MCP](/features/mcp) · [MCP overview](https://docs.kirimdev.com/tools/mcp/) · [Setup](https://docs.kirimdev.com/tools/mcp/setup/) ## Untuk operasional sehari-hari: inbox, CRM, routing ### Inbox & CRM Dashboard **WhatsApp → Chats** (`/chats`) adalah shared inbox multi-nomor. Anda bisa: - Balas chat real-time (WebSocket) - Atur **prioritas** dan **SLA** — breach otomatis dimonitor - Tulis **catatan internal** per kontak - Lihat **timeline aktivitas** (chat, broadcast, perubahan owner/deal) CRM gratis untuk semua plan: **CRM → Pipelines** (`/crm/pipelines`) untuk kanban deal, **Reports** untuk konversi dan velocity. Detail: [halaman fitur Inbox & CRM](/features/crm) ### Smart Routing Chat masuk yang belum di-assign dibagi **round-robin** ke agen yang online. Setiap agen hanya melihat percakapan miliknya — mengurangi tabrakan dan chat yang tertinggal. Konfigurasi per nomor di **WhatsApp → Inbox Settings** (`/inbox-settings`). Detail: [halaman fitur Smart Routing](/features/smart-routing) ## Broadcast & multi-tenant ### Broadcasts Kirim template message ke ribuan kontak sekaligus dari dashboard **WhatsApp → Broadcasts** (`/broadcasts`): - Upload CSV dengan **variabel per baris** (nama, nomor order, dll.) - Empat mode penerima (semua kontak, label, CSV, filter) - Resume tanpa double-send; kuota gagal di-refund otomatis Untuk integrasi via API, loop `POST /v1/{phone_number_id}/messages` dengan template — lihat [Broadcast campaign recipe](https://docs.kirimdev.com/recipes/broadcast-campaign/). Detail: [halaman fitur Broadcasts](/features/broadcasts) ### Multi-tenant Model data: **Organization → Teams → Members → WhatsApp accounts**. Satu org bisa punya banyak unit kerja dan banyak nomor. Untuk SaaS/agency di plan Business: fitur **Customers** — tenant-of-tenant dengan [setup links](https://docs.kirimdev.com/platform/setup-links/) sekali pakai supaya end-customer connect nomor WhatsApp mereka sendiri tanpa share token. Kelola di sidebar **Workspace** (Members, Subscription) dan **Customers** (`/customers`). Detail: [halaman fitur Multi-tenant](/features/multi-tenant) · [Platform mode](https://docs.kirimdev.com/platform/) ## Otomasi tanpa kode: n8n Community node **@kirimdev/n8n-nodes-kirim** menyediakan action (kirim pesan, kelola kontak) dan trigger (pesan masuk, status delivery) di workflow n8n. Bisa dipakai sebagai tool di AI Agent node. Contoh end-to-end: [Support Bot with n8n](https://docs.kirimdev.com/recipes/support-bot/). Detail: [halaman fitur n8n](/features/n8n) ## Satu platform, banyak pintu masuk ``` Developer → API / SDK / Webhooks / MCP Operasional → Chats · Contacts · Templates · Broadcasts Sales → CRM Pipelines · Reports Platform / agency → Customers · Setup links · Multi-team Otomasi → n8n · Webhook recipes ``` Semua pintu itu memakai **nomor WhatsApp yang sama** dan **kontak yang sama** — tidak perlu sync manual antar sistem. ## Mulai gratis 1. [Daftar di app.kirimdev.com](https://app.kirimdev.com/sign-up) 2. Connect nomor di **WhatsApp → Accounts** 3. Pilih jalur Anda: [Quickstart API](https://docs.kirimdev.com/quickstart/) atau langsung buka **Chats** Lihat semua halaman fitur di [/features](/features). Update produk terbaru ada di [Changelog docs](https://docs.kirimdev.com/changelog/). Ada pertanyaan atau butuh demo? [hello@kirimdev.com](mailto:hello@kirimdev.com) --- ## https://kirimdev.com/blog/cara-connect-coexistence-whatsapp Mode **coexistence** cocok kalau nomor WhatsApp Business Anda **sudah aktif di HP** dan ingin tetap dipakai di aplikasi — sambil terhubung ke inbox, API, dan broadcast Kirimdev. Artikel ini panduan langkah di dashboard. Untuk checklist persiapan (nomor, Business Manager, website), baca dulu [Apa yang perlu disiapkan sebelum pakai Kirimdev](/blog/persiapan-sebelum-pakai-kirimdev). ## Sebelum mulai Pastikan: - WhatsApp Business app **aktif** di HP (nomor sudah terdaftar) - Anda punya akses **admin** ke portfolio Facebook Business - Login dari **komputer / browser desktop** — connect coexistence **tidak tersedia di HP** lewat browser mobile ## Langkah 1 — Buka halaman Akun 1. Login ke [app.kirimdev.com](https://app.kirimdev.com) 2. Di **sidebar kiri**, cari grup menu **WhatsApp** 3. Klik **Akun** — membuka halaman **Akun WhatsApp** (`/whatsapp`) Di sini Anda melihat daftar nomor yang sudah terhubung (kalau ada). ## Langkah 2 — Tambah Akun → Coexistence 1. Di kanan atas halaman, klik tombol **Tambah Akun** (ikon +) 2. Menu dropdown terbuka: **Pilih cara menghubungkan** 3. Pilih opsi **Coexistence (nomor existing)** — deskripsinya: hubungkan nomor yang sudah berjalan di aplikasi WA Business di HP; nomor **tetap bisa dipakai di HP** Opsi lain di menu yang sama: - **Nomor baru (Cloud API saja)** — untuk nomor dedicated tanpa app di HP - **Setup manual** — wizard WABA ID + token jika punya Meta App sendiri ## Langkah 3 — Cek persyaratan & lanjut ke Meta Dialog **Hubungkan nomor WhatsApp existing** akan muncul. Isinya: **Persyaratan:** - Akun WhatsApp Business aktif di HP Anda - Akses admin ke portfolio Facebook Business - Nomor telepon sudah terdaftar di WhatsApp Klik **Lanjut ke Meta**. Browser mengarahkan Anda ke halaman otorisasi Facebook/Meta. Login dengan akun yang punya akses ke Business Portfolio yang memegang nomor tersebut, lalu ikuti petunjuk Meta sampai selesai. > Setelah otorisasi, Anda **otomatis kembali** ke Kirimdev — tidak perlu salin token manual. ## Langkah 4 — Tunggu proses sync Setelah kembali dari Meta, Kirimdev menyelesaikan koneksi di background. Layar callback bisa menampilkan tahapan seperti: - Menukar authorization code… - Menyelesaikan koneksi ke WhatsApp… - **Menyinkronkan kontak…** - **Menyinkronkan riwayat pesan…** Proses sync bisa **beberapa menit** — ini normal. Jangan tutup tab sampai status selesai. Kalau berhasil, Anda diarahkan kembali ke halaman **Akun WhatsApp** dengan kartu nomor baru. Badge **Coexistence (WA Business App)** menandakan nomor ini mode coexistence. ## Langkah 5 — Verifikasi Cek hal berikut: | Cek | Yang diharapkan | |-----|-----------------| | Status kartu nomor | **Terhubung** | | Badge | Coexistence (WA Business App) | | HP | Masih bisa buka & balas chat di WA Business app | | Dashboard | **WhatsApp → Chats** — riwayat mulai muncul setelah sync | | Phone Number ID | Salin dari menu **⋯** di kartu nomor (untuk API nanti) | Coba kirim pesan uji dari dashboard **Chats**, lalu cek apakah muncul juga di HP (dan sebaliknya). ## Kalau gagal atau status macet **Otorisasi dibatalkan di Meta** Ulangi dari **Tambah Akun → Coexistence**. **Status "Menghubungkan" lama tanpa berubah** Klik **Coba lagi** di kartu nomor, atau hapus kartu yang gagal lalu connect ulang. **Link ke HP terputus** (`Hubungkan ulang` di kartu) Pairing di HP lepas — jalankan ulang flow **Coexistence** dari **Tambah Akun**. **Tombol Tambah Akun tidak bisa diklik** - Dari mobile: buka dari desktop - Kuota nomor penuh: upgrade paket atau add-on Extra Number - Penambahan akun sementara dinonaktifkan (limit API Meta): coba lagi beberapa jam kemudian ## Coexistence vs nomor Cloud API baru | | Coexistence | Nomor baru (Cloud API) | |---|-------------|------------------------| | Nomor di HP | Tetap aktif | Tidak bisa dipakai di app WA | | Cocok untuk | UMKM yang sudah pakai WA Business | Integrasi backend / nomor dedicated | | Connect | Embedded Signup Meta | Embedded Signup Meta | Beberapa fitur lanjutan (misalnya **WhatsApp Calling** di dashboard) hanya untuk **nomor Cloud API** (nomor baru / dedicated), bukan coexistence. ## Langkah berikutnya - [Integrasi API & webhook](/blog/integrasi-api-webhook-n8n) - [Tips aman broadcast](/blog/tips-aman-broadcast-whatsapp) - [Quickstart API](https://docs.kirimdev.com/quickstart/) Butuh bantuan saat connect? [hello@kirimdev.com](mailto:hello@kirimdev.com) --- ## https://kirimdev.com/blog/cara-migrasi-bsp-ke-kirimdev Artikel ini khusus untuk nomor **WhatsApp Cloud API** atau **WABA** yang **bukan** WhatsApp di HP. Kalau nomor Anda masih aktif di aplikasi WhatsApp Business di telepon, gunakan panduan [coexistence](/blog/cara-connect-coexistence-whatsapp) — bukan jalur migrasi BSP ini. Migrasi dari BSP (Business Solution Provider) ke Kirimdev berarti memindahkan nomor yang sudah terdaftar di Cloud API Meta agar dikelola lewat platform Kirimdev. Prosesnya lewat **Embedded Signup Meta** di dashboard — Anda tidak perlu salin token atau WABA ID manual. ## Sebelum mulai Pastikan: - Nomor yang dimigrasi adalah **Cloud API murni** (tidak dipakai di app WhatsApp / WA Business di HP) - Anda punya akses **admin** ke WhatsApp Manager dan Business Portfolio di Meta - BSP lama sudah siap melepas nomor (termasuk **credit line**, jika ada) - Login dari **komputer / browser desktop** Untuk checklist persiapan umum (Business Manager, nama bisnis, website), baca juga [Apa yang perlu disiapkan sebelum pakai Kirimdev](/blog/persiapan-sebelum-pakai-kirimdev). ## Langkah 1 — Matikan verifikasi dua langkah Meta mewajibkan verifikasi dua langkah dimatikan sementara saat migrasi nomor antar penyedia. 1. Buka [WhatsApp Manager → Phone numbers](https://business.facebook.com/latest/whatsapp_manager/phone_numbers) 2. Pilih nomor yang akan dimigrasi 3. Matikan **Two-step verification** (verifikasi dua langkah) Simpan PIN verifikasi dua langkah Anda jika nanti ingin mengaktifkannya kembali setelah migrasi selesai. ## Langkah 2 — Minta BSP hapus credit line Kalau nomor Anda masih terikat **credit line** BSP lama, migrasi bisa gagal atau tertahan. Hubungi BSP sebelumnya dan minta mereka: - Melepas / menghapus **credit line** yang terhubung ke nomor atau WABA Anda - Memastikan nomor siap dipindahkan ke penyedia baru (Kirimdev) Tanpa langkah ini, flow otorisasi Meta sering berhenti di tahap pembayaran atau kepemilikan akun. ## Langkah 3 — Tambah akun di Kirimdev (Cloud API) 1. Login ke [app.kirimdev.com](https://app.kirimdev.com) 2. Di sidebar, buka **WhatsApp → Akun** (`/whatsapp`) 3. Klik **Tambah Akun** (ikon +) 4. Pilih **Nomor baru (Cloud API saja)** — untuk nomor dedicated tanpa app di HP Jangan pilih **Coexistence** untuk migrasi BSP; opsi itu hanya untuk nomor yang masih jalan di WhatsApp Business app. Klik **Lanjut ke Meta** (atau **Continue to Meta**). Browser mengarahkan Anda ke halaman otorisasi Facebook/Meta. ## Langkah 4 — Otorisasi di Meta Di halaman Meta, ikuti petunjuk berikut: 1. Login dengan akun yang punya akses admin ke Business Portfolio yang memegang nomor 2. Pilih **buat akun WhatsApp baru** atau **Create new WhatsApp account** (sesuai opsi yang Meta tampilkan untuk migrasi) 3. Isi **Display name** — **harus sama persis** dengan nama tampilan WhatsApp Cloud API yang ingin Anda migrasi 4. Masukkan **nomor telepon** yang akan dipindahkan 5. Verifikasi dengan **OTP** (SMS atau telepon) yang Meta kirim 6. Ikuti semua langkah Meta sampai tombol **Finish** / **Selesai** > Nama tampilan yang berbeda dari yang sudah terdaftar di WABA lama sering memicu penolakan atau peninjauan ulang Meta. Samakan dengan data di BSP sebelumnya. ## Langkah 5 — Kembali ke Kirimdev & daftar nomor Setelah **Finish** di Meta, Anda **otomatis kembali** ke halaman **Akun WhatsApp** di Kirimdev. Kalau muncul tombol **Register** / **Daftar**: 1. Klik daftar 2. Masukkan **PIN** verifikasi dua langkah (jika diminta Meta) Tunggu hingga status kartu nomor berubah menjadi **Terhubung**. Proses ini biasanya beberapa menit. ### Kalau gagal atau diminta pembayaran Migrasi kadang gagal karena WABA belum punya **metode pembayaran** yang valid di Meta (Meta menagih penggunaan Cloud API langsung ke Anda — Kirimdev sebagai tech provider tidak menggantikan tagihan Meta). Solusi: tambahkan metode pembayaran di Business Manager sesuai panduan resmi: **[Cara menambahkan metode pembayaran WhatsApp Business →](https://docs.kirimdev.com/guides/whatsapp-business-payment/)** Setelah pembayaran aktif, ulangi flow **Tambah Akun → Nomor baru (Cloud API)** dari dashboard Kirimdev. ## Verifikasi setelah migrasi | Cek | Yang diharapkan | |-----|-----------------| | Status kartu nomor | **Terhubung** | | Badge | Cloud API (bukan Coexistence) | | Template & riwayat | Template lama mengikuti WABA di Meta; riwayat chat di BSP tidak otomatis pindah ke Kirimdev | | Phone Number ID | Salin dari menu **⋯** di kartu nomor untuk integrasi API | Coba kirim pesan uji dari **WhatsApp → Chats** di dashboard, atau lewat [Quickstart API](https://docs.kirimdev.com/quickstart/). ## Migrasi BSP vs coexistence | | Migrasi BSP (Cloud API) | Coexistence | |---|-------------------------|-------------| | Nomor sebelumnya | Sudah di Cloud API via BSP lain | Aktif di WA Business app di HP | | Nomor di HP | Tidak dipakai di app WhatsApp | Tetap aktif di HP | | Credit line BSP | Harus dilepas dulu | Tidak relevan | | 2FA di WhatsApp Manager | Matikan sebelum migrasi | Aturan Meta bisa berbeda — lihat panduan coexistence | ## Pertanyaan yang sering muncul ### Apakah riwayat chat dari BSP ikut pindah? Tidak otomatis. Migrasi memindahkan **kepemilikan nomor dan WABA** di ekosistem Meta; inbox lama di BSP tidak disalin ke Kirimdev. Riwayat baru setelah connect akan masuk ke dashboard Kirimdev. ### Apakah template message ikut? Template yang sudah disetujui Meta biasanya tetap terikat ke **WABA yang sama** setelah migrasi berhasil. Cek di **WhatsApp → Templates** setelah nomor terhubung. ### Bisakah nomor tetap dipakai di HP setelah migrasi? **Tidak.** Jalur Cloud API murni berarti nomor **tidak bisa** lagi dipakai di aplikasi WhatsApp atau WhatsApp Business di HP. Kalau Anda butuh akses HP + dashboard, pertimbangkan [coexistence](/blog/cara-connect-coexistence-whatsapp) untuk nomor lain — bukan migrasi BSP nomor yang sama. ### Berapa lama proses migrasi? - Lepas credit line BSP: tergantung respons BSP (bisa beberapa jam sampai hari kerja) - Flow Meta + connect Kirimdev: biasanya **15–30 menit** kalau tidak ada hambatan pembayaran atau verifikasi ## Langkah berikutnya - [Integrasi API & webhook](/blog/integrasi-api-webhook-n8n) - [Tips aman broadcast](/blog/tips-aman-broadcast-whatsapp) - [Metode pembayaran WhatsApp Business](https://docs.kirimdev.com/guides/whatsapp-business-payment/) Butuh bantuan saat migrasi? [hello@kirimdev.com](mailto:hello@kirimdev.com) --- ## https://kirimdev.com/blog/contoh-use-case-whatsapp-bisnis WhatsApp bukan cuma channel marketing. Untuk bisnis di Indonesia, nomor WA sering jadi **jalur utama** konfirmasi order, tanya jawab CS, sampai follow-up sales. Berikut lima skenario yang paling sering kami lihat di Kirimdev — masing-masing dengan alur kerja singkat dan fitur yang dipakai. ## 1. Notifikasi order & pengiriman (e-commerce) **Siapa:** toko online, brand D2C, marketplace seller. **Masalah:** customer bertanya "paket saya sudah dikirim?" berulang kali lewat chat manual. **Solusi:** saat status order berubah jadi *shipped*, backend Anda panggil API Kirimdev untuk kirim **template message** berisi nama customer, nomor resi, dan link tracking. ``` Order shipped di Shopify/WooCommerce ↓ Backend Anda (webhook order) ↓ POST /v1/{PHONE_ID}/messages (template + idempotency key = order_id) ↓ Customer terima WA otomatis ↓ Webhook message.status → tandai "delivered" di dashboard Anda ``` **Fitur Kirimdev:** Public API, template message, webhook `message.status`, idempotency key (kirim ulang aman kalau retry). **Mulai dari:** [recipe Order Shipped](https://docs.kirimdev.com/recipes/order-notifications/) · [Send templates](https://docs.kirimdev.com/sending/send-templates/) --- ## 2. Inbox customer support **Siapa:** UMKM dengan 2–10 agen CS, klinik, rental mobil, property. **Masalah:** satu nomor WA dipakai banyak orang; chat ketuker, ada yang tidak terbalas, tidak ada riwayat. **Solusi:** semua pesan masuk tampil di **WhatsApp → Chats** (`/chats`). Agen assign percakapan ke diri sendiri, balas dari browser. Catatan internal per kontak disimpan di tab Notes — customer tidak melihat. Dengan **Smart Routing** aktif di **WhatsApp → Inbox Settings**, chat baru yang belum di-assign dibagi round-robin ke agen online. Tiap agen hanya melihat miliknya. **Fitur Kirimdev:** shared inbox, WebSocket real-time, internal notes, [Smart Routing](/features/smart-routing), SLA & prioritas. **Mulai dari:** [halaman fitur Inbox & CRM](/features/crm) --- ## 3. Broadcast promo & pengumuman **Siapa:** F&B, retail, event organizer, komunitas berlangganan. **Masalah:** perlu kirim pengumuman ke ribuan kontak (diskon Ramadan, jadwal baru, undangan webinar) tanpa copy-paste manual. **Solusi:** siapkan template yang sudah disetujui Meta, upload CSV dengan variabel per baris (nama, kode voucher), lalu jalankan dari **WhatsApp → Broadcasts** (`/broadcasts`). Kirimdev handle antrian, rate limit Meta, dan refund kuota untuk nomor yang gagal — tanpa double-send kalau Anda resume campaign. **Fitur Kirimdev:** [Broadcasts](/features/broadcasts), template per-row variables, CSV hingga 10k baris. **Mulai dari:** [Broadcast campaign recipe](https://docs.kirimdev.com/recipes/broadcast-campaign/) --- ## 4. Bot otomasi dengan n8n (tanpa backend sendiri) **Siapa:** founder non-technical, ops yang sudah pakai n8n, usaha kecil tanpa dev dedicated. **Masalah:** butuh auto-reply sederhana ("jam operasional", "status order") tapi tidak mau maintain server. **Solusi:** pasang node **@kirimdev/n8n-nodes-kirim**. Trigger `message.received` → filter keyword → balas teks atau forward ke Google Sheets / Slack. Contoh: customer ketik "HARGA" → n8n kirim daftar paket. Customer ketik "AGEN" → notifikasi ke Slack channel internal. **Fitur Kirimdev:** [n8n node](/features/n8n), webhooks HMAC-signed, trigger events. **Mulai dari:** [Support Bot with n8n](https://docs.kirimdev.com/recipes/support-bot/) --- ## 5. Agency / SaaS: WhatsApp untuk banyak klien **Siapa:** digital agency, CRM lokal, software house yang menjual "WhatsApp sebagai fitur" ke klien mereka. **Masalah:** setiap klien punya nomor WA sendiri; Anda tidak boleh mencampur data atau token antar tenant. **Solusi:** pakai **Platform mode** — buat **Customer** per klien di sidebar **Customers** (`/customers`), kirim [setup link](https://docs.kirimdev.com/platform/setup-links/) sekali pakai supaya klien connect nomor mereka sendiri. API key per org; data terisolasi per tenant. **Fitur Kirimdev:** [Multi-tenant](/features/multi-tenant), Customers (Business plan), setup links, webhook per subscription. **Mulai dari:** [Platform overview](https://docs.kirimdev.com/platform/) --- ## Ringkasan: fitur mana untuk skenario apa? | Use case | Kirim lewat | Kelola di dashboard | Otomasi | |----------|-------------|---------------------|---------| | Notifikasi order | API + template | Templates | Webhook status | | Cs / support | — | Chats, Contacts | Smart Routing | | Broadcast promo | — | Broadcasts | — | | Bot sederhana | n8n node | — | n8n workflow | | Banyak klien | API per customer | Customers | Platform webhooks | --- ## Langkah pertama 1. [Daftar gratis](https://app.kirimdev.com/sign-up) dan connect nomor di **WhatsApp → Accounts** 2. Pilih satu use case di atas — jangan coba semua sekaligus 3. Untuk integrasi API: [Quickstart](https://docs.kirimdev.com/quickstart/). Untuk operasional: langsung buka **Chats** Belum yakin skenario mana yang cocok? Email [hello@kirimdev.com](mailto:hello@kirimdev.com) — ceritakan alur bisnis Anda, kami bantu mapping ke fitur yang tepat. --- ## https://kirimdev.com/blog/crm-inbox-kirimdev WhatsApp sering dipakai untuk jualan dan support, tapi chat tersebar di HP masing-masing agen. Kirimdev menggabungkan **inbox bersama** dan **CRM ringan** dalam satu dashboard — tanpa biaya tambahan di semua paket. ## Shared inbox Menu **WhatsApp → Chats** (`/chats`) adalah kotak masuk bersama untuk semua nomor di akun Anda. - Balas real-time lewat browser (WebSocket) - Lihat status percakapan: terbuka, pending, on hold - Assign chat ke agen tertentu - **Smart routing** round-robin untuk chat belum di-assign — atur per nomor di **Inbox Settings** (`/inbox-settings`) Cocok untuk cs yang butuh satu layar, bukan bolak-balik cek HP. ## Kontak 360° Setiap nomor pelanggan punya halaman kontak dengan: - **Owner** — siapa penanggung jawab sales/CS - **Catatan internal** — hanya staff internal yang lihat, tidak terkirim ke pelanggan - **Timeline aktivitas** — chat, broadcast, perubahan deal, reassignment - **Tab Deals** — pipeline yang terhubung ke kontak itu Akses lewat **WhatsApp → Contacts** (`/contacts`). ## Helpdesk: prioritas & SLA Percakapan bisa diberi **prioritas** (rendah / sedang / tinggi / sangat penting). Kirimdev menghitung **SLA due** dan memonitor breach otomatis — agen tahu chat mana yang harus didahulukan. Kebijakan SLA diatur di **Inbox Settings → Target SLA** (`/inbox-settings/sla`). Status `on_hold` tersedia untuk menandai chat menunggu balasan pelanggan. Penjelasan lengkap: [Panduan SLA Helpdesk](/blog/panduan-sla-helpdesk-kirimdev). ## Pipeline & deal (sales) Sidebar **CRM → Pipelines** (`/crm/pipelines`) menampilkan board kanban per tahap penjualan. - Satu kontak bisa punya deal di pipeline Anda - Pindah stage drag-and-drop - Laporan **conversion** dan **velocity** di **CRM → Reports** - Automasi **stale deal** — notifikasi kalau deal menggantung terlalu lama CRM ini **gratis** di semua tier paket — tidak ada paywall terpisah. ## Kapan pakai inbox saja vs full CRM? | Kebutuhan | Mulai dari | |-----------|------------| | Balas chat bareng staff | **Chats** + routing | | Track siapa handle pelanggan | **Owner kontak** | | Support dengan SLA | **Prioritas** + helpdesk fields | | Sales pipeline | **Pipelines** + deals per kontak | ## Langkah berikutnya - [Fitur CRM di landing](/features/crm) - [Apa itu Kirimdev?](/blog/apa-itu-kirimdev-dan-fiturnya) — ringkasan platform lengkap - [5 use case WhatsApp bisnis](/blog/contoh-use-case-whatsapp-bisnis) --- ## https://kirimdev.com/blog/integrasi-api-webhook-n8n Kirimdev bukan cuma dashboard chat — ada **Public API** untuk sistem Anda, **webhook** untuk event real-time, dan konektor **n8n** untuk otomasi tanpa kode berat. Artikel ini ringkasan jalur integrasi yang paling sering dipakai. ## Public API `/v1` REST API dengan autentikasi **Bearer API key** (`kdv_live_...`). - Buat key di **Developers → API Keys** (`/developers/api-keys`) - Base URL: `https://api.kirimdev.com/v1/{phone_number_id}/...` - Payload kirim pesan **kompatibel Meta Cloud API** — contoh dari docs Meta sering bisa dipakai dengan ganti host - Pagination cursor, idempotency key, rate limit per organisasi Mulai dari [Quickstart](https://docs.kirimdev.com/quickstart/) atau [API Reference](https://docs.kirimdev.com/api/). ### TypeScript SDK ```typescript import { Kirim } from '@kirimdev/sdk' const kirim = new Kirim({ apiKey: process.env.KIRIM_KEY! }) const phone = kirim.phoneNumbers(process.env.PHONE_ID!) await phone.messages.send({ messaging_product: 'whatsapp', to: '+628123456789', type: 'text', text: { body: 'Pesanan #12345 dikirim.' }, }) ``` SDK menangani retry, error mapping, dan pagination. Detail: [TypeScript SDK](https://docs.kirimdev.com/sdks/typescript/). ## Webhook — event masuk ke sistem Anda Daftarkan endpoint HTTPS di **Developers → Webhooks** (`/developers/webhooks`). Kirimdev push event seperti: - `message.received` — pesan masuk dari pelanggan - `message.status` — terkirim, dibaca, gagal - Perubahan kontak dan subscription lainnya Setiap request ditandatangani **HMAC-SHA256** — verifikasi signature wajib di production. Lihat [Verifying Signatures](https://docs.kirimdev.com/webhooks/signing/). Log delivery & replay manual: **Developers → Deliveries**. ## n8n — otomasi visual Node resmi Kirimdev di n8n untuk kirim pesan, baca conversation, trigger dari webhook — cocok untuk notifikasi order, alert internal, atau bot sederhana tanpa deploy backend sendiri. Detail: [fitur n8n](/features/n8n) · [Support bot recipe](https://docs.kirimdev.com/recipes/support-bot/) ## MCP Server — tools untuk AI agents **MCP Server Kirimdev** (`https://api.kirimdev.com/mcp`) — server tools untuk AI agents di Claude, ChatGPT, Cursor, OpenCode, dan client MCP lain. 18 tools: kirim pesan, cek inbox, kelola kontak. Satu API key dengan REST. Detail: [artikel MCP](/blog/kirimdev-mcp-server) · [fitur MCP](/features/mcp) · [setup docs](https://docs.kirimdev.com/tools/mcp/setup/) ## Hermes Agent — integrasi Kirimdev lewat chat WhatsApp Owner chat ke nomor bisnis, AI menjalankan Public API Kirimdev — kirim template, cek inbox, tanpa buka dashboard. Install & deploy di [kirimdev-hermes](https://github.com/kirimdev/kirimdev-hermes). Detail: [artikel Hermes](/blog/kirimdev-hermes-agent) · [setup docs](https://docs.kirimdev.com/tools/hermes/setup/) ## Pola integrasi umum | Skenario | Pola | |----------|------| | Backend kirim notifikasi order | API `POST /messages` + template | | Sistem CRM catat chat masuk | Webhook `message.received` → DB Anda | | Workflow tanpa kode | n8n trigger webhook → action Kirimdev | | Akses Kirimdev lewat AI agent (MCP) | MCP tools | | Owner akses Kirimdev lewat chat WA | Hermes + plugin kirimdev-hermes | ## Sebelum production 1. Simpan API key di secret manager — jangan di frontend 2. Verifikasi signature webhook 3. Tangani idempotency & retry (SDK sudah bantu) 4. Pantau [rate limits](https://docs.kirimdev.com/concepts/rate-limits/) — terpisah dari kuota pesan WhatsApp ## Bacaan lanjutan - [Fitur API & SDK](/features/api) - [Fitur Webhooks](/features/webhooks) - [Persiapan sebelum pakai Kirimdev](/blog/persiapan-sebelum-pakai-kirimdev) - [Limit broadcast Kirimdev vs Meta](/blog/perbedaan-limit-broadcast-kirimdev-vs-meta) --- ## https://kirimdev.com/whatsapp-api-murah Kirimdev menyediakan WhatsApp Cloud API resmi melalui Embedded Signup Meta dengan biaya platform mulai Rp25.000 per bulan. Paket Starter mencakup satu akun WhatsApp, lima anggota tim, Public API, TypeScript SDK, webhook, shared inbox, CRM, 200.000 pesan per bulan, dan 2.000 broadcast per bulan. Biaya bulanan terdiri dari biaya platform Kirimdev dan biaya pesan Meta. Pesan yang billable dibayar langsung melalui akun pembayaran Meta milik pengguna. Kirimdev tidak menambahkan markup pada tarif tersebut. Nomor dan WhatsApp Business Account tetap dimiliki bisnis pengguna. Koneksi tidak menggunakan pairing QR atau modifikasi WhatsApp Web. Kirimdev menambahkan dashboard, API, webhook, CRM, broadcast, multi-tenant, n8n, MCP, dan AI Agent di atas Cloud API. Aturan tarif dapat berubah. Baca [panduan harga WhatsApp 2026](https://kirimdev.com/panduan-harga-whatsapp-2026/) dan [rate card resmi Meta](https://developers.facebook.com/docs/whatsapp/pricing/) sebelum menghitung anggaran. --- ## https://kirimdev.com/blog/kirimdev-hermes-agent Kirimdev punya **integrasi Hermes Agent**: owner chat ke nomor bisnis WhatsApp Anda, AI membalas dan menjalankan perintah lewat Public API — kirim template, cek inbox, dan lainnya tanpa buka dashboard. Plugin resmi **[kirimdev-hermes](https://github.com/kirimdev/kirimdev-hermes)** (MIT) menerima webhook dari Kirimdev dan memanggil API yang sama dengan REST dan [MCP](/blog/kirimdev-mcp-server). Untuk **owner** dan nomor internal perusahaan. Chat pelanggan tetap masuk [inbox](/features/crm) Kirimdev, [n8n](/blog/integrasi-api-webhook-n8n), atau integrasi API Anda. ## Fitur Kirimdev yang terhubung | Fitur Kirimdev | Lewat integrasi ini | |----------------|---------------------| | Public API `/v1` | Kirim pesan, template, interactive atas perintah owner | | Webhook `message.received` | Trigger saat owner chat ke line bisnis | | Template & inbox | Tools `kirimdev_list_templates`, `kirimdev_send_template`, dll. | | Multi-tenant & API key | Isolasi per organisasi — sama dengan REST dan MCP | ## Alur singkat ``` Owner chat ke nomor bisnis (di Kirimdev) │ ▼ Kirimdev ── webhook message.received ──► Gateway Hermes ▲ │ │ ├── LLM └──── Public API (kirim / cek / dll.) ◄──┘ │ ▼ Owner terima balasan di WhatsApp ``` Panduan teknis: [docs Kirimdev](https://docs.kirimdev.com/tools/hermes/) · Install & deploy: [kirimdev-hermes di GitHub](https://github.com/kirimdev/kirimdev-hermes) --- ## MCP atau Hermes — sama-sama akses Kirimdev Keduanya fitur integrasi Kirimdev buat owner/operator. Bedanya cuma **lewat mana Anda chat**: | | **MCP Server Kirimdev** | **Kirimdev + Hermes** | |---|---|---| | **Chat lewat** | AI agent via MCP client (Claude, ChatGPT, Cursor, …) | WhatsApp ke nomor bisnis Anda | | **Kapan** | Saat client MCP dipakai | Gateway jalan terus | | **Akses data** | Tools MCP (`send_message`, `list_conversations`, …) | Tools `kirimdev_*` di plugin | | **Pas untuk** | Uji API, debug, tugas ad-hoc lewat AI | Owner: kirim template, cek inbox tanpa laptop | Satu API key Kirimdev, nomor yang sama — bisa pakai keduanya. --- ## Contoh: apa yang bisa owner lakukan ### 1. Kirim template & cek inbox Nomor owner di `KIRIMDEV_OWNER_USERS`. Chat ke line bisnis, minta apa saja yang biasanya Anda lakukan di dashboard: > *"List template approved di nomor toko."* > *"Kirim template order_shipped ke 628123456789 dengan resi JNE123."* > *"Ada berapa conversation masih open hari ini?"* Anda yang ngomong; Kirimdev yang eksekusi lewat API. Pelanggan cuma terima pesan yang **Anda minta** — bukan ngobrol langsung sama Hermes. ### 2. Follow-up order tanpa buka dashboard > *"Kirim template pengingat pembayaran ke 628987654321, nama Budi, invoice INV-99."* Plugin panggil `kirimdev_send_template`, `kirimdev_send_buttons`, dan tools lain — fitur Kirimdev yang sama, antarmuka chat WA. ### 3. Ringkasan harian Set `KIRIMDEV_HOME_CHANNEL` + cron Hermes → digest ke owner (jumlah chat open, dll.). Kampanye massal tetap lewat [Broadcasts](/features/broadcasts) di Kirimdev. ### 4. Beberapa nomor internal perusahaan `KIRIMDEV_ALLOWED_USERS` untuk co-founder atau ops — chat pelanggan tetap masuk inbox Kirimdev. --- ## Kapan integrasi ini masuk akal? | Kebutuhan | Lewat Hermes? | |-----------|---------------| | Owner akses Kirimdev lewat chat WA | ✅ Ya | | Akses Kirimdev lewat AI agent (MCP) | ❌ Pakai [MCP](/blog/kirimdev-mcp-server) | | Pelanggan dapat AI otomatis | ❌ Belum — [n8n](/blog/integrasi-api-webhook-n8n) atau inbox | | Backend kirim notifikasi order | ❌ Public API + webhook | | Broadcast ribuan kontak | ❌ [Broadcasts](/features/broadcasts) | --- ## Langkah berikutnya 1. [Daftar / login Kirimdev](https://app.kirimdev.com/sign-up) — connect nomor 2. Install & deploy: [kirimdev-hermes](https://github.com/kirimdev/kirimdev-hermes) (README + DEPLOY.md) 3. Ringkasan integrasi: [docs Kirimdev](https://docs.kirimdev.com/tools/hermes/) Bacaan terkait: - [Kirimdev MCP Server](/blog/kirimdev-mcp-server) — tools untuk AI agents - [Integrasi API, Webhook & n8n](/blog/integrasi-api-webhook-n8n) - [Fitur MCP](/features/mcp) --- ## https://kirimdev.com/blog/kirimdev-mcp-server Kirimdev punya **MCP Server** di `https://api.kirimdev.com/mcp` — server tools yang dipanggil **AI agents** lewat client MCP (Claude, ChatGPT, Cursor, OpenCode, dan lainnya). **24 tools** Kirimdev: kirim pesan, cek percakapan, kelola kontak, dan label. Satu API key (`kdv_live_...`) dengan REST, tanpa curl manual. MCP itu protokol koneksi tools, bukan AI agent-nya sendiri. AI agent yang jalan di client itulah yang memutuskan kapan memanggil `send_message`, `list_conversations`, dan sebagainya. Setup: [MCP di docs Kirimdev](https://docs.kirimdev.com/tools/mcp/setup/) · [Daftar tools](https://docs.kirimdev.com/tools/mcp/tools/) ## Fitur Kirimdev lewat MCP | Fungsi Kirimdev | Tool MCP | |-----------------|----------| | Kirim pesan (teks, template, media, interactive) | `send_message`, `mark_as_read`, `get_message` | | Baca & filter inbox | `list_conversations`, `get_conversation`, `list_messages` | | Kontak | `search_contacts`, `create_contact`, `update_contact` | | Label (contact-scoped) | `list_labels`, `create_label`, `update_label`, `delete_label`, `add_contact_label`, `remove_contact_label` | | Template Meta | `list_templates`, `create_template`, `sync_templates` | | Multi-tenant (Business plan) | `list_customers`, `get_customer`, `create_customer`, `update_customer`, `create_customer_setup_link` | Label attach/detach hanya lewat **kontak** — Kirimdev otomatis sinkron ke semua conversation kontak tersebut, jadi tidak ada tool label terpisah per conversation. Payload `send_message` **kompatibel Meta Cloud API** 1:1 — sama kayak REST `/v1`. ## MCP vs cara lain akses Kirimdev | Kebutuhan | Lewat mana | |-----------|------------| | Uji kirim / debug lewat AI agent | **MCP** | | Owner chat dari WhatsApp | [Hermes Agent](/blog/kirimdev-hermes-agent) | | Backend production (retry, idempotency) | **Public API** + SDK | | Workflow visual | **n8n** | | Event real-time ke sistem Anda | **Webhook** | MCP bukan pengganti API untuk traffic tinggi — kuat untuk prototyping dan tugas ad-hoc lewat AI. --- ## Contoh: apa yang bisa dilakukan ### 1. Bantu balas chat lewat AI agent Pelanggan "Budi" chat masuk — Anda minta ke AI agent (Claude, Cursor, dll.): > *"Cek conversation open, cari chat Budi, baca pesan terakhir, balas konfirmasi pengiriman besok jam 10."* ``` list_phone_numbers → list_conversations → search_contacts → get_conversation → send_message → mark_as_read ``` Model pilih tool sendiri — Anda nggak perlu ingat endpoint REST. ### 2. Uji template sebelum integrasi backend > *"List template approved, kirim order_shipped ke +62812... order TEST-001 resi JNE123."* ``` list_templates → send_message (type: template) → get_message ``` Gagal? `get_message` kasih `error.provider_code` dari Meta — debug tanpa curl. ### 3. Tambah & update kontak > *"Cari +62813..., kalau belum ada buat 'Siti dari Bazaar', metadata crm_id LEAD-8842."* ``` search_contacts → create_contact → update_contact ``` ### 4. Kelola label kontak > *"Buat label VIP warna hijau, lalu tempel ke kontak Budi — biar cs langsung lihat di inbox."* ``` list_labels → create_label → search_contacts → add_contact_label ``` Label yang ditempel ke kontak **otomatis muncul** di semua conversation kontak itu. Untuk lepas label: `remove_contact_label`. Untuk hapus label dari seluruh org: `delete_label`. ### 5. Audit pesan gagal > *"10 pesan outbound failed hari ini, jelaskan error code-nya."* ``` list_messages({ direction: "outbound", status: "failed", ... }) ``` ### 6. Buat template lewat chat > *"Buat template utility promo_ramadan bahasa Indonesia, sync dari Meta."* ``` create_template → sync_templates → list_templates ``` ### 7. Onboarding tenant (Business plan) > *"Buat customer PT Logistik Nusantara, generate setup link 7 hari."* ``` create_customer → create_customer_setup_link ``` Tools customer butuh **Business plan**. Detail: [Platform Customers](https://docs.kirimdev.com/platform/customers/). --- ## Tips prompting 1. Banyak akun? Biarkan AI panggil `list_phone_numbers` dulu. 2. Pesan sensitif: *"Draft dulu, jangan kirim."* 3. Nomor tujuan format E.164 (`+62812...`). 4. Poll status: `get_message` setelah `send_message`. 5. `mark_as_read` butuh `wamid` inbound, bukan `msg_` Kirim. [Panduan prompting](https://docs.kirimdev.com/tools/mcp/prompting/) --- ## Keamanan - API key = akses kirim WA atas nama org — simpan di secret manager. - Rate limit MCP **sama dengan `/v1`**. - Production traffic tinggi → Public API + webhook, bukan MCP. --- ## Langkah berikutnya 1. [Daftar / login Kirimdev](https://app.kirimdev.com/sign-up) — connect nomor 2. API key di **Developers → API Keys** 3. [MCP Setup](https://docs.kirimdev.com/tools/mcp/setup/) Bacaan terkait: - [Kirimdev + Hermes Agent](/blog/kirimdev-hermes-agent) — akses Kirimdev lewat chat WA - [Integrasi API, Webhook & n8n](/blog/integrasi-api-webhook-n8n) - [Fitur MCP](/features/mcp) --- ## https://kirimdev.com/blog/panduan-sla-helpdesk-kirimdev Pelanggan chat lewat WhatsApp dan menunggu balasan. Tanpa patokan waktu yang jelas, chat penting bisa tenggelam di antara ratusan pesan lain. Di Kirimdev, **SLA (Service Level Agreement)** membantu Anda menjawab pertanyaan: *"Chat ini harus dibalas kapan? Dan harus diselesaikan kapan?"* Artikel ini menjelaskan apa itu SLA di Kirimdev, cara kerjanya di inbox, dan langkah mengaturnya — tanpa perlu background teknis. ## Apa itu SLA di Kirimdev? SLA di sini **bukan** soal kontrak legal atau biaya server. Ini fitur **helpdesk** untuk customer service: sistem yang menghitung **batas waktu** balasan dan penyelesaian percakapan WhatsApp, lalu memberi tanda kalau batas itu terlewati. Setiap chat bisa punya dua timer: | Timer | Artinya | |-------|---------| | **Respon pertama** | Berapa lama staff harus membalas pesan pelanggan untuk pertama kalinya | | **Penyelesaian** | Berapa lama chat harus ditandai selesai (resolved) | Kedua timer mengikuti **prioritas** chat — dari rendah sampai sangat penting — dan kebijakan yang Anda atur di inbox. ## Kenapa SLA penting untuk cs? WhatsApp terasa informal, tapi pelanggan tetap punya ekspektasi kecepatan. SLA membantu Anda: - **Memprioritaskan** — chat urgent tampil dengan countdown, bukan sekadar urutan masuk - **Mencegah chat menggantung** — ada batas waktu yang terlihat, bukan "nanti saja" - **Mengukur kinerja cs** — filter "breach" menunjukkan chat yang terlewat target - **Menjaga konsistensi** — semua agen pakai patokan yang sama, bukan feeling masing-masing Fitur ini **gratis di semua paket** Kirimdev — tidak ada biaya tambahan untuk mengaktifkannya. ## Prioritas chat Setiap percakapan punya tingkat prioritas: | Prioritas | Kapan dipakai | |-----------|---------------| | **Sangat penting** | Keluhan serius, pelanggan VIP, atau isu yang butuh respons segera | | **Tinggi** | Permintaan penting tapi belum darurat | | **Sedang** | Default untuk chat biasa | | **Rendah** | Pertanyaan ringan, follow-up non-urgent | Prioritas bisa diubah dari header chat di inbox. Saat prioritas berubah, sistem menghitung ulang batas waktu SLA dari waktu perubahan itu. ## Target default (kalau belum diatur sendiri) Saat SLA aktif, Kirimdev memakai target standar yang umum dipakai helpdesk WhatsApp: | Prioritas | Respon pertama | Penyelesaian | |-----------|----------------|--------------| | Sangat penting | 15 menit | 2 jam | | Tinggi | 30 menit | 4 jam | | Sedang | 1 jam | 8 jam | | Rendah | Tidak ada SLA | Tidak ada SLA | Angka di atas bisa disesuaikan sesuai kebutuhan. Kosongkan kolom target untuk prioritas tertentu jika Anda tidak ingin SLA berlaku di level itu. ## Cara mengatur SLA 1. Masuk ke [app.kirimdev.com](https://app.kirimdev.com) 2. Buka **Inbox Settings** → **Target SLA** (`/inbox-settings/sla`) 3. Pastikan toggle **Aktifkan SLA tracking** menyala 4. Isi target **respon pertama** dan **penyelesaian** (dalam menit) per prioritas 5. Simpan ![Halaman Target SLA di Inbox Settings — aktifkan tracking dan isi target per prioritas](/images/sla/sla-inbox-settings-target.png) Hanya **owner** atau **admin** organisasi yang bisa mengubah kebijakan SLA. **Tips mengatur target:** - Mulai dari default, lalu sesuaikan setelah 1–2 minggu lihat pola operasional Anda - Jangan terlalu ketat di awal — target yang tidak realistis membuat semua chat tampak "breach" - Untuk prioritas rendah, kosongkan target jika Anda tidak ingin memantau level itu ## Bagaimana SLA tampil di inbox? Setelah SLA aktif, Anda akan melihat beberapa hal di menu **WhatsApp → Chats** (`/chats`): ![Inbox dengan chip SLA, badge Lewat SLA, dan filter Berisiko / Sudah lewat](/images/sla/sla-inbox-breach-filter.png) ### Chip countdown Di daftar chat, muncul label waktu tersisa — misalnya `SLA 28m` — yang menghitung mundur sampai batas waktu habis. Warna berubah saat waktu hampir habis. ### Status breach Jika batas waktu terlewati tanpa memenuhi target, chat ditandai **Breached** (merah). Artinya: - **Respon pertama breach** — belum ada balasan agen sampai waktu habis - **Penyelesaian breach** — chat belum diselesaikan sampai batas penyelesaian habis Sistem memeriksa otomatis setiap menit. Status breach juga tercatat di **timeline aktivitas** kontak. ### Filter inbox Anda bisa memfilter chat berdasarkan: - **Prioritas** — tampilkan hanya urgent, tinggi, dll. - **Status SLA** — chat yang sudah breach atau yang masih dalam batas waktu Di header inbox juga ada ringkasan jumlah chat terbuka, urgent, dan breach — supaya supervisor bisa scan cepat. ## Alur kerja SLA (dari sisi agen) Berikut skenario umum: ``` Pelanggan kirim chat → Timer respon pertama & penyelesaian mulai → Agen membalas → Timer respon pertama selesai → Agen menyelesaikan chat (Resolve) → Timer penyelesaian selesai ``` **Hal yang perlu diketahui:** - **Chat baru** — timer dimulai saat pesan pertama masuk - **Pelanggan balas lagi** setelah agen sudah membalas — timer **penyelesaian** di-reset (pelanggan menunggu follow-up) - **Chat yang sudah resolved** dibuka lagi karena pelanggan chat — percakapan kembali terbuka dengan window penyelesaian baru - **Status on hold** — untuk menandai chat menunggu balasan pelanggan (misalnya menunggu bukti transfer). Timer penyelesaian tetap berjalan; fitur pause timer direncanakan untuk update mendatang ## Contoh praktis **Skenario:** Chat prioritas **Sangat penting**, SLA default aktif. 1. Pelanggan chat pukul 10:00 2. Agen harus membalas sebelum **10:15** (respon pertama 15 menit) 3. Chat harus diselesaikan sebelum **12:00** (penyelesaian 2 jam) 4. Jika pukul 10:16 belum ada balasan → chat ditandai **breach**, muncul di filter breach **Skenario:** Cs 3 orang, 50 chat terbuka. - Supervisor filter **Sangat penting** + urutkan yang countdown paling pendek - Agen fokus ke chip orange/merah dulu sebelum chat prioritas sedang ## SLA vs fitur CRM lain SLA adalah bagian dari modul helpdesk. Fitur terkait di Kirimdev: | Fitur | Fungsi | |-------|--------| | **Assign chat** | Tentukan agen penanggung jawab | | **Owner kontak** | Siapa PIC sales/CS untuk pelanggan itu | | **Pipeline & deal** | Track penjualan di kanban — terpisah dari SLA support | | **Catatan internal** | Catatan internal yang tidak terkirim ke pelanggan | Baca juga: [CRM & Inbox Kirimdev](/blog/crm-inbox-kirimdev) untuk gambaran lengkap modul CRM. ## Pertanyaan yang sering diajukan ### Apakah SLA mengirim notifikasi ke pelanggan? Tidak. SLA hanya untuk internal — pelanggan tidak melihat countdown atau status breach. ### Apakah SLA berlaku untuk chat lama sebelum fitur ini aktif? Chat yang sudah ada sebelum SLA diaktifkan memakai prioritas default (sedang). Timer baru dihitung saat ada aktivitas yang memicu perhitungan ulang (misalnya pesan masuk baru atau perubahan prioritas). ### Bisa matikan SLA sementara? Ya. Matikan toggle **Aktifkan SLA tracking** di halaman Target SLA. Timer pada chat terbuka akan dihapus dan tidak ada breach baru yang dicatat. ### Apakah SLA tersedia lewat API publik? Saat ini SLA adalah fitur **dashboard** — dikelola lewat inbox dan Inbox Settings, belum diekspos di Public API `/v1`. ## Mulai pakai SLA hari ini 1. Aktifkan SLA di **Inbox Settings → Target SLA** 2. Latih staff untuk set **prioritas** saat membuka chat penting 3. Cek filter **breach** sekali sehari sebagai rutinitas supervisor 4. Sesuaikan target menit setelah melihat data 1–2 minggu Dengan patokan waktu yang jelas, cs Anda tidak perlu menebak-nebak chat mana yang harus didahulukan — inbox Kirimdev yang memberi tahu. ## Artikel terkait - [CRM & Inbox Kirimdev](/blog/crm-inbox-kirimdev) — shared inbox, pipeline, dan kontak 360° - [5 use case WhatsApp bisnis](/blog/contoh-use-case-whatsapp-bisnis) - [Apa itu Kirimdev?](/blog/apa-itu-kirimdev-dan-fiturnya) — ringkasan platform lengkap --- ## https://kirimdev.com/blog/perbedaan-limit-broadcast-kirimdev-vs-meta Broadcast gagal di tengah jalan bisa bikin bingung: apakah salah paket Kirimdev, atau nomor kena batas WhatsApp? Jawaban singkatnya: **keduanya bisa**. Kirimdev punya kuota sesuai **paket langganan** Anda. Meta punya batas **inisiasi percakapan** (berapa nomor unik yang boleh Anda hubungi duluan per hari) — **bukan** limit balasan. Balas chat pelanggan di dalam jendela 24 jam **tidak** kena batas tier Meta. Artikel ini membedakan dua lapisan limit itu supaya Anda tahu harus cek ke mana. ## Dua lapisan limit — gambaran cepat ```text Anda klik "Kirim broadcast" │ ▼ ┌─────────────────────────────┐ │ KIRIMDEV (paket / billing) │ ← kuota bulanan, jumlah kampanye └─────────────────────────────┘ │ ▼ ┌─────────────────────────────┐ │ META (WhatsApp Cloud API) │ ← limit inisiasi harian, throughput, kualitas nomor └─────────────────────────────┘ │ ▼ Pesan sampai ke pelanggan ``` **Kirimdev** membatasi apa yang platform izinkan untuk organisasi Anda. **Meta** membatasi apa yang nomor WhatsApp bisnis boleh lakukan di ekosistem resmi mereka. Keduanya harus cukup. Paket Pro dengan sisa kuota besar tetap bisa mentok kalau tier inisiasi Meta cuma 250/hari. Sebaliknya, tier Meta 10.000/hari tidak membantu kalau kuota pesan bulanan Kirimdev sudah habis. ## Limit Meta — aturan WhatsApp Ini batas dari **Meta / WhatsApp**, bukan dari invoice Kirimdev. > **Penting:** Limit Meta **bukan** limit jumlah pesan secara umum. Yang dibatasi adalah **inisiasi** — Anda menghubungi pelanggan duluan (template, broadcast, pesan di luar jendela 24 jam). **Balasan** ke chat yang sudah masuk (customer service dalam jendela 24 jam) **tidak** memakan kuota tier ini. ### 1. Messaging tier (limit inisiasi — penerima unik per 24 jam) Yang paling sering disalahpahami saat broadcast. Ini batas **berapa nomor unik yang boleh Anda inisiasi** dalam 24 jam — bukan berapa banyak balasan yang boleh Anda kirim. | Tier Meta | Maks. inisiasi ke nomor unik / 24 jam | |-----------|---------------------------------------| | Awal | 250 | | Setelah scaling | 2.000 | | Naik bertahap | 10.000 → 100.000 → Unlimited | - Dihitung per **24 jam bergulir** (*moving window*), bukan reset tengah malam. - Sejak kebijakan Meta terbaru, limit dihitung di level **Business Portfolio** — semua nomor di portfolio yang sama **berbagi** kuota inisiasi harian itu. - Broadcast template di luar jendela 24 jam = **inisiasi bisnis** (*business-initiated*) → masuk hitungan tier. - Balasan CS di dalam jendela 24 jam setelah pelanggan chat dulu = **bukan inisiasi** → **tidak** memakan tier ini, tanpa batas tier (tetap ada throughput & kebijakan kualitas). **Cara cek:** [Meta Business Suite](https://business.facebook.com/) → WhatsApp Manager → **Messaging limits**. Meta menampilkan **tier aktif**, bukan sisa kuota harian yang tersisa. **Gejala mentok:** sebagian penerima gagal dengan kode `quota_exceeded` (artinya tier Meta habis, bukan kuota bulanan Kirimdev). Lihat [panduan kiriman gagal](https://docs.kirimdev.com/guides/failed-sends/). **Solusi:** pecah kampanye ke beberapa hari, naikkan tier lewat verifikasi bisnis + riwayat kirim sehat, jaga quality rating nomor. ### 2. Throughput (kecepatan kirim) Meta membatasi **berapa pesan per detik** yang boleh dikirim per nomor (default sekitar **80 pesan/detik**). Ini **bukan** kuota harian. Kalau kecepatan kelebihan, Meta mengembalikan error throughput (mis. kode `130429`) — biasanya sementara, bukan blokir seharian. Kirimdev mengatur kecepatan kirim broadcast supaya tidak menabrak batas throughput Meta. Broadcast besar bisa **berjalan bertahap** — itu normal, bukan error. ### 3. Limit kualitas & kebijakan Terpisah dari angka tier: - Laporan spam / rating kualitas turun → tier bisa **turun** atau nomor dibatasi - Template marketing ke penerima tanpa opt-in → ditolak (`marketing_opted_out`, `consent_required`) - Pelanggaran klasifikasi template → limit sementara dari Meta Ini tidak ada di halaman Billing Kirimdev — pantau di **WhatsApp Manager** dan ikuti [tips aman broadcast](/blog/tips-aman-broadcast-whatsapp). ## Limit Kirimdev — sesuai paket langganan Ini kuota **platform Kirimdev** untuk organisasi Anda. Muncul di dashboard billing / usage (bukan di Meta). ### 1. Pesan per bulan (`messages_per_month`) Setiap pesan keluar yang sukses (termasuk tiap penerima broadcast) mengurangi kuota bulanan organisasi. | Paket | Pesan / bulan | |-------|---------------| | Starter | 200.000 | | Pro | 500.000 | | Business | 1.000.000 | Angka mengikuti paket di [halaman harga](https://kirimdev.com/#pricing) — cek **Billing** di dashboard untuk sisa kuota organisasi Anda. **Gejala mentok:** - Saat **membuat** broadcast: ditolak jika jumlah audiens > sisa kuota bulanan (pesan error dalam bahasa Indonesia di detail broadcast). - Saat **mengirim**: penerima sisanya gagal dengan pesan *"Quota exceeded: monthly messages limit reached"*. **Solusi:** kurangi audiens, tunggu reset periode billing, atau **upgrade paket**. ### 2. Jumlah kampanye broadcast per bulan (`broadcasts_per_month`) Bukan jumlah penerima — ini **berapa kali** Anda boleh **memulai** kampanye broadcast baru dalam satu bulan. | Paket | Kampanye / bulan | |-------|------------------| | Free | 0 (fitur broadcast tidak tersedia) | | Starter | 2.000 | | Pro | 10.000 | | Business | 50.000 | Angka sama dengan baris **Broadcasts/month** di [halaman harga](https://kirimdev.com/#pricing). Satu broadcast ke 5.000 orang = **1 kampanye**, tapi mengonsumsi hingga 5.000 pesan dari kuota `messages_per_month`. ## Tabel perbandingan | | **Limit Kirimdev** | **Limit Meta** | |---|-------------------|----------------| | **Siapa yang atur** | Paket langganan Kirimdev | Meta / WhatsApp | | **Di mana cek** | Dashboard Kirimdev → Billing / usage | WhatsApp Manager → Messaging limits | | **Yang dibatasi** | Pesan per bulan, jumlah kampanye | Inisiasi ke penerima unik / 24 jam, throughput, kualitas | | **Reset** | Periode billing bulanan (Kirimdev) | 24 jam bergulir (tier Meta) | | **Upgrade** | Upgrade paket Kirimdev | Verifikasi bisnis + riwayat kirim sehat di Meta | | **Kirimdev bantu?** | Ya — tolak lebih awal kalau audiens > sisa kuota | Tier harian tetap tanggung jawab Anda | ## Skenario: limit mana yang kena duluan? **UMKM baru, tier Meta 250/hari, paket Starter (200.000 pesan/bulan)** Broadcast ke 500 orang → **Meta** yang membatasi (~250 terkirim, sisanya gagal tier). Kuota bulanan Kirimdev masih sisa. **Tier Meta 10.000/hari, paket Starter, sisa kuota pesan bulanan tinggal 100** Broadcast ke 200 orang → **Kirimdev** menolak di awal (audiens > sisa 100 pesan). Meta belum terlibat. **Paket Pro, tier Meta 2.000, broadcast 5.000 penerima** Kirimdev mulai kirim (kuota bulanan cukup). Setelah ~2.000 penerima unik dalam window 24 jam → **Meta** menghentikan sisanya (`quota_exceeded`). Besok atau setelah window bergeser, bisa lanjutkan sisa audiens dengan broadcast baru atau retry gagal. ## Checklist sebelum broadcast besar 1. **Sisa kuota pesan bulanan Kirimdev** ≥ jumlah penerima 2. **Sisa slot kampanye** `broadcasts_per_month` ≥ 1 3. **Tier inisiasi Meta** ≥ ukuran audiens (atau rencanakan pecah beberapa hari) 4. Template **Approved**, audiens **opt-in**, kategori template benar 5. Uji ke 10–50 nomor internal dulu ## Ringkasan - **Kirimdev** = langganan platform (berapa pesan & kampanye per bulan). - **Meta** = limit **inisiasi** percakapan (berapa orang unik boleh dihubungi duluan per hari), plus kualitas nomor & throughput. Balasan dalam jendela 24 jam tidak kena limit tier. - Error `quota_exceeded` di detail penerima broadcast biasanya = **tier inisiasi Meta** habis. - Broadcast gagal di awal dengan pesan kuota bulanan = **paket Kirimdev**. ## Bacaan lanjutan - [Recipe Broadcast (docs)](https://docs.kirimdev.com/recipes/broadcast-campaign/) — tier Meta & langkah dashboard - [Tips aman broadcast](/blog/tips-aman-broadcast-whatsapp) - [Kiriman gagal & kode error](https://docs.kirimdev.com/guides/failed-sends/) - [Rate limits API Kirimdev](https://docs.kirimdev.com/concepts/rate-limits/) — terpisah dari limit broadcast dashboard - [Messaging Limits — Meta](https://developers.facebook.com/docs/whatsapp/messaging-limits/) Pertanyaan soal paket atau kampanye besar? [hello@kirimdev.com](mailto:hello@kirimdev.com) --- ## https://kirimdev.com/blog/persiapan-sebelum-pakai-kirimdev Banyak yang baru ke WhatsApp Business API karena butuh broadcast atau integrasi sistem — lalu stuck saat connect nomor, verifikasi Meta, atau kuota kirim harian. Salah satu kebingungan umum: mengira **harus hapus WhatsApp di HP** padahal Kirimdev mendukung **mode coexistence** untuk nomor yang sudah jalan di WhatsApp Business app. Kebingungan lain: mengira **semua bisnis wajib verifikasi penuh sebelum mulai** — padahal tidak selalu; Meta **terkadang** meminta verifikasi bisnis, tergantung situasi akun Anda. Artikel ini bukan tutorial teknis; ini **checklist praktis** apa yang harus Anda siapkan di sisi Meta dan bisnis Anda sendiri. ## Checklist singkat | Yang disiapkan | Kenapa penting | |----------------|----------------| | Nomor & mode connect | Pilih **coexistence** (nomor sudah di WA Business app) atau **Cloud API saja** (nomor baru/kosong) | | Nama tampilan bisnis | Harus selaras dengan brand yang diverifikasi Meta | | Meta Business Manager | WABA dan otorisasi connect dikelola di sini | | Website bisnis aktif | Bukti bisnis nyata — dibutuhkan saat Meta meminta verifikasi | | Data verifikasi bisnis | **Tidak selalu diminta di awal**, tapi siapkan sejak awal kalau Meta memintanya | Kalau kelima poin di atas sudah jelas, proses connect di Kirimdev biasanya jauh lebih mulus — termasuk kalau verifikasi bisnis diminta di tengah jalan. ## Dua cara connect nomor di Kirimdev Saat **WhatsApp → Akun** → **Tambah Akun**, Kirimdev menawarkan beberapa jalur. Dua yang paling sering dipakai: ### Mode coexistence — nomor sudah jalan di HP Cocok kalau Anda **sudah pakai WhatsApp Business app** (ikon hijau) di HP dan tidak mau kehilangan akses di telepon. - Nomor **tetap aktif di HP** — Anda bisa tetap balas dari aplikasi - Chat dari HP **tersinkron** ke inbox Kirimdev (dashboard, API, webhook) - Tidak perlu hapus akun WhatsApp di nomor itu - Connect lewat **Embedded Signup Meta** (redirect ke Facebook, lalu kembali ke Kirimdev) **Yang perlu disiapkan untuk coexistence:** - Akun WhatsApp Business **aktif** di HP - Akses admin ke **Facebook Business portfolio** - Nomor **sudah terdaftar** di WhatsApp Business (bukan nomor kosong) Setelah pairing, Kirimdev men-sync kontak dan riwayat chat — prosesnya bisa beberapa menit. Statusnya terlihat di kartu nomor (`syncing` → `ready`). ### Cloud API saja — nomor baru atau dedicated Cocok untuk integrasi murni lewat API: backend, broadcast skala besar, atau nomor khusus channel bisnis. - Daftarkan **nomor baru** langsung ke Cloud API, atau - Pakai nomor yang **belum** punya akun WhatsApp aktif (hapus akun WA dulu kalau pernah dipakai) Nomor ini **tidak bisa** dipakai lagi di aplikasi WhatsApp / WhatsApp Business di HP setelah didaftarkan ke Cloud API. **Yang perlu disiapkan:** - Nomor yang belum terhubung ke WhatsApp pribadi atau WA Business app, **atau** bersedia menghapus akun WA di nomor itu - Akses admin ke Business Manager - Bisa terima **SMS atau telepon** untuk verifikasi nomor Ada juga opsi **manual setup** jika Anda punya Meta App sendiri dan ingin wizard 4 langkah dengan WABA ID + token. ### Mana yang dipilih? | Situasi Anda | Pilihan yang masuk akal | |--------------|-------------------------| | UMKM sudah balas order dari WA Business di HP | **Coexistence** | | Developer butuh API tanpa ganggu HP owner | **Cloud API saja** (nomor dedicated) | | Agency mau nomor terpisah per klien | Biasanya **Cloud API saja** | > **Catatan:** Beberapa fitur lanjutan (misalnya **WhatsApp Calling** di dashboard) hanya untuk nomor **Cloud API murni**, bukan coexistence. Untuk inbox, broadcast, dan integrasi API, coexistence sudah cukup untuk banyak yang. ## Kalau pilih Cloud API saja: nomor harus “kosong” Jalur **nomor baru / Cloud API only** tidak cocok untuk nomor yang masih aktif di: - WhatsApp pribadi di HP, atau - WhatsApp Business app di perangkat yang sama. Kalau nomor sudah dipakai di aplikasi, Anda harus **hapus akun WhatsApp** dulu (Settings → Account → Delete my account), atau gunakan nomor lain — **kecuali** Anda memilih **coexistence** (bagian di atas). **Tips praktis:** untuk jalur Cloud API murni, siapkan SIM/nomor dedikasi channel bisnis. Untuk UMKM yang sudah nyaman di HP, coexistence biasanya lebih cepat. ## Nama bisnis yang konsisten Saat onboarding Meta, Anda mengisi **display name** — nama yang muncul di chat pelanggan. Meta menolak nama yang: - Tidak ada hubungannya dengan bisnis Anda - Meniru brand lain - Terlalu generik ("Toko Online", "Customer Service") Pastikan nama di Meta, di website, dan di materi bisnis **selaras**. Inkonsistensi ini sering jadi alasan verifikasi ditunda. ## Meta Business Manager Kirimdev terhubung ke WhatsApp lewat **WhatsApp Business Account (WABA)** di [Meta Business Suite](https://business.facebook.com/). Anda perlu: 1. Akun **Business Manager** (bukan cuma Facebook Page pribadi) 2. Akses admin ke WABA yang akan dipakai 3. **System user** atau token dengan permission `whatsapp_business_messaging` — detail langkah connect ada di dashboard **WhatsApp → Accounts** setelah login Kirimdev Belum punya Business Manager? Buat gratis di [business.facebook.com](https://business.facebook.com/), lalu tambahkan Page atau akun Instagram bisnis Anda. > **Catatan:** Beberapa bisnis bisa mulai onboarding dengan Page Facebook atau profil Instagram bisnis. Tapi untuk **verifikasi bisnis penuh** setelah onboarding, Meta tetap meminta **website aktif** — lihat bagian berikutnya. ## Website bisnis yang bisa diakses publik Meta mewajibkan bisnis punya situs yang: - Bisa dibuka siapa saja (bukan hanya Google Form atau profil sosmed) - Menampilkan **nama bisnis** dan **produk/layanan** dengan jelas - Memuat **kontak** dan **alamat** (untuk proses verifikasi Facebook Business) Belum punya website? Satu halaman landing sederhana — nama, deskripsi layanan, email/telepon, alamat — sudah cukup untuk memulai. Yang penting **live** dan konsisten dengan data yang Anda kirim ke Meta. Tanpa website, Anda masih bisa **connect nomor** dan mulai uji coba di Kirimdev — tapi verifikasi bisnis penuh akan tertunda sampai situs memenuhi syarat. ## Verifikasi bisnis Meta — terkadang diminta **Tidak semua akun langsung diminta verifikasi penuh** saat pertama connect. Banyak yang bisa mulai pakai Kirimdev (inbox, template, API) dengan batas kirim awal **250** penerima unik per 24 jam. Namun Meta **bisa meminta verifikasi bisnis** kapan saja, misalnya saat: - Anda ingin **naikkan batas kirim** harian ke tier berikutnya - Nama bisnis, industri, atau wilayah Anda perlu **validasi tambahan** - Meta mendeteksi **ketidakselarasan** antara nama tampilan, website, dan dokumen - Ada permintaan fitur atau peninjauan kebijakan di Business Manager Kalau diminta, prosesnya lewat **Business Settings → Security Center → Business verification** di [Meta Business Manager](https://business.facebook.com/). Biasanya perlu: - Nama legal bisnis dan alamat - Dokumen legal (NIB, akta, atau surat keterangan usaha — tergantung jenis bisnis dan negara) - Website aktif yang **selaras** dengan nama dan profil bisnis yang Anda daftarkan **Tips praktis:** Jangan tunggu sampai Meta meminta baru buru-buru siapkan website atau dokumen. Siapkan data yang konsisten sejak awal — connect di Kirimdev tetap bisa jalan sambil menunggu verifikasi selesai. ## Setelah persiapan: daftar dan connect di Kirimdev Kalau checklist di atas sudah oke: 1. **Daftar** di [app.kirimdev.com/sign-up](https://app.kirimdev.com/sign-up) — verifikasi email, buat organisasi 2. **Add Account** di **WhatsApp → Akun** (`/whatsapp`) — klik **Tambah Akun**, pilih **Coexistence** (nomor di HP) atau **Nomor baru (Cloud API)** / setup manual. Panduan coexistence: [Cara connect coexistence](/blog/cara-connect-coexistence-whatsapp) 3. **Uji kirim** lewat dashboard Chats atau [Quickstart API](https://docs.kirimdev.com/quickstart/) Connect coexistence butuh browser desktop (flow redirect Meta). Setelah berhasil, tunggu sync selesai sebelum mengandalkan riwayat chat lama di dashboard. ## Verifikasi Meta vs batas kirim harian Setelah bisnis terverifikasi (atau saat Meta sudah mengenali akun Anda cukup baik), status verifikasi Facebook Business mempengaruhi **berapa banyak penerima unik** yang bisa Anda hubungi per 24 jam (messaging tier): | Situasi | Perkiraan batas | |---------|-----------------| | Bisnis belum terverifikasi penuh | Mulai dari **250** penerima unik / 24 jam | | Bisnis terverifikasi + riwayat kirim sehat | Naik bertahap: 2.000 → 10.000 → 100.000 → unlimited | Artinya: **belum verifikasi bukan berarti tidak bisa pakai Kirimdev.** Anda tetap bisa kirim template, jalankan inbox, dan integrasi API — hanya volume harian masih terbatas sampai Meta menaikkan tier. Cara naikkan tier: - Selesaikan **Business Verification** di Meta Business Manager - Jaga **quality rating** nomor (hindari spam, hormati opt-in) - Kirim ke audiens yang relevan; laporan spam menurunkan limit Detail tier dan broadcast: [recipe Broadcast](https://docs.kirimdev.com/recipes/broadcast-campaign/) · tips aman: [Tips aman broadcast](/blog/tips-aman-broadcast-whatsapp) ## Pertanyaan yang sering muncul ### Apakah harus nomor baru? **Tidak selalu.** Kalau nomor sudah jalan di WhatsApp Business app, pakai **coexistence** — nomor tetap di HP, plus terhubung ke Kirimdev. Kalau mau nomor khusus API tanpa HP, pakai jalur **Cloud API saja**; nomor itu harus belum punya akun WhatsApp aktif (atau akun WA dihapus dulu). ### Apa itu mode coexistence? Pairing antara WhatsApp Business app di HP dan Cloud API lewat Meta. Anda balas dari HP **atau** dashboard/API; pesan tersinkron. Cocok untuk bisnis yang sudah terbiasa dengan WA di telepon tapi ingin inbox bersama, broadcast, atau integrasi sistem. ### Kenapa Meta minta Business Manager? Cloud API tidak lewat aplikasi WhatsApp di HP. Semua kredensial, template, dan nomor dikelola lewat ekosistem Meta for Business. Kirimdev hanya layer di atasnya — tanpa Business Manager, tidak ada WABA untuk dihubungkan. ### Apakah semua bisnis wajib verifikasi dulu? **Tidak.** Banyak akun bisa connect dan mulai kirim dengan batas awal tanpa verifikasi penuh. Tapi Meta **terkadang meminta verifikasi** — bisa saat onboarding, bisa juga belakangan saat Anda ingin naik tier atau ada peninjauan data bisnis. Siapkan website dan dokumen legal sejak awal supaya tidak terhenti di tengah jalan. ### Bisa mulai tanpa website? Untuk **connect dan uji coba**, sering bisa. Untuk **verifikasi bisnis** (kalau diminta Meta) dan limit kirim yang lebih besar, website aktif hampir selalu diperlukan. Jangan tunda pembuatan situs sederhana kalau rencana Anda broadcast skala menengah ke atas. ### Berapa lama sampai "fully ready"? - **Connect di Kirimdev:** menit, kalau otorisasi Meta berhasil - **Sync coexistence** (kontak & riwayat chat): beberapa menit setelah pairing - **Verifikasi Meta:** bisa beberapa hari sampai seminggu, tergantung kelengkapan dokumen dan antrian Meta - **Naik tier kirim:** bertahap seiring volume dan kualitas pengiriman — bukan instan ### Apa langkah setelah checklist ini? - [Quickstart](https://docs.kirimdev.com/quickstart/) — API key sampai pesan pertama - [Apa itu Kirimdev?](/blog/apa-itu-kirimdev-dan-fiturnya) — ringkasan fitur platform - [hello@kirimdev.com](mailto:hello@kirimdev.com) — bantuan onboarding --- ## https://kirimdev.com/blog/tips-aman-broadcast-whatsapp Broadcast WhatsApp terlihat sederhana: pilih template, upload CSV, klik kirim. Tapi di balik layar, **Meta menilai kualitas nomor bisnis Anda** setiap hari. Melanggar aturan — terutama promo tanpa izin — bisa menurunkan tier kirim, membatasi nomor, bahkan menangguhkan akun WABA. Artikel ini ringkasan praktis aturan WhatsApp yang paling relevan saat broadcast, plus cara memakainya dengan aman di Kirimdev. > **Penting:** Mengikuti tips ini **menurunkan risiko**, bukan menjamin nomor tidak pernah dibatasi. Wasapada layanan yang menjanjikan "anti banned" — di ekosistem WhatsApp Business resmi, tidak ada jaminan seperti itu. ## Aturan dasar: broadcast ≠ chat biasa | | Chat / balasan agen | Broadcast | |---|---|---| | **Kapan** | Pelanggan chat dalam 24 jam terakhir | Kapan saja, ke banyak orang sekaligus | | **Bentuk pesan** | Teks, media, tombol interaktif | **Hanya template** yang sudah disetujui Meta | | **Risiko pelanggaran** | Rendah jika kontekstual | **Lebih tinggi** jika spam atau tanpa opt-in | Di luar jendela 24 jam, WhatsApp **hanya** mengizinkan **message template** — bukan teks bebas. Broadcast di Kirimdev (`/broadcasts`) memang dirancang untuk itu: satu template disetujui, dikirim ke banyak penerima. Detail jendela 24 jam: [FAQ template](https://docs.kirimdev.com/guides/24h-window-and-templates/) ## 1. Opt-in wajib — simpan buktinya Kirim broadcast marketing hanya ke orang yang **sudah setuju** menerima pesan dari Anda (checkbox di checkout, form newsletter, balasan "YA" tercatat, dll.). Tanpa izin eksplisit: - Penerima melaporkan spam → **quality rating** nomor turun - Tier harian bisa **mengecil** (dari 10.000 penerima/hari jadi 250) - Kirimdev bisa menolak kiriman dengan `consent_required` atau `marketing_opted_out` sebelum sampai ke Meta **Praktik aman:** - Catat **kapan** dan **lewat channel apa** pelanggan opt-in - Jangan beli database nomor WA — sumber tidak jelas = risiko tinggi - Segmentasi lewat **label** di Kirimdev (mis. `newsletter`, `pelanggan-aktif`) — jangan blast ke seluruh kontak tanpa filter Aturan Kirimdev: [Acceptable Use Policy](/aup) · Meta: [Getting opt-in](https://developers.facebook.com/docs/whatsapp/overview/getting-opt-in/) ## 2. Pilih kategori template dengan jujur Setiap template punya kategori Meta: | Kategori | Cocok untuk | Contoh | |----------|-------------|--------| | **UTILITY** | Update transaksional pasca-pembelian | Pesanan dikirim, jadwal janji, pembayaran diterima | | **MARKETING** | Promo, diskon, re-engagement | Flash sale, katalog baru, undangan event | | **AUTHENTICATION** | OTP, verifikasi | Kode login sekali pakai | **Jangan** daftarkan template promo sebagai UTILITY supaya lolos review lebih cepat — Meta bisa menolak, pause template, atau menurunkan trust score. Template marketing juga punya aturan opt-in lebih ketat. Buat & kelola template di **WhatsApp → Templates** (`/templates`) atau lewat API. Status harus **Approved** sebelum broadcast. ## 3. Hormati opt-out marketing Pelanggan bisa berhenti menerima pesan marketing lewat menu di aplikasi WhatsApp mereka. Setelah opt-out: - Kirimdev mengembalikan error **`marketing_opted_out`** untuk template kategori MARKETING - Jangan masukkan mereka lagi ke kampanye promo - Tunggu event **`resume`** lewat webhook jika mereka opt-in kembali Broadcast ke daftar lama tanpa cek status opt-out = cara cepat merusak reputasi nomor. ## 4. Ikuti batas kirim harian (messaging tier) Meta membatasi **berapa banyak nomor unik** yang boleh Anda hubungi per 24 jam (tier portfolio): | Tier | Maks. penerima unik / 24 jam | |------|------------------------------| | Baru | 250 | | Scaling | 2.000 → 10.000 → 100.000 → Unlimited | Broadcast besar di hari pertama sering **mentok kuota** — itu normal, bukan bug Kirimdev. Solusi: - Pecah kampanye ke beberapa hari - **Warm-up** nomor baru: mulai 50–100 penerima, naikkan volume minggu demi minggu - Cek tier di **Meta Business Suite → WhatsApp Manager → Messaging limits** Kirimdev mengatur pacing agar tidak melebihi throughput Meta (~80 msg/detik); **tier harian** tetap tanggung jawab perencanaan kampanye Anda. Panduan lengkap: [recipe Broadcast](https://docs.kirimdev.com/recipes/broadcast-campaign/) ## 5. Checklist sebelum klik "Kirim" - [ ] Template status **Approved**, bahasa & variabel sudah diuji ke nomor internal - [ ] Audiens **opt-in** — pakai label atau CSV dengan izin tercatat - [ ] Kategori template sesuai isi (marketing vs utility) - [ ] Volume kampanye **di bawah** tier harian portfolio - [ ] Jam kirim wajar (hindari dini hari; pertimbangkan zona waktu) - [ ] Ada cara jelas untuk customer **berhenti berlangganan** (untuk marketing) - [ ] Uji kecil dulu: 10–50 penerima internal, baru scale ## 6. Kesalahan yang sering bikin nomor bermasalah **Blast promo ke seluruh database tanpa segmentasi** Meski teknis terkirim, banyak yang tidak kenal Anda → laporan spam → tier turun. **Template marketing ke pelanggan yang cuma pernah terima notifikasi order** Mereka tidak expect promo → opt-out massal. **Retry semua yang gagal tanpa cek penyebab** Gagal karena kuota habis? Tunggu window 24 jam. Gagal karena nomor tidak terdaftar WA? Bersihkan daftar, jangan kirim ulang. **Frekuensi terlalu agresif** Flash sale setiap hari ke basis yang sama = fatigue + block. **Konten misleading** Janji hadiah palsu, link phishing, atau nama brand yang disamarkan — melanggar aturan WhatsApp dan [AUP Kirimdev](/aup). ## 7. Apa yang Kirimdev bantu cek Sebelum pesan masuk antrean, API Kirimdev bisa menolak lebih awal dengan kode jelas: | Kode error | Artinya | |------------|---------| | `marketing_opted_out` | Penerima sudah opt-out marketing | | `consent_required` | Belum ada opt-in | | `account_restricted` | Akun/nomor dalam status terbatas dari Meta | | `outside_24h_window` | Kirim teks bebas di luar jendela 24 jam (bukan untuk broadcast template) | Ini melindungi quality rating Anda — gagal di Kirimdev lebih murah daripada gagal + penalti di Meta. ## Ringkasan satu kalimat **Broadcast aman = template yang benar + audiens yang setuju + volume yang realistis + konten yang jujur.** Kalau ragu, mulai dari kampanye kecil ke label "pelanggan aktif", pantau hasil di halaman detail broadcast, baru scale. ## Bacaan lanjutan - [Broadcast campaign (docs)](https://docs.kirimdev.com/recipes/broadcast-campaign/) — langkah dashboard + tier Meta - [Jendela 24 jam & template FAQ](https://docs.kirimdev.com/guides/24h-window-and-templates/) - [Menangani kiriman gagal](https://docs.kirimdev.com/guides/failed-sends/) - [Fitur Broadcasts Kirimdev](/features/broadcasts) - [WhatsApp Business Policy](https://www.whatsapp.com/legal/business-policy) · [Messaging Policy](https://www.whatsapp.com/legal/messaging-policy) Ada pertanyaan soal kampanye pertama Anda? [hello@kirimdev.com](mailto:hello@kirimdev.com) --- ## https://kirimdev.com/blog/variabel-template-broadcast-kirimdev Saat broadcast WhatsApp, pesan yang dikirim harus memakai **template** — format yang sudah disetujui Meta. Supaya tidak terasa generik, template biasanya punya bagian yang isinya bisa beda-beda per pelanggan: nama, kode promo, nomor order, tanggal event, dan sejenisnya. Di Kirimdev, bagian itu disebut **variabel template**. Artikel ini menjelaskan cara mengisinya saat Anda membuat broadcast. ## Apa itu variabel template? Saat membuat template di **WhatsApp → Templates**, teks pesan bisa memuat tanda `{{1}}`, `{{2}}`, `{{3}}`, dan seterusnya. Angkanya urut — bukan nama bebas seperti `{nama}`. Contoh isi template: > Halo **{{1}}**, pesanan **{{2}}** sudah dikirim. Estimasi tiba **{{3}}**. Terima kasih. Saat broadcast dijalankan, Kirimdev mengisi otomatis. Budi bisa menerima: > Halo **Budi**, pesanan **ORD-8821** sudah dikirim. Estimasi tiba **25 Juni**. Terima kasih. Pelanggan lain dapat pesan dengan **bentuk yang sama**, tapi isi di tengahnya menyesuaikan data masing-masing. Kalau template Anda tidak memakai `{{1}}`, `{{2}}`, dan sejenisnya, pesan dikirim apa adanya ke semua penerima — tidak ada yang perlu diisi. Saat membuat template, variabel **tidak boleh** menempati **awal atau akhir** teks body — harus ada kalimat tetap sebelum variabel pertama dan setelah variabel terakhir. Kalau tidak, Meta menolak template saat review. ## Langkah mengisi variabel di broadcast 1. Masuk ke [app.kirimdev.com](https://app.kirimdev.com) 2. Buka **WhatsApp → Broadcasts**, lalu **Buat Broadcast** 3. Pilih template yang statusnya **Approved** 4. Jika template punya variabel, langkah **Variabel Template** akan muncul Sebelum kirim ke banyak nomor, cek **preview** di sisi kanan. Pastikan isi pesan sudah benar. ## Tiga cara mengisi variabel ### Isi manual — teks sama untuk semua Cara paling sederhana. Cocok jika isi variabel sama untuk setiap penerima, misalnya potongan harga atau tanggal acara. Template: `Promo potongan {{1}} berlaku sampai {{2}}. Info lengkap ada di website kami.` Anda isi variabel pertama dengan `20%` dan variabel kedua dengan `30 Juni 2026`. Semua penerima mendapat pesan yang identik. Cara ini dipakai saat broadcast ke semua kontak, per label, atau pilih kontak manual. ### Ambil nama dari kontak Jika yang perlu diisi hanya **nama pelanggan**, pilih opsi **Nama kontak** di form — Kirimdev mengambilnya dari profil kontak yang sudah tersimpan. Kontak yang belum punya nama akan dikirim dengan bagian itu kosong. Anda bisa mengisi teks cadangan jika diperlukan. Praktis untuk broadcast ke daftar kontak yang sudah ada di Kirimdev, tanpa perlu upload file. ### Upload CSV — isi beda per baris Gunakan cara ini jika setiap penerima perlu kombinasi isi yang berbeda, misalnya nama plus kode voucher unik, atau nama plus nomor invoice. Upload file CSV di tab **Impor CSV**. Contoh format: | phone_number | name | {{1}} | {{2}} | |-------|------|-------|-------| | +628123456789 | Budi | Budi | KODE-A1 | | +628987654321 | Siti | Siti | KODE-B2 | Kolom **phone_number** wajib ada. Disarankan memakai format **+62...** Kolom `name` opsional. Untuk isi variabel body, buat kolom dengan nama persis `{{1}}`, `{{2}}`, dan seterusnya — sesuai urutan di template. Setelah memilih template, Kirimdev menyediakan **contoh CSV** yang bisa diunduh. Tinggal isi datanya di Excel atau Google Sheets. ## Contoh penggunaan **Broadcast promo dengan kode unik** Template: *Hai {{1}}, promo potongan {{2}} dengan kode {{3}}. Segera gunakan sebelum habis.* Andi menerima kode ANDI15, Rina menerima RINA15 — promonya sama, kodenya berbeda. Siapkan CSV dengan kolom `phone_number` dan isi variabel per baris. **Pengumuman libur** Template: *Kami informasikan {{1}} libur tanggal {{2}}. Pesanan setelah tanggal itu diproses hari kerja berikutnya.* Isi manual: `Toko Kami` dan `17 Agustus 2026`. Semua penerima mendapat pesan yang sama. **Update status order** Template: *Halo {{1}}, pesanan {{2}} status: {{3}}. Hubungi kami jika ada pertanyaan.* Siapkan CSV berisi kolom `phone_number` dan `{{1}}`, `{{2}}`, `{{3}}` untuk setiap baris. ## Variabel di header dan tombol Sebagian besar variabel ada di teks body. Template kadang juga punya bagian lain: - **Header teks** — diisi manual atau dari nama kontak - **Header gambar atau video** — upload satu file, sama untuk semua penerima - **Tombol link** — bagian akhir URL bisa disesuaikan per kampanye - **Tombol salin kode** — isi kode kupon yang muncul di tombol Untuk broadcast ke ribuan orang, gambar header biasanya satu file untuk seluruh kampanye. Yang paling sering beda per penerima adalah teks isi pesan. ## Kesalahan yang sering terjadi - **Variabel di awal atau akhir teks** — Meta menolak template jika `{{1}}` ada di baris pertama tanpa teks sebelumnya, atau variabel terakhir langsung di akhir pesan tanpa kalimat setelahnya. - **Variabel belum lengkap** — template meminta tiga bagian, tapi hanya dua yang diisi. Pesan bisa gagal terkirim. - **Nama kolom CSV salah** — harus `{{1}}`, `{{2}}`, bukan `nama` atau `var1`, kecuali memang memakai fitur nama kontak. - **Format nomor tidak standar** — tanpa kode negara atau digit kurang, baris tersebut ditolak saat import. - **Template belum disetujui** — cek status di **WhatsApp → Templates**. Harus **Approved**; jika perlu, klik **Sinkron** terlebih dahulu. - **Pesan terlalu panjang** — nama panjang ditambah teks template penuh bisa melewati batas WhatsApp. Perhatikan peringatan di preview. ## Sebelum kirim ke banyak penerima Kirim uji coba dulu ke nomor Anda sendiri atau satu dua kontak internal. Lihat pesan yang benar-benar masuk di WhatsApp, jangan hanya mengandalkan preview. Jika memakai CSV, coba **10 baris** dulu sebelum naik ke ribuan. Simpan file CSV asli — berguna jika nanti perlu melanjutkan atau mengirim ulang penerima yang gagal. ## Template tanpa variabel Tidak semua broadcast perlu memanggil nama pelanggan. Pengumuman jam buka, info libur, atau undangan event cukup dengan template tanpa `{{1}}` — pilih penerima, lalu kirim. ## Artikel terkait - [Tips aman broadcast WhatsApp](/blog/tips-aman-broadcast-whatsapp) - [Perbedaan limit broadcast Kirimdev vs Meta](/blog/perbedaan-limit-broadcast-kirimdev-vs-meta) - [5 use case WhatsApp bisnis](/blog/contoh-use-case-whatsapp-bisnis) --- ## https://kirimdev.com/blog/whatsapp-calling-kirimdev Pelanggan menelepon nomor WhatsApp Business Anda dari HP — agen bisa **menjawab dan berbicara lewat browser** di dashboard Kirimdev, tanpa aplikasi telepon terpisah. Audio mengalir langsung antara HP pelanggan dan relay Meta; **server Kirimdev tidak membawa suara**, hanya sinyal panggilan dan status. > **Penting — saat ini hanya panggilan masuk (*inbound*).** Agen belum bisa menelepon pelanggan dari dashboard (*outbound*). Video, transfer, dan hold juga belum tersedia. ## Untuk siapa? Cocok untuk tim CS atau sales yang sudah kerja di [inbox bersama](/blog/crm-inbox-kirimdev) dan ingin pelanggan bisa **telepon** selain chat — satu thread riwayat, satu layar kerja. ## Persyaratan singkat | Syarat | Keterangan | |--------|------------| | **Tipe nomor** | **Nomor Cloud API** (nomor baru / dedicated) — bukan [coexistence](/blog/cara-connect-coexistence-whatsapp) | | **Add-on** | **WhatsApp Calling** aktif — Rp 25.000/bulan per organisasi (Billing → Add-ons) | | **Meta** | Voice calling diaktifkan untuk nomor di [WhatsApp Manager](https://business.facebook.com/latest/whatsapp_manager/phone_numbers) (lihat [langkah aktivasi](#aktivasi)) | | **Agen online** | Tab dashboard terbuka; minimal satu agen online saat panggilan masuk | | **Browser** | Izinkan akses mikrofon; headset disarankan | Biaya **per menit** dari Meta (jika berlaku) ditagih **langsung ke akun WhatsApp Business** Anda — terpisah dari langganan Kirimdev. Pastikan metode pembayaran bisnis sudah terverifikasi di Meta. ## Cara kerja di dashboard 1. Pelanggan menelepon nomor bisnis Anda. 2. Kirimdev menentukan siapa yang berdering: - Ada **agen penugasan** yang **online** → hanya agen itu. - Tidak ada / offline → **semua agen online** di tim. - **Tidak ada agen online** → panggilan ditolak otomatis, tercatat **terlewat**. 3. Widget **Incoming WhatsApp call** muncul di tengah layar. 4. Agen pilih **Answer** (jawab) atau **Decline** (tolak). 5. Saat aktif: **Mute**, **Hang up**, dan timer durasi. Widget tetap ada saat Anda pindah menu (Chats, Contacts, CRM) selama tab tidak ditutup. Meta memberi jendela sekitar **30–60 detik** untuk menjawab. Lewat itu, panggilan berakhir. ## Riwayat & analitik - **Thread chat** — entri riwayat panggilan di samping pesan (dijawab / terlewat, durasi). - **Analitik → tab Panggilan** — total masuk, dijawab, terlewat, durasi rata-rata, grafik harian. ## Aktivasi 1. Buka **Billing → Add-ons** di dashboard. 2. Beli add-on **WhatsApp Calling** (dompet organisasi atau invoice Duitku). 3. Aktifkan voice calling di Meta jika belum: - Buka [WhatsApp Manager → Nomor Telepon](https://business.facebook.com/latest/whatsapp_manager/phone_numbers) - Klik **nomor telepon** Anda - Masuk ke **Pengaturan telepon** (*Phone settings*) - Aktifkan **Izinkan telepon suara** (*Allow voice calls*) 4. Uji dengan panggilan masuk dari nomor lain. ## Yang belum tersedia - Panggilan **keluar** (agen → pelanggan) - **Video** dan screen share - Nomor **coexistence** - Dering saat **tab tertutup** (beda dengan notifikasi push pesan masuk) - Kontrol lewat **Public API / SDK** — hanya dashboard ## Troubleshooting cepat | Masalah | Cek | |---------|-----| | Tidak ada dering | Tab dashboard terbuka? Ada agen online? | | Tidak bisa jawab (403) | Add-on aktif? Nomor Cloud API (bukan coexistence)? | | Audio mati | Izin mikrofon browser; coba headset / jaringan lain | | Semua terlewat | Tidak ada agen online saat masuk — atur shift atau buka dashboard | ## Langkah berikutnya - [CRM & Inbox Kirimdev](/blog/crm-inbox-kirimdev) — shared inbox + SLA + pipeline - [Apa itu Kirimdev?](/blog/apa-itu-kirimdev-dan-fiturnya) — ringkasan platform - [Persiapan sebelum pakai Kirimdev](/blog/persiapan-sebelum-pakai-kirimdev) — checklist nomor & billing Meta ---