Model Data - Status
Sekitar 2 menit
Ikhtisar Status Transaksi
Model data Status Transaksi mendefinisikan struktur untuk informasi status siklus hidup transaksi. Model ini mengkapsulasi pelacakan status, pemantauan, dan manajemen status untuk transaksi pembayaran.
Definisi Kode Status
Kode Status | Deskripsi |
---|---|
INIT | Request transaksi telah didaftarkan tetapi metode pembayaran belum ditentukan Penggunaan: Status awal ketika pesanan dibuat tetapi pelanggan belum memilih metode pembayaran Status Berikutnya: PROCESSING (setelah pemilihan metode pembayaran) |
PROCESSING | Transaksi sedang diproses secara aktif Penggunaan: Pembayaran pelanggan tertunda atau pesanan sedang diproses oleh penyedia pembayaran Status Berikutnya: SUCCESS, FAILED, EXPIRED |
SUCCESS | Transaksi telah berhasil diselesaikan Penggunaan: Pembayaran diterima atau pencairan berhasil diselesaikan Status Berikutnya: Status akhir - tidak ada transisi lebih lanjut |
FAILED | Transaksi telah gagal dan mencapai status terminal Penggunaan: Pemrosesan pembayaran gagal karena berbagai alasan (dana tidak cukup, masalah teknis, dll.) Status Berikutnya: Status akhir - tidak ada transisi lebih lanjut |
EXPIRED | Transaksi telah kedaluwarsa karena timeout atau tidak aktif Penggunaan: Pembayaran tidak selesai dalam batas waktu yang ditentukan atau timeout koneksi internet Status Berikutnya: Status akhir - tidak ada transisi lebih lanjut |
Alur Siklus Hidup Transaksi
Fase Inisialisasi
INIT → PROCESSING
- Trigger: Pelanggan memilih metode pembayaran
- Durasi: Transisi langsung
- Aksi: Validasi metode pembayaran dan inisiasi pemrosesan
Fase Pemrosesan
PROCESSING → SUCCESS/FAILED/EXPIRED
- Durasi: Bervariasi berdasarkan metode pembayaran dan waktu pemrosesan
- Aksi: Pemrosesan pembayaran, interaksi pelanggan, komunikasi penyedia
Status Akhir
- SUCCESS: Transaksi selesai, dana ditransfer
- FAILED: Transaksi diakhiri karena kegagalan
- EXPIRED: Transaksi diakhiri karena timeout
Contoh Implementasi
{
"tradeNo": "122200312406111311517153",
"orderNo": "200110edbb466abb04682968b40",
"status": "SUCCESS",
"transactionTime": "2020-12-17T10:55:00-05:00"
}
Pemantauan dan Penanganan Status
Pembaruan Status Waktu Nyata
- Notifikasi Webhook: Pembaruan status otomatis melalui URL callback
- API Polling: Pemeriksaan status berkala menggunakan API inquiry
- Sinkronisasi Status: Status konsisten di semua komponen sistem
Penanganan Error
- Status FAILED: Implementasi mekanisme retry dan logging error
- Status EXPIRED: Tangani skenario timeout dan notifikasi pengguna
- Status PROCESSING: Pantau transaksi yang macet dan implementasi timeout
Logika Bisnis
- Manajemen Pesanan: Perbarui status pesanan berdasarkan status transaksi
- Manajemen Inventori: Lepaskan inventori yang dipesan pada FAILED/EXPIRED
- Komunikasi Pelanggan: Kirim notifikasi yang sesuai untuk setiap status
Pertimbangan Regional
Waktu Pemrosesan
- Dompet Digital: Biasanya 1-5 menit untuk SUCCESS
- Transfer Bank: 1-3 hari kerja untuk penyelesaian
- Pembayaran Tunai: Langsung setelah konfirmasi pembayaran
- Cryptocurrency: 10-60 menit tergantung jaringan
Keandalan Status
- Keandalan Tinggi: Status SUCCESS dan FAILED bersifat definitif
- Status Menengah: PROCESSING mungkin memerlukan verifikasi tambahan
- Penanganan Timeout: Status EXPIRED untuk transaksi yang ditinggalkan
Keamanan dan Kepatuhan
Validasi Status
- Pencegahan Manipulasi: Perubahan status harus ditandatangani secara kriptografis
- Audit Trail: Log lengkap dari semua transisi status
- Verifikasi: Cross-reference status dengan konfirmasi penyedia pembayaran
Persyaratan Regulasi
- Pelaporan Transaksi: Pelaporan status yang akurat untuk kepatuhan regulasi
- Penyelesaian Sengketa: Dokumentasi status yang jelas untuk penanganan chargeback
- Rekonsiliasi Settlement: Pemrosesan settlement berbasis status