D
Dehuyz Gateway
Docs Settlement

Settlement

Settlement = transfer saldo dari Dehuyz Gateway ke rekening bank merchant. Saat ini manual — admin proses request lo lewat mobile banking.

Konsep

  1. Customer scan QR → bayar → uang masuk rekening BRI merchant of record (Dehuyz).
  2. Saldo lo (di Dehuyz) bertambah sebesar nett_amount (Phase awal: nett_amount = amount, gak ada fee).
  3. Lo request payout di /dashboard/settlements — pilih amount + isi info rekening tujuan.
  4. Admin (Dehuyz) review, approve, transfer manual via mobile banking, mark as transferred.
  5. Saldo lo otomatis berkurang lewat ledger entry settlement_debit.

Status flow

[requested] --(admin approve)--> [approved] --(admin transfer)--> [transferred]
     |
     (admin reject)
     v
 [rejected]
Status Arti
requested Lo submit request, menunggu admin review
approved Admin OK, saldo lo dipotong, transfer pending dilakukan admin
transferred Transfer selesai, bukti tertulis di admin_note
rejected Admin tolak (alasan di admin_note)

Cara request payout

  1. Buka /dashboard/settlements.
  2. Pastikan Saldo tersedia > 0. Saldo update otomatis tiap pembayaran masuk.
  3. Isi form:
    • Amount (Rp): max sebesar saldo
    • Bank: BCA, Mandiri, BRI, dll
    • No rekening: angka rekening
    • Nama pemilik: harus match rekening (admin verify saat transfer)
  4. Submit. Status awal requested.
  5. Admin akan email atau notif (Phase 6+) saat approved/transferred.

Default rekening

Set di /dashboard/profile sekali, semua request payout berikutnya prefilled.

SLA

Karena settlement masih manual, target SLA:

  • Working hours (08-17 WIB): approve dalam 4 jam, transfer dalam 8 jam
  • Outside hours / weekend: H+1 (next working day)

Phase 6+ akan tambah auto-settlement: payout otomatis terjadwal harian / mingguan tanpa request manual.

Fee

  • Phase awal (sekarang): 0% fee, lo dapat full amount.
  • Future: bisa berubah jadi misal Rp 700/transaksi atau 0.7%. Dehuyz akan kasih notice 30 hari sebelum berlaku.

Ledger entry

Tiap pembayaran + settlement create entry di ledger_entries:

Type Amount Trigger
payment_credit +nett_amount Invoice paid
fee_debit -fee_amount (Future) saat fee diaktifkan
settlement_debit -amount Admin approve settlement
adjustment ± Manual koreksi by admin

balance_after snapshot saldo setelah entry, bisa dilihat di tabel ledger di /dashboard/settlements.

Rekonsiliasi

Setiap awal bulan, audit balance lo:

-- Sum credit
SELECT SUM(amount) FROM ledger_entries
WHERE merchant_id = '<id>' AND amount > 0;

-- Sum debit
SELECT SUM(ABS(amount)) FROM ledger_entries
WHERE merchant_id = '<id>' AND amount < 0;

Nett saldo = sum_credit - sum_debit. Harus match dengan total payment - total settlement.

Edge case

"Saldo terlihat tapi gak bisa request payout" — cek apakah ada settlement berstatus approved (sudah dipotong) atau requested (belum). Saldo dihitung real-time dari ledger.

"Settlement transferred tapi belum masuk rekening" — admin ada catatan di admin_note (mis. nomor referensi transfer mobile banking). Konfirmasi ke admin dengan settlement ID.

"Salah input nomor rekening" — kalau status masih requested, cancel langsung gak bisa (akan ditambah Phase 6+). Tunggu admin reject, lalu submit ulang.