Langsung ke konten utama

API PEMBAYARAN KELUAR

smilepayz teamsSekitar 5 menit

Permintaan

API Pembayaran Keluar memungkinkan pedagang untuk memulai transaksi pencairan dana kepada penerima.
Metode pencairan yang didukung meliputi:

Transfer bank
Dompet digital
Rekening virtual
Saluran pembayaran elektronik lainnya

Jalur Permintaan:

sandbox: https://sandbox-gateway.smilepayz.com/v2.0/disbursement/pay-out
production: https://gateway.smilepayz.com/v2.0/disbursement/pay-out

Parameter Header

FieldRequiredTypeDescription
Content-TypeMStringSpesifikasi tipe konten HTTP
Nilai tetap: application/json
Diperlukan untuk parsing permintaan yang tepat
X-TIMESTAMPMStringFormat datetime ISO 8601 dengan offset timezone
Format: yyyy-MM-ddTHH:mm:ss±HH:mm
Contoh: 2020-12-17T10:55:00+07:00
Catatan: Harus waktu server saat ini dalam ±5 menit
X-SIGNATUREMStringTanda tangan digital untuk autentikasi permintaan. Lihat Pembuatan Tanda Tangan
X-PARTNER-IDMStringPengidentifikasi pedagang unik yang ditugaskan oleh platform
Format: String alfanumerik
Digunakan untuk autentikasi pedagang dan routing transaksi
Silakan masukkan merchantID

Parameter Body

FieldRequiredTypeDescription
orderNoMString(32)Pengidentifikasi transaksi unik untuk pelacakan pedagang
Format: Hanya karakter alfanumerik
Panjang: 6-32 karakter
Harus unik dalam lingkup pedagang
purposeMString(64)Deskripsi transaksi yang dapat dibaca manusia
Format: String yang dikodekan UTF-8
Panjang: 1-64 karakter
Digunakan untuk riwayat transaksi dan pelaporan
merchantMObjectKontainer identifikasi pedagang dan informasi bisnis
Berisi detail pedagang utama dan sub-pedagang
Diperlukan untuk routing transaksi dan penyelesaian
    merchantIdMStringPengidentifikasi pedagang utama yang ditugaskan oleh platform
Format: String alfanumerik
Digunakan untuk routing transaksi dan pemrosesan penyelesaian
    merchantNameOStringNama bisnis terdaftar dari pedagang
Format: String yang dikodekan UTF-8
Ditampilkan dalam catatan transaksi
    subMerchantIdOStringPengidentifikasi sub-pedagang untuk struktur pedagang multi-level
Format: String alfanumerik
Diperlukan untuk pemrosesan transaksi sub-pedagang
    subMerchantNameOStringNama bisnis sub-pedagang untuk tujuan tampilan
Format: String yang dikodekan UTF-8
Ditampilkan dalam catatan transaksi
moneyMObjectKontainer spesifikasi jumlah dan mata uang transaksi
Mendefinisikan nilai pencairan dan unit moneter
Diperlukan untuk pemrosesan pembayaran dan penyelesaian
    currencyMStringSpesifikasi kode mata uang ISO 4217
Nilai tetap: IDR (Rupiah Indonesia)
Menentukan aturan pemrosesan pembayaran dan mata uang penyelesaian
    amountMNumberJumlah transaksi dalam unit mata uang terkecil (sen)
Format: Nilai integer
Contoh: 20000 mewakili IDR 20000
Rentang: 10000-999999999
paymentMethodMString(6)Spesifikasi metode pencairan
Format: Kode metode pembayaran yang telah ditentukan
Contoh: BRI, BCA, DANA, OVO
Menentukan saluran pencairan yang digunakan
cashAccountMString(32)Pengidentifikasi akun penerima untuk pencairan dana
Format: Nomor rekening bank atau akun e-wallet
Contoh: Rekening bank (78120011629261665), dompet DANA (8xxxxxxx)
Harus akun yang valid dan aktif untuk transfer yang berhasil
callbackUrlOString(256)URL endpoint notifikasi webhook
Format: URL HTTP/HTTPS yang valid
Panjang maksimum: 256 karakter
Menerima pembaruan status transaksi waktu nyata

