Skip to main content

Payment Transaction

Tabel berikut adalah spesifikasi dari API ini :

API NamePayment Transaction
FunctionAPI ini digunakan oleh pedagang untuk melakukan transfer ke permintaan Bank melalui Paydia Bisnis
Service Code43
MethodPOST
URL/snap/v1.0/emoney/transfer-bank
Acceptapplication/json
Content Typeapplication/json
Related Service Transfer ke Bank

Request

Bagian berikut akan menjelaskan tentang parameter permintaan dalam API ini:

Request Params

Tabel berikut adalah daftar parameter permintaan dalam API ini:

Tabel berikut adalah Header dari Parameter Permintaan :

NoNameTypeLengthRequiredConditionRemarks
1Content-TypeStringVariabel, maksimal 127 karakterMandatory-Jenis konten, nilai selalu application/json
2AuthorizationStringVariabelOpsionalJika opsi Signature adalah pendekatan asimetrisMengandung B2B Bearer JWT Token, Anda mendapatkannya dari Access Token B2B
3X-TIMESTAMPStringTetap, maksimal 25 karakterMandatory-Waktu tanggal transaksi, dalam format YYYY MM-DDTHH:mm:ss+07:00. Waktu harus dalam GMT+7 (waktu Jakarta)
4X-SIGNATUREStringVariabelMandatory-Signature akan dihasilkan secara otomatis dengan metode symmetricSignature atau asymmetricSignature
5X-PARTNER-IDStringVariabel, maksimal 36 karakterMandatory-ID mitra yang dihasilkan oleh Paydia. ID unik untuk seorang mitra
6X-EXTERNAL-IDStringVariabel, maksimal 36 karakterMandatory-ID referensi pesan unik yang dihasilkan oleh pedagang. String numerik. Nomor referensi yang harus unik dalam satu hari yang sama
7CHANNEL-IDStringVariabel, maksimal 5 karakterMandatory-Identifikasi perangkat di mana layanan API saat ini diakses oleh pengguna akhir (pelanggan)

Header

Tabel berikut adalah isi dari Parameter Permintaan:

NoNameTypeLengthRequiredConditionRemarks
1partnerReferenceNoStringVariabel, maksimal 64 karakterMandatory-Identifikasi transaksi pada sistem konsumen layanan
2beneficiaryAccountNumberStringVariabel, maksimal 32 karakterMandatory-Nomor rekening tujuan
3beneficiaryBankCodeStringVariabel, maksimal 8 karakterMandatory-Kode Bank Penerima
4amountUangVariabelMandatory-Mengandung dua sub-field:
  1. Nilai: Jumlah transaksi, termasuk sen
  2. Mata uang: Kode mata uang berdasarkan ISO

Contoh Request

Script berikut adalah contoh permintaan dari API ini:

POST /snap/v1.0/emoney/transfer-bank HTTP/1.1
X-Timestamp: 2023-06-20T14:59:58+07:00
X-Partner-Id: 8f548c9c439139b2285269e56db6b8ed
X-Signature: jcxn/4SQaAR/oB+JkuWg/Dk9jLj0WNDsKX/NoGZocVvf1MR6gQtCEGeSGET5KUbDhTF+UUMpiReS/H91PNC3Ew==
X-External-Id: 1687248158
Channel-Id: 788
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJQYXlkaWEiLCJpYXQiOjE2ODcyNDgwMDcsImV4cCI6MTY4NzI0ODkwN30.hyYOTjtz5sA0-oAPjWxFaC0RsFjE2Ch-LtfdN5ReiG8
{
"partnerReferenceNo": "dedf08cf-854e-4b3b-86f6-6e3512b1f7c7",
"beneficiaryAccountNumber": "0123456789",
"beneficiaryBankCode": "014",
"amount": {
"value": "10000.00",
"currency": "IDR"
}
}

Response

Bagian berikut akan menjelaskan tentang parameter tanggapan dalam API ini:

Response Params

Tabel berikut adalah daftar parameter tanggapan dalam API ini:

Header

Tabel berikut adalah isi Parameter Body Respon:

NoNameTypeLengthRequiredConditionRemarks
1responseCodeStringTetap, maksimal 7 karakterMandatory-Lihat daftar kode tanggapan
2responseMessageStringVariabel, maksimal 150 karakterMandatory-Lihat daftar kode tanggapan
3referenceNoStringVariabel, maksimal 64 karakterMandatory-Identifikasi transaksi pada sistem Paydia
4partnerReferenceNoStringVariabel, maksimal 64 karakterMandatory-Identifikasi transaksi pada sistem mitra
5transactionDateStringTetap, maksimal 25 karakterMandatory-Tanggal transaksi, dalam format YYYY-MM-DDTHH:mm:ss+07:00. Waktu harus dalam GMT+7 (waktu Jakarta)
6referenceNumberStringVariabel, maksimal 64 karakterMandatory-Nomor referensi
7additionalInfoObjek JSONVariabelMandatory-Informasi tambahan
8additionalInfo.transactionStatusStringTetap, maksimal 2 karakterMandatory-Status transaksi. Mengandung nilai:
  • 00: Sukses
  • 03: Menunggu
  • 06: Gagal
9additionalInfo.transactionStatusDescStringVariabel, maksimal 32 karakterMandatory-Deskripsi status transaksi. Mengandung nilai:
  • 00: Sukses
  • 03: Menunggu
  • 06: Gagal
10additionalInfo.balanceUangVariabelMandatory-Informasi tambahan saldo pedagang. Mengandung dua sub-field:
  1. Nilai: Jumlah transaksi, termasuk sen
  2. Mata uang: Kode mata uang berdasarkan ISO

Contoh Tanggapan

Script berikut adalah contoh tanggapan dari API ini:

{
"responseCode": "2004300",
"responseMessage": "Successful",
"referenceNo": "fdf7e3e4fde84bbf8c9590222ae994fd",
"partnerReferenceNo": "dedf08cf-854e-4b3b-86f6-6e3512b1f7c7",
"transactionDate": "2023-06-20T15:02:16+07:00",
"referenceNumber": "fdf7e3e4fde84bbf8c9590222ae994fd",
"additionalInfo": {
"transactionStatus": "00",
"transactionStatusDesc": "Success",
"balance": {
"value": "500000.00",
"currency": "IDR"
}
}
}

Response Code dan Response Message

Tabel berikut adalah daftar kode tanggapan dan pesan dari API Payment Transaction:

NoResponse CodeResponse MessageRemarks
12004300SuccessfulBerhasil diproses
24004301Invalid Field FormatFormat tidak valid untuk bidang tertentu
34004302Invalid Mandatory FieldKehilangan atau format tidak valid pada bidang Mandatory
44014300Unauthorized {reason}Kesalahan izin umum
54014301Invalid Token (B2B)Token ditemukan dalam permintaan tidak valid (Access Token Not Exist, Access Token Expiry)
64034302Exceeds Transaction Amount LimitMelebihi batas jumlah transaksi
74034314Insufficient FundsDana tidak mencukupi
84044303Bank Not Supported By SwitchBank tidak didukung oleh switch
94094300ConflictTidak dapat menggunakan X-EXTERNAL-ID yang sama dalam satu hari yang sama
104094301Duplicate partnerReferenceNopartnerReferenceNo duplikat
115004302Backend system failureKesalahan server internal 500