Plugin & integrasi
Plugin WooCommerce dan node n8n untuk menerima QRIS tanpa menulis kode.
WooCommerce
Plugin FQris for WooCommerce menambahkan metode bayar "QRIS (FQris)" di checkout klasik dan Checkout Block, kompatibel dengan HPOS. Status order diperbarui otomatis lewat webhook FQris.
Unduh fqris-for-woocommerce-0.1.0.zip, plugin versi 0.1.0 dalam bentuk berkas zip.
Syarat
WordPress 6.4 atau lebih baru, WooCommerce 8.3 atau lebih baru, PHP 8.1 atau lebih baru, dan mata uang toko Rupiah (IDR). Untuk mata uang lain, metode bayar ini tidak muncul di checkout. Kamu juga butuh akun FQris dengan API key.
Pasang dan atur
- 1Unggah dan aktifkan plugin Di dasbor WordPress buka Plugin, Tambah Baru, Unggah Plugin, pilih zip, klik Pasang Sekarang, lalu Aktifkan. Pastikan WooCommerce sudah aktif.
- 2Atur mata uang ke Rupiah Buka WooCommerce, Pengaturan, Umum, lalu pilih Rupiah Indonesia (IDR). QRIS hanya menerima rupiah bulat, jadi atur jumlah desimal harga menjadi 0.
- 3Buat API key Di dasbor FQris buat API key. Mode test diawali
fq_test_, mode live diawalifq_live_. - 4Daftarkan webhook endpoint Di dasbor FQris tambahkan webhook endpoint dengan URL
https://domain-tokomu/?wc-api=fqrisdan eventpayment.paid,payment.expired,payment.refunded. Salin webhook secret (whsec_...) yang ditampilkan. URL yang tepat juga tertulis di halaman pengaturan metode bayar. - 5Isi pengaturan metode bayar Buka WooCommerce, Pengaturan, Pembayaran, QRIS (FQris). Centang Aktifkan, pilih Mode, lalu isi API key dan webhook secret untuk mode itu. Kamu juga bisa mengatur kedaluwarsa, status order setelah dibayar (Diproses atau Selesai), dan pembatalan order saat kedaluwarsa. Simpan.
- 6Uji di mode test Coba satu pesanan: pilih QRIS (FQris) di checkout, lalu simulasikan pembayaran dari dasbor FQris. Order harus berubah menjadi "Diproses" dan muncul catatan "Dibayar via QRIS (FQris)".
- 7Pindah ke live Setelah yakin, buat API key dan webhook endpoint mode live, isi kolom live, lalu ubah Mode ke Live.
Perilaku
Saat pembeli membayar, webhook membuat order lunas otomatis. Plugin mengambil ulang payment dengan API key tokomu dan tidak mempercayai isi body webhook begitu saja.
Pembeli yang menekan "Buat pesanan" lagi untuk order yang sama diarahkan ke QR yang sama selama payment-nya belum hampir kedaluwarsa, jadi tidak terbentuk pembayaran ganda dari klik berulang.
Bila order tidak menjadi lunas setelah pembeli membayar, periksa bahwa URL webhook persis https://domain-tokomu/?wc-api=fqris, webhook secret sama dengan di plugin, dan situsmu bisa diakses dari internet. Log tersimpan di WooCommerce, Status, Log, dengan sumber fqris.
n8n
Node komunitas n8n untuk FQris membuat payment, payment link, invoice, dan catatan refund dari workflow, serta menjalankan workflow saat FQris mengirim webhook.
n8n-nodes-fqris sedang disiapkan untuk terbit di npm. Sementara itu, pakai node HTTP Request di n8n dengan contoh cURL dari Quickstart: semua endpoint bisa dipanggil langsung lewat HTTP.Setelah terbit, pasang di n8n lewat Settings, Community Nodes, Install, isi n8n-nodes-fqris, lalu muat ulang n8n. Node "FQris" dan "FQris Trigger" muncul di panel node. Butuh Node.js 20 atau lebih baru.
Buat credential "FQris API" dengan API Key (fq_live_ atau fq_test_). Base URL bawaannya https://api.fqris.id; ubah hanya untuk API staging atau self-hosted. Credential ini tidak meminta webhook secret.
Operasi node FQris
Payment: Create Payment, Get Payment, List Payments, Cancel Payment. Payment Link: Create Payment Link. Invoice: Create Invoice, Send Invoice. Refund: Record Refund. Jumlah uang selalu bilangan bulat rupiah.
Record Refund hanya mencatat refund di FQris; uang tetap kamu kirim sendiri ke pembeli. List Payments mengikuti paginasi sampai habis bila Return All dinyalakan.
FQris Trigger
FQris Trigger memulai workflow saat FQris mengirim event, misalnya payment.paid atau payment.expired. Saat workflow diaktifkan, node mendaftarkan webhook endpoint di FQris sendiri dengan URL webhook n8n dan event yang kamu pilih, lalu menghapusnya saat workflow dinonaktifkan. Kamu tidak perlu menyalin webhook secret: node menyimpannya dan memverifikasi signature setiap permintaan.
URL n8n harus publik untuk mode live, karena FQris menolak URL localhost. Untuk uji lokal pakai API key fq_test_ atau tunnel HTTPS.