← Kembali ke blog

Input Purchase Otomatis dari WhatsApp ke Accounting

Rancangan otomasi pemrosesan struk WhatsApp ke sistem akuntansi menggunakan n8n dengan validasi, OCR, idempotensi, dan audit trail.

Input Purchase Otomatis dari WhatsApp ke Accounting

Masalah yang sering terjadi

Banyak pembelian masih dicatat manual dari struk WhatsApp ke aplikasi akuntansi. Cara ini memakan waktu, rentan salah input, dan membuat laporan keuangan terlambat diperbarui.

Dengan n8n, WhatsApp dapat dijadikan pintu masuk data. Struk diproses, informasinya divalidasi, lalu data purchase dikirim ke sistem akuntansi seperti Keloola melalui API atau mekanisme integrasi resmi yang tersedia.

Alur solusi

WhatsApp
   ↓
Webhook n8n
   ↓
Validasi dan OCR
   ↓
Normalisasi purchase
   ↓
Persetujuan bila diperlukan
   ↓
Accounting API
   ↓
Arsip struk dan laporan

Otomasi tidak berarti semua purchase langsung dicatat tanpa pemeriksaan. Untuk nominal besar, supplier baru, atau hasil OCR yang meragukan, tambahkan tahap review manusia.

Langkah implementasi

1. Terima struk melalui WhatsApp

Gunakan provider WhatsApp atau gateway yang mendukung webhook. Validasi signature, message ID, nomor pengirim, tipe file, dan ukuran attachment sebelum workflow diproses.

Simpan message ID sebagai idempotency key. Jika provider mengirim ulang webhook, workflow tidak boleh membuat purchase ganda.

2. Simpan file secara aman

Unduh attachment ke storage yang terlindungi dengan masa retensi yang jelas. Jangan menaruh credential atau isi struk di URL publik tanpa kontrol akses.

Metadata minimal yang perlu disimpan:

  • message ID
  • waktu penerimaan
  • nomor referensi internal
  • lokasi file
  • status pemrosesan
  • error atau alasan review

3. Ekstraksi data dari struk

Gunakan OCR untuk mengambil data seperti:

  • tanggal transaksi
  • nama supplier
  • nomor invoice
  • total pembayaran
  • pajak bila tersedia
  • kategori purchase

Hasil OCR harus dianggap sebagai data kandidat. Terapkan validasi format tanggal, nominal, dan field wajib. Jika confidence OCR rendah atau total tidak dapat dibaca, hentikan workflow dan minta review.

4. Normalisasi dan validasi

Sebelum mengirim ke sistem akuntansi:

  • ubah nominal menjadi angka tanpa pemisah lokal
  • gunakan format tanggal yang konsisten
  • cocokkan supplier dengan master data
  • cegah duplikasi berdasarkan nomor invoice dan supplier
  • validasi kategori purchase
  • pastikan total tidak negatif atau tidak wajar

5. Kirim melalui API resmi

Gunakan dokumentasi dan endpoint resmi sistem akuntansi yang sedang digunakan. Jangan menyalin endpoint contoh ke production tanpa verifikasi karena struktur API, autentikasi, dan field dapat berubah.

Dalam n8n, gunakan HTTP Request node dengan credential yang disimpan di credential manager. Jangan menaruh API key di field teks biasa atau log execution.

Contoh payload konseptual:

{
  "date": "2025-09-18",
  "supplier": "Toko Elektronik",
  "amount": 1250000,
  "category": "Inventaris",
  "reference": "invoice-123"
}

Sesuaikan nama field dengan API yang benar dan simpan response ID sebagai referensi sinkronisasi.

6. Arsipkan hasil

Simpan struk dan response integrasi secara terstruktur. Workflow sebaiknya menghasilkan status yang jelas:

  • received
  • needs_review
  • submitted
  • recorded
  • failed

Kirim notifikasi hanya setelah sistem akuntansi mengonfirmasi data berhasil dicatat.

Penanganan error

Siapkan retry dengan backoff untuk gangguan sementara. Jangan melakukan retry tanpa batas karena dapat membuat transaksi ganda. Untuk error validasi, arahkan ke review manusia. Untuk error autentikasi atau schema API, hentikan workflow dan kirim alert kepada administrator.

Hasil bisnis

Dengan desain yang benar, proses ini dapat:

  • mengurangi input manual
  • mempercepat pembaruan laporan
  • menurunkan risiko salah ketik
  • membuat arsip purchase lebih mudah dicari
  • menyediakan jejak audit dari WhatsApp sampai sistem akuntansi

Penutup

Otomasi purchase melalui WhatsApp dan n8n efektif ketika dibangun sebagai proses terkontrol, bukan sekadar alur OCR lalu POST. Validasi, idempotensi, review manusia, keamanan credential, dan audit trail harus menjadi bagian dari desain sejak awal.