Cara Membuat AI Agent untuk Automasi Invoice Reconciliation di n8n (Tanpa Coding Kompleks)
· 3 menit baca
Cara Membuat AI Agent untuk Automasi Invoice Reconciliation di n8n (Tanpa Coding Kompleks)
Pernah kebingungan mengapa proses rekonsiliasi faktur selalu menumpuk di inbox? Tim keuangan harus membuka ratusan email, mencocokkan PDF, menginput data manual ke ERP, dan tetap ada celah yang terlewat. Akibatnya, pembayaran terlambat, cash‑flow terganggu, dan tim terpaksa menghabiskan waktu yang seharusnya untuk analisis strategis.
Artikel ini memberi aha moment dengan menampilkan cara membangun AI Agent di n8n yang secara otomatis mengekstrak, memvalidasi, dan mencocokkan invoice dengan pembayaran di sistem akuntansi—semua tanpa menulis satu baris kode.
Konsep Cepat: AI Agent + n8n = Reconcile Otomatis
- AI Agent: LLM (mis. OpenAI GPT‑4o) yang bertindak sebagai “asisten” untuk membaca PDF, menafsirkan kolom penting, dan menghasilkan JSON terstruktur.
- n8n: Orkestrator low‑code yang menghubungkan email, storage, API ERP, dan LLM dalam satu workflow visual.
- Reconciliation Loop:
Inbox → Extract → Enrich → Match → Action.
Langkah‑Langkah Teknis di n8n
1. Trigger: New Email dengan Invoice
Gunakan node IMAP Email (atau Gmail) dengan filter subject:"Invoice" has:attachment. Set Mark as read agar tidak diproses berulang.
2. Simpan PDF ke S3/Google Drive
Node AWS S3 (atau Google Drive) menyalin attachment ke bucket khusus invoices/raw/. Simpan fileId di Workflow > Data untuk dipakai selanjutnya.
3. Extract Text dengan OCR (Jika PDF scan)
Gunakan node n8n-nodemailer atau Google Cloud Vision. Output: plain text yang diproses ke LLM.
4. AI Agent: Parse Invoice
Node OpenAI (model gpt-4o-mini) dengan prompt:
You are an invoice‑parsing assistant. Extract the following fields as JSON:
- Invoice Number
- Issue Date (YYYY‑MM‑DD)
- Due Date (YYYY‑MM‑DD)
- Total Amount (numeric)
- Vendor Name
Provide ONLY the JSON.
Text:
{{ $json["extracted_text"] }}
Hasilnya langsung berupa objek JSON yang dapat dipetakan ke variabel workflow.
5. Enrich: Cari Pembayaran di ERP (mis. Xero, QuickBooks)
Node HTTP Request ke endpoint /transactions dengan query invoiceNumber. Jika tidak ada, lakukan pencarian berdasar vendor & amount & date range.
6. Matching Logic (JavaScript Code)
Node Function menilai “match score”:
const invoice = items[0];
const payment = items[1];
let score = 0;
if (invoice.vendor === payment.vendor) score += 40;
if (Math.abs(invoice.amount - payment.amount) < 0.01) score += 40;
if (Math.abs(new Date(invoice.dueDate) - new Date(payment.date)) < 3*24*3600*1000) score += 20;
return [{matchScore: score}];
Jika score >= 80, anggap cocok.
7. Action: Update ERP & Notify
- Jika cocok →
POST /payments/{id}/applyuntuk menandai “reconciled”. - Jika tidak cocok → kirim email ke tim keuangan dengan lampiran invoice + data parsing, serta tombol
Approve Manual(Webhooks ke n8n untuk update manual).
8. Logging & Dashboard
Gunakan node Postgres atau Google Sheets untuk menyimpan log: invoice_id, status, match_score, timestamp. Buat visualisasi di Metabase atau Grafana untuk memantau rekonsiliasi per hari.
Contoh Use Case Real: SaaS Startup dengan 200 Invoice/bulan
Startup FinTechX mengimplementasikan workflow di atas. Hasilnya:
- Waktu proses turun dari 3 menit per invoice menjadi 5 detik.
- Kesalahan manual berkurang 92 %.
- Tim keuangan dapat mengalokasikan waktunya ke analisis cash‑flow, bukan input data.
Strategi & Insight Penting
- Prompt Engineering: Simpan prompt di
n8n Environment Variablesupaya mudah tweak tanpa ubah workflow. - Cost Control: Pilih model
gpt-4o-miniuntuk parsing; gunakanCache Node(Redis) untuk menyimpan hasil parsing selama 24 jam jika invoice berulang. - Fallback OCR: Jika OCR gagal (confidence < 0.7), kirim ke manusia lewat
Telegram Botuntuk verifikasi. - Monitoring: Buat alert di
SlackbilamatchScore < 50lebih dari 10 invoice dalam satu hari – indikasi masalah di vendor atau integrasi ERP.
Penutup & Call to Action
Dengan kombinasi AI Agent dan n8n, rekonsiliasi invoice tidak lagi menjadi beban administratif. Anda dapat memulai dengan menyalin workflow contoh (link repositori), menyesuaikan credential API, dan mengaktifkan. Jika sudah, beri komentar di forum JIPRAKS Classroom tentang improvement yang Anda temukan – siapa tahu ini jadi template resmi untuk semua startup Indonesia!