Persyaratan Format Penting

Format Akun Dompet DANA: Untuk pencairan dompet DANA, pastikan cashAccount mengikuti format 8xxxxxxx


Contoh Body – Permintaan Pencairan:

POST {Base URL}/v2.0/disbursement/pay-out HTTP/1.2

Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00+07:00
X-SIGNATURE: 7MHd9v5/m9JeqmDZVwWBZUZ5J5...7120QnFEny7Qm7uQR1G0TWCh10fsU6nVxiRoeoQ==
X-PARTNER-ID: 20001

Respons

Permintaan HTTP

FieldRequiredTypeDescription
Content-TypeMStringSpesifikasi tipe konten respons HTTP
Nilai tetap: application/json
Menunjukkan format respons JSON
X-TIMESTAMPMStringFormat datetime ISO 8601 dengan offset timezone
Format: yyyy-MM-ddTHH:mm:ss±HH:mm
Contoh: 2020-12-17T10:55:00+07:00

Parameter Body

FieldRequiredTypeDescription
codeMStringKode status respons API yang menunjukkan hasil operasi
Format: String dua digit
Sukses: "00", Error: Kode lainnya
Digunakan untuk penanganan respons programatik
messageMStringDeskripsi status respons yang dapat dibaca manusia
Format: String yang dikodekan UTF-8
Memberikan informasi terperinci tentang hasil operasi
Dilokalisasi berdasarkan bahasa permintaan
orderNoMStringPengidentifikasi transaksi pedagang asli untuk referensi
Format: Sama dengan orderNo permintaan
Digunakan untuk pelacakan dan rekonsiliasi transaksi
tradeNoOStringNomor referensi transaksi internal untuk pelacakan sistem
Format: String alfanumerik yang dibuat sistem
Digunakan untuk manajemen transaksi internal dan dukungan
merchantMObjectKontainer informasi pedagang dengan detail akun
Berisi identifikasi pedagang dan informasi akun
Lihat Model Pedagang
    merchantIdMStringPengidentifikasi pedagang utama yang ditugaskan oleh platform
Format: String alfanumerik
Digunakan untuk routing transaksi dan pemrosesan penyelesaian
    merchantNameOStringNama bisnis terdaftar dari pedagang
Format: String yang dikodekan UTF-8
Ditampilkan dalam antarmuka pembayaran dan catatan transaksi
    subMerchantIdOStringPengidentifikasi sub-pedagang untuk struktur multi-level
Format: String alfanumerik
Diperlukan untuk pemrosesan transaksi sub-pedagang
    subMerchantNameOStringNama bisnis sub-pedagang untuk tujuan tampilan
Format: String yang dikodekan UTF-8
Ditampilkan dalam antarmuka pembayaran dan catatan transaksi
moneyMObjectDetail jumlah transaksi dengan spesifikasi mata uang
Berisi jumlah pencairan yang dikonfirmasi dan mata uang
Lihat Model Uang
    currencyMStringSpesifikasi kode mata uang ISO 4217
Nilai tetap: IDR (Rupiah Indonesia)
Menentukan aturan pemrosesan pembayaran dan mata uang penyelesaian
    amountMNumberJumlah transaksi dalam unit mata uang terkecil
Format: Nilai integer
Contoh: 20000 mewakili IDR 20000
Rentang: 10000-999999999
disbursementTimeMStringFormat datetime ISO 8601 (yyyy-MM-ddTHH:mm:ss±HH:mm)
Contoh: 2020-12-17T10:55:00+07:00
Timestamp ketika pencairan diproses oleh sistem
channelMObjectDetail saluran pemrosesan pencairan
Berisi metode pembayaran, informasi akun, dan detail penerima
Digunakan untuk pelacakan transaksi dan verifikasi penerima
    paymentMethodOStringSpesifikasi metode pembayaran yang disukai
Format: Kode metode pembayaran yang telah ditentukan
Contoh: QRIS, W_DANA, CIMB, BCA
Jika dihilangkan, halaman pemilihan metode pembayaran ditampilkan
    cashAccountOStringNomor akun penerima untuk pemrosesan pencairan
Format: String alfanumerik
Digunakan untuk transfer dana ke akun penerima
Contoh: 78120011629261665
    accountNameOStringNama pemegang akun penerima untuk verifikasi
Format: String yang dikodekan UTF-8
Digunakan untuk identifikasi dan verifikasi penerima
Contoh: Betty
statusOStringStatus pemrosesan transaksi saat ini
Format: Kode status yang telah ditentukan
Contoh: PROCESSING, SUCCESS, FAILED
Lihat Model Status

Contoh Body – Respons Transaksi:

Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00+07:00

Notifikasi/Callback

Permintaan HTTP

FieldRequiredTypeDescription
Content-TypeMStringSpesifikasi tipe konten notifikasi HTTP
Nilai tetap: application/json
Menunjukkan format payload JSON
X-TIMESTAMPMStringFormat datetime ISO 8601 dengan offset timezone
Format: yyyy-MM-ddTHH:mm:ss±HH:mm
Contoh: 2020-12-17T10:55:00+07:00
X-SIGNATUREMStringTanda tangan digital untuk verifikasi notifikasi
Format: Tanda tangan yang dikodekan Base64
Digunakan untuk memverifikasi keaslian notifikasi
Lihat cara memeriksa nilai ini

Parameter Body

FieldRequiredTypeDescription
orderNoMStringPengidentifikasi transaksi pedagang asli untuk referensi
Format: Sama dengan orderNo permintaan
Digunakan untuk rekonsiliasi dan pelacakan transaksi
tradeNoMStringNomor referensi transaksi internal untuk pelacakan sistem
Format: String alfanumerik yang dibuat sistem
Digunakan untuk manajemen transaksi internal dan dukungan
merchantIdMStringPengidentifikasi pedagang utama untuk routing transaksi
Format: String alfanumerik
Digunakan untuk identifikasi pedagang dan pemrosesan penyelesaian
merchantNameMStringNama bisnis pedagang terdaftar untuk tampilan
Format: String yang dikodekan UTF-8
Ditampilkan dalam catatan transaksi dan laporan
subMerchantIdOStringPengidentifikasi sub-pedagang untuk struktur multi-level
Format: String alfanumerik
Disertakan ketika sub-pedagang terlibat dalam transaksi
subMerchantNameOStringNama bisnis sub-pedagang untuk tujuan tampilan
Format: String yang dikodekan UTF-8
Disertakan ketika sub-pedagang terlibat dalam transaksi
paymentMethodMStringMetode pencairan yang digunakan untuk pemrosesan transaksi
Format: Kode metode pembayaran yang telah ditentukan
Contoh: BRI, BCA, DANA, OVO
Menunjukkan saluran pencairan aktual yang digunakan
transactionTimeMStringFormat datetime ISO 8601 dengan offset timezone
Format datetime (yyyy-MM-ddTHH:mm:ss±HH:mm)
Timestamp ketika pencairan selesai oleh penyedia pembayaran
moneyMObjectDetail jumlah transaksi akhir dengan mata uang
Berisi jumlah pencairan yang dikonfirmasi dan mata uang
Mungkin berbeda dari jumlah permintaan karena biaya atau penyesuaian
Lihat Model Uang
    currencyMStringSpesifikasi kode mata uang ISO 4217
Nilai tetap: IDR (Rupiah Indonesia)
Menentukan aturan pemrosesan pembayaran dan mata uang penyelesaian
    amountMNumberJumlah transaksi dalam unit mata uang terkecil
Format: Nilai integer
Contoh: 20000 mewakili IDR 20000
Rentang: 10000-999999999
statusMStringStatus pemrosesan transaksi akhir
Format: Kode status yang telah ditentukan
Contoh: SUCCESS, FAILED
Menunjukkan hasil akhir dari pencairan
Lihat Model Status

Kembalian

Penting

Notifikasi silakan kembalikan hanya string SUCCESS

{
  "merchantId": "20001",
  "merchantName": "test",
  "money": {
    "amount": 10000.0000,
    "currency": "IDR"
  },
  "orderNo": "2000102900000000000001",
  "status": "SUCCESS",
  "tradeNo": "1022000109e998347483949",
  "transactionTime": "2020-12-17T10:55:00+07:00"
}
Terakhir diperbarui: