Menghubungkan WhatsApp ke Accurate/Jurnal: 6 Langkah Aman

Menghubungkan WhatsApp ke Accurate atau Jurnal bisa dilakukan lewat WhatsApp Business Platform, sebuah lapisan workflow, lalu API resmi software akuntansi, tetapi order sebaiknya divalidasi dan di-approve sebelum diposting sebagai transaksi final. Alur yang aman mengubah chat menjadi data terstruktur, menahan field yang belum jelas, mencegah catatan ganda, dan menyimpan jejak dari pesan sumber sampai nomor transaksi.
Hasil yang dicari bukan sekadar “chat masuk ke pembukuan”. Di case study otomasi order WhatsApp Rosalie, agent menerima order, mengonfirmasi pembayaran, dan memesan Gojek dalam percakapan yang sama; timnya tinggal approve exception. Kalau Accurate atau Jurnal menjadi buku sumbermu, pola kontrol yang sama perlu diteruskan sampai pencatatan penjualan.
Key takeaways
- Bisa diotomasi lewat API resmi: WhatsApp Business Platform menyediakan webhook untuk integrasi; workflow lalu membaca data order dan, setelah lolos aturanmu, menulis transaksi lewat API Accurate Online atau Mekari Jurnal.
- Jangan langsung bikin invoice final: Chat sering belum punya pelanggan, SKU, jumlah, pajak, gudang, ongkir, atau syarat pembayaran yang pasti. Simpan sebagai draft atau antrean review sampai field wajib lengkap.
- Approval ditempatkan berdasarkan risiko: Order standar dari pelanggan dan produk yang sudah dikenal bisa diproses otomatis; harga khusus, pelanggan baru, retur, diskon, atau data pajak yang berubah berhenti ke orang yang berwenang.
- Anti-duplikat itu wajib: Satu ID pesan atau ID order harus selalu menunjuk ke catatan yang sama, jadi retry webhook atau chat yang diteruskan nggak membuat penjualan kedua.
- Mulai dari satu jenis order: Pilot paling aman memakai satu kanal, satu entitas, satu katalog aktif, dan satu definisi transaksi selesai sebelum menambah pembayaran, stok, atau pengiriman.
Bagaimana menghubungkan WhatsApp ke Accurate atau Jurnal?
Gunakan enam langkah ini sebagai desain minimum, bukan sekadar checklist teknis.
| Langkah | Yang terjadi | Di mana orang approve |
|---|---|---|
| 1. Terima pesan | Workflow menerima event pesan lewat webhook WhatsApp Business Platform. | Nggak perlu approval; pesan hanya diterima dan dicatat. |
| 2. Bentuk draft order | Nama pelanggan, produk, jumlah, harga, alamat, pajak, dan cara bayar dipetakan ke field terstruktur. | Admin menjawab kalau ada field yang ambigu atau nggak ada di master data. |
| 3. Validasi | Workflow mengecek pelanggan, SKU, harga, stok yang relevan, pajak, dan duplikasi terhadap sumber yang disetujui. | Finance atau sales approve exception sesuai jenisnya. |
| 4. Tulis transaksi | Data yang lolos dibuat sebagai sales order, draft invoice, atau invoice sesuai kebijakan bisnismu. | Transaksi berdampak ke buku atau stok bisa ditahan sampai approval. |
| 5. Simpan referensi | ID pesan, ID order internal, dan ID transaksi akuntansi disimpan sebagai satu rantai audit. | Reviewer bisa membuka sumber chat saat ada selisih. |
| 6. Balikkan status | Nomor order, status pencatatan, atau permintaan koreksi dikirim ke staf atau pelanggan. | Orang menangani kegagalan dan perubahan setelah posting. |
Developer Hub WhatsApp menjelaskan bahwa WhatsApp Business Platform dibuat untuk otomasi dan integrasi serta menyediakan webhook. Artinya, WhatsApp adalah pintu masuk; logika order dan koneksi ke pembukuan tetap harus kamu desain.
Pilih jenis transaksi target sebelum membangun. Kalau order masih bisa berubah, sales order atau draft lebih aman daripada invoice final. Kalau bisnismu hanya mengakui penjualan setelah pembayaran atau pengiriman tertentu, workflow harus menunggu event itu. Definisi “tercatat” perlu datang dari finance, bukan dari developer.
Apa beda setup Accurate Online dan Mekari Jurnal?
Keduanya punya jalur API, tetapi jangan menganggap izin, endpoint, dan flow autentikasinya sama.
| Area | Accurate Online | Mekari Jurnal |
|---|---|---|
| Akses aplikasi | Daftarkan aplikasi di Area Developer Accurate Online; untuk penggunaan internal tersedia jalur API Token, sedangkan aplikasi dengan otorisasi pengguna bisa memakai OAuth. | Mekari menautkan dokumentasi Jurnal API dari halaman Product APIs. Konfirmasi akses yang tersedia untuk akunmu sebelum build. |
| Batas akses | Minta hanya akses baca atau tulis yang dibutuhkan workflow. | Konfirmasi metode autentikasi, endpoint, dan batas akses langsung dari dokumentasi Jurnal untuk akunmu. |
| Struktur penjualan | Dokumentasi Accurate menunjukkan API bisa membaca dan menulis database, termasuk membuat faktur penjualan. | Mapping transaksi harus mengikuti dokumentasi Jurnal API dan struktur akunmu. |
| Sinkron balik | Baca kembali respons API dan ID record Accurate, lalu simpan bersama ID order sumber. | Simpan respons dan ID transaksi Jurnal bersama ID order sumber. |
Untuk Accurate Online, dokumentasi resminya meminta aplikasi didaftarkan, lalu akses diberikan dengan kredensial dan scope. Contoh API resminya juga menekankan bahwa database perlu dipilih dan dibuka sebelum data di dalamnya dibaca atau ditulis. Jadi “akun Accurate sudah ada” belum berarti integrasi sudah siap.
Untuk Jurnal, dokumentasi Mekari menempatkan Jurnal di daftar Product APIs dan menautkan dokumentasi API produknya. Jadikan verifikasi akses, autentikasi, endpoint, dan batas akses sebagai langkah discovery, bukan kejutan setelah workflow selesai dibuat.
Data apa yang wajib ada sebelum penjualan dicatat?
Daftar field akhirnya mengikuti konfigurasi Accurate atau Jurnal kamu, tetapi kelompok data ini hampir selalu perlu keputusan yang jelas.
- Identitas pelanggan: Nomor WhatsApp bukan selalu nama customer di pembukuan. Tentukan cara mencocokkan pelanggan lama dan kapan contact baru boleh dibuat.
- Produk dan jumlah: Bahasa chat seperti “paket biasa” harus dipetakan ke SKU aktif dan unit yang benar. Kalau ada lebih dari satu kandidat, agent harus bertanya, bukan menebak.
- Harga, diskon, dan pajak: Ambil dari master data atau aturan yang di-approve. Harga yang diketik pelanggan bukan sumber kebenaran untuk pembukuan.
- Gudang dan pemenuhan: Kalau penjualan mengurangi stok, lokasi barang dan waktu pengakuannya harus eksplisit supaya order WhatsApp nggak mengambil stok dari gudang yang salah.
- Pembayaran dan termin: Bedakan bukti transfer yang baru dikirim, pembayaran yang sudah terverifikasi, dan piutang. Screenshot bukan konfirmasi dana masuk.
- Referensi sumber: Simpan ID pesan, waktu, nomor pelanggan, ID workflow, dan ID transaksi tujuan agar finance bisa menelusuri satu catatan tanpa mencari manual di seluruh inbox.
Seperti apa worked example-nya?

Bayangkan pelanggan lama distributor menulis, “Kirim paket refill yang biasa ke cabang Kemang, transfer sore ini.” Sistem mengenali nomor WhatsApp, tapi frasa “paket yang biasa” cocok ke beberapa SKU dan chat belum menjelaskan jumlah. Workflow yang aman nggak langsung membuat invoice.
Agent membalas dengan pilihan produk dari katalog yang berlaku, meminta jumlah, lalu mengonfirmasi alamat cabang dan metode pembayaran. Setelah pelanggan menjawab, workflow mengambil harga dari master data, menandai pembayaran sebagai belum terverifikasi, dan menyiapkan draft sales order. Admin sales memeriksa exception produk; finance baru mengizinkan invoice sesuai aturan pengakuan penjualan perusahaan.
Saat transaksi dibuat, ID chat dan ID order disimpan di catatan referensi. Kalau workflow menerima event yang sama lagi, ia menemukan ID yang sama dan mengembalikan transaksi yang sudah ada, bukan membuat duplikat. Setelah itu pelanggan menerima konfirmasi order, sementara finance melihat status posting dan siapa yang menyetujuinya.
Contoh ini menunjukkan kenapa AI hanya cocok untuk memahami bahasa dan mengarahkan exception. Perhitungan jumlah, harga, pajak, aturan posting, dan pengecekan duplikat harus memakai logika yang bisa dites. Kalau datanya nggak cukup, sistem bertanya atau berhenti.
Kapan pencatatan boleh full otomatis?
| Kondisi | Mode yang masuk akal |
|---|---|
| Pelanggan, SKU, harga, pajak, gudang, dan termin semuanya cocok dengan aturan aktif | Auto-create transaksi yang sudah ditentukan, dengan log dan notifikasi. |
| Ada diskon khusus, produk ambigu, pelanggan baru, perubahan alamat pajak, atau stok nggak cukup | Buat draft atau antrean exception; orang melengkapi dan approve. |
| Ada retur, pembatalan setelah posting, koreksi pajak, atau perubahan transaksi lama | Wajib review oleh role yang berwenang; jangan diam-diam overwrite catatan lama. |
| Integrasi timeout atau respons tujuan nggak jelas | Cek ulang berdasarkan ID sumber sebelum retry; jangan mengirim create request baru secara buta. |
Full otomatis datang dari input yang konsisten, master data rapi, aturan approval yang disepakati, dan exception rate yang sudah terbukti rendah di pilot. Mulai dengan shadow mode: sistem menyiapkan hasil, tapi orang membandingkannya dengan pencatatan manual sebelum izin write dibuka.
Pisahkan role juga penting. Orang yang boleh mengubah mapping produk belum tentu boleh menyetujui diskon atau membatalkan invoice. Scope API, akses dashboard, dan approval di workflow harus mengikuti pemisahan itu.
Bagaimana mencegah invoice ganda dan salah posting?
- Gunakan idempotency key: Bentuk kunci unik dari pesan atau order sumber. Request yang sama harus mengembalikan hasil lama, bukan membuat transaksi baru.
- Simpan state workflow: Bedakan diterima, perlu data, siap review, approved, posted, gagal, dan dibatalkan. Jangan menebak status dari balasan chat terakhir.
- Validasi sebelum dan sesudah write: Periksa master data sebelum posting, lalu baca respons tujuan untuk memastikan ID, status, dan total yang tersimpan sesuai payload yang disetujui.
- Jangan overwrite diam-diam: Perubahan setelah posting harus mengikuti jalur koreksi, void, retur, atau edit yang diizinkan kebijakan finance, lengkap dengan alasan dan approver.
- Siapkan dead-letter queue: Request yang terus gagal masuk antrean manusia dengan konteks lengkap. Error nggak boleh hilang atau di-retry tanpa batas.
Uji kasus jelek sebelum go-live: pesan dobel, edit chat, koneksi putus setelah transaksi sebenarnya tersimpan, produk diarsipkan, pelanggan punya nama mirip, pembayaran parsial, dan approver nggak tersedia. Happy path membuktikan demo jalan; failure path membuktikan pembukuan aman.
Apa yang menentukan biaya integrasi WhatsApp dan accounting?
Nggak ada angka universal yang jujur untuk integrasi ini. Biayanya bergerak mengikuti scope workflow, kualitas master data, jumlah jenis order, akses API, mapping pelanggan dan produk, aturan pajak, approval, volume pesan, kebutuhan audit, testing, monitoring, serta maintenance saat katalog atau proses berubah. Membuat draft order standar jelas beda kerjaannya dengan mengurus pembayaran parsial, retur, multi-gudang, dan koreksi setelah posting.
Bandingkan dengan biaya proses manual yang benar-benar hilang. Ukur waktu admin membaca chat, mencari customer dan SKU, mengetik transaksi, meminta approval, memperbaiki salah input, dan merekonsiliasi hasilnya. Lalu tambahkan waktu supervisor, coverage saat staf cuti, training, dan biaya merekrut admin tambahan ketika volume naik. Software murah tetap mahal kalau tim masih mengetik ulang dan membereskan duplikat.
Pilot satu jenis order lebih berguna daripada proposal besar. Ukur tingkat order yang lolos tanpa sentuhan, exception per kategori, duplikat, koreksi setelah posting, waktu review, dan selisih terhadap pencatatan manual. Kalau hasilnya stabil, baru perluas ke pembayaran, stok, atau pengiriman. Pola ini sejalan dengan otomasi finance dan accounting Biks: workflow mengerjakan produksi catatan, sementara orang memegang keputusan dan exception.
Bagaimana menjaga data pelanggan dan akses pembukuan?
Nomor telepon, nama, alamat, isi chat, dan riwayat transaksi bisa menjadi data pribadi. Petakan tujuan setiap field, batasi siapa yang melihatnya, simpan seperlunya, dan pastikan pihak yang membangun atau mengelola workflow hanya memproses data sesuai instruksi bisnismu.
Jangan menaruh client secret, token, atau credential accounting di chat, spreadsheet bersama, maupun source code. Gunakan credential khusus integrasi, scope paling sempit, rotasi akses, log tindakan, dan prosedur mencabut koneksi. Accurate Online menyediakan pengaturan untuk mencabut integrasi aplikasi yang terhubung. Saat penyedia layanan berganti, akses lama harus bisa dicabut tanpa memutus nomor pelanggan atau menghilangkan jejak transaksi.
Sebelum live, minta finance, owner proses, dan penanggung jawab data menyetujui matriks akses serta retensi. Untuk keputusan pajak atau perlakuan akuntansi yang belum jelas, libatkan akuntan atau penasihat pajakmu; workflow harus menjalankan kebijakan yang sudah diputuskan, bukan menciptakannya.
Sumber
- WhatsApp for Business: Developer Hub
- Accurate Online: Integrasi API Accurate Online
- Accurate Online: Pendaftaran Aplikasi
- Accurate Online: Otentikasi dan Otorisasi OAuth
- Accurate Online: Penggunaan API Accurate Online
- Accurate Online Help Center: Cara Menghapus Integrasi Aplikasi yang Terhubung ke Accurate Online
- Mekari Developers: Product APIs: Jurnal API
Common questions
- Apakah WhatsApp bisa dihubungkan langsung ke Accurate Online?
- Bisa lewat WhatsApp Business Platform, workflow yang mengubah chat menjadi data terstruktur, dan API resmi Accurate Online. Accurate meminta aplikasi atau API Token dengan akses yang sesuai; transaksi sebaiknya divalidasi, diberi kunci anti-duplikat, lalu dibuat sebagai sales order, draft, atau invoice sesuai kebijakan finance.
- Apakah penjualan WhatsApp bisa otomatis masuk ke Mekari Jurnal?
- Bisa lewat Jurnal API yang ditautkan di dokumentasi Mekari. Konfirmasi akses, endpoint, metode autentikasi, dan batas akses yang tersedia untuk akunmu, lalu pakai approval sebelum posting bila customer, produk, harga, pajak, atau pembayaran belum pasti.
- Data apa yang harus diambil dari chat sebelum membuat invoice?
- Minimal tentukan customer, produk atau SKU, jumlah dan unit, harga dari master data, diskon, pajak, gudang bila stok terlibat, alamat, termin atau status pembayaran, serta referensi pesan sumber. Kalau satu field wajib ambigu, workflow harus bertanya atau mengirimkannya ke reviewer, bukan menebak.
- Bagaimana mencegah invoice ganda dari WhatsApp?
- Gunakan ID pesan atau ID order sebagai idempotency key, simpan hubungan antara ID sumber dan ID transaksi accounting, lalu cek status itu sebelum setiap retry. Kalau koneksi timeout, baca kembali transaksi berdasarkan referensi yang sama; jangan mengirim perintah create baru secara buta.
- Berapa biaya menghubungkan WhatsApp ke Accurate atau Jurnal?
- Nggak ada harga universal: biaya ditentukan scope, akses API, kualitas data, mapping customer dan produk, aturan pajak, approval, volume, testing, monitoring, serta maintenance. Bandingkan total biaya dengan waktu admin untuk mengetik ulang, memperbaiki error, merekonsiliasi, dan kebutuhan merekrut staf tambahan.


