Virtual Account SNAP
Create Virtual Account Panduan lengkap untuk membuat Virtual Account menggunakan API Paylabs.
Field Value URL ${ROOT_URL}/api/v1.0/transfer-va/create-vaMethod POST Endpoint /transfer-va/create-va Service Code 27 Version 1.0 ServiceGroup transfer-va ProductType create-va
Parameter Required Type Length Remarks Content-Type M String - Nilai tetap application/json Authorization C String Dynamic Nilai access_token, jika Anda menggunakan enkripsi symmetric, kolom ini wajib diisi X-TIMESTAMP M String 64 Waktu Jakarta, format 2026-01-30T06:00:00+07:00 X-PARTNER-ID M String 36 Merchant ID X-EXTERNAL-ID M String 12 Request ID X-SIGNATURE M String Dynamic Signature. Untuk detailnya cek Cara Membuat Signature X-IP-ADDRESS M String 15 IP Client (IPv4)
Parameter Required Type Length Remarks partnerServiceId M String 8 turunan X-PARTNER-ID, mirip dengan kode perusahaan, 8 digit spasi disebelah kiri customerNo M String 20 No virtualAccount 00000000000000000000 virtualAccountNo M String 20 partnerServiceId + customerNo virtualAccountName M String 255 Nama Customer. contoh: Jokul Doe virtualAccountEmail O String 63 Email virtualAccountPhone O String 30 No Hp, Format: 62xxxxxxxxxxxxx trxId M String 64 No Transaksi Merchant + totalAmount M Object - Transaction amount - value M String 16,2 Amount dengan 2 digit angka dibelakang koma.contoh: 10000.00 , static va : 0.00 - currency M String 3 Mata Uang. fixed value : IDR + billDetails O List - Array dengan maksimal 24 Objects(Saat ini tidak digunakan) - billCode O String 2 Kode tagihan untuk Customer pilih - billNo O String 18 No taghan dari Partner - billName O String 20 Bill Name - billShortName O String 18 Bill Name to shown to + billDescription O Object - Deskripsi Tagihan - english O String 18 Deskripsi Tagihan menggunakan bahasa inggris - indonesia O String 18 Deskripsi Tagihan menggunakan bahasa Indonesia - billSubCompany O String 5 - + billAmount O Object - - - value M String 16,2 Amount dengan 2 digit angka dibelakang koma. contoh: 10000.00 - currency M String 3 Mata Uang. fixed value : IDR + additionalInfo O Object - - + freeTexts O List - Array dengan maksimal 25 Objects - english O String 32 Akan ditampilkan di Channel - indonesia O String 32 Akan ditampilkan di Channel virtualAccountTrxType O String 1 Type Virtual Account + feeAmount O Object - Transaction Amount.(Saat ini tidak digunakan) - value M String 16,2 Amount dengan 2 digit angka dibelakang koma. contoh: 10000.00 - currency M String 3 Mata Uang. fixed value : IDR expiredDate M String 25 waktu kadaluwarsa Virtual Account.ISO-8601 contoh: 2020-12-31T23:59:59-07:00 + additionalInfo M Object - Informasi tambahan - paymentType M String 32 Type Payment - storeId O String 32 Jika Merchant memiliki cabang dan ingin membuat order dengan ID cabang
VA: Ini akan kedaluwarsa setelah satu pembayaran berhasil dalam masa berlaku.
MultipleVA: Jumlah tetap dapat dibayarkan beberapa kali selama masa berlaku.
StaticVA: Anda dapat membayar jumlah berapa pun beberapa kali selama masa berlaku
Payment type Encodings (code) BCA BCAVA, MultipleBCAVA, StaticBCAVA BNI BNIVA, MultipleBNIVA BRI BRIVA, MultipleBRIVA BSI BSIVA, MultipleBSIVA CIMB CIMBVA, MultipleCIMBVA Danamon DanamonVA, MultipleDanamonVA INA INAVA, MultipleINAVA Permata PermataVA, MultiplePermataVA Mandiri MandiriVA, MultipleMandiriVA, StaticMandiriVA Maybank MaybankVA, MultipleMaybankVA Muamalat MuamalatVA, MultipleMuamalatVA Sinarmas SinarmasVA, MultipleSinarmasVA BNC BNCVA, MultipleBNCVA, StaticBNCVA Nobu NobuVA, MultipleNobuVA, StaticNobuVA
POST /api/v1.0/transfer-va/create-va HTTP/1.1
Content-Type: application/json ;charset = utf-8
X-TIMESTAMP: 2026-02-02T11:47:41.737+07:00
X-SIGNATURE: DnjN ******************** JA==
X-PARTNER-ID: 010001
X-EXTERNAL-ID: 20260130XXXXXXXXX
X-IP-ADDRESS: XXX.XXX.XXX.XXX
{
"partnerServiceId" : "00010001",
"customerNo" : "00000000000000000000",
"virtualAccountNo" : "0001057XXXXXXXXXXXXXX",
"virtualAccountName" : "SUCCESS John - shoes**",
"virtualAccountPhone" : "+6281234567890",
"trxId" : "AHM20260130XXXXXXXXX",
"totalAmount" : {
"value" : "10000.00",
"currency" : "IDR"
},
"billDetails" : [
{
"billCode" : "1",
"billName" : "Produk John",
"billAmount" : {
"value" : "10000.00",
"currency" : "IDR"
}
}
],
"expiredDate" : "2026-12-25T15:52:34+07:00",
"virtualAccountTrxType" : "1",
"additionalInfo" : {
"paymentType" : "BRIVA"
}
}
Parameter Required Type Length Remarks Content-Type M String - Fixed value application/json X-TIMESTAMP M String 64 Waktu Jakarta, format 2021-11-29T09:22:18+07:00
Parameter Required Type Length Remarks responseCode M String 7 Kode Response. response code = HTTP status code + service code + case code responseMessage M String 150 Pesan Response + virtualAccountData O Object - - - partnerServiceId M String 8 turunan X-PARTNER-ID, mirip dengan kode perusahaan, 8 digit spasi disebelah kiri - customerNo M String 20 No virtualAccount. fixed value 00000000000000000000 - virtualAccountNo M String 20 No virtualAccount - virtualAccountName M String 255 Nama Customer. contoh: Jokul Doe - virtualAccountEmail O String 64 Email - virtualAccountPhone O String 30 No Hp, Format: 62xxxxxxxxxxxxx - trxId O String 32 Platform Order No / Order No + totalAmount O Object - Transaction Amount - value M String 16,2 Amount dengan 2 digit angka dibelakang koma.contoh: 10000.00 , static va : 0.00 - currency M String 3 Mata Uang. fixed value : IDR + billDetails O List - Array dengan maksimal 24 Objects(Sementara Tidak Tersedia) - billCode O String 2 Kode tagihan untuk Customer pilih - billNo O String 18 Bill No dari Partner - billName O String 20 Bill Name - billShortName O String 10 Bill Name to shown to + billDescription O Object - Deskripsi Tagihan - english O String 18 Deskripsi Tagihan menggunakan bahasa inggris - indonesia O String 18 Deskripsi Tagihan menggunakan bahasa Indonesia - billSubCompany O String 5 Kode Product Partner + billAmount O Object - Transaction Amount - value M String 16,2 Amount dengan 2 digit angka dibelakang koma. contoh: 10000.00 - currency M String 3 Mata Uang. fixed value : IDR + additionalInfo O Object - Informasi Tambahan untuk customer khusus untuk setiap tagihan + freeTexts O List - Array dengan maksimal 25 Objects - english O String 32 Akan ditampilkan di Channel - indonesia O String 32 Akan ditampilkan di Channel - virtualAccountTrxType O String 1 Type Virtual Account + feeAmount O Object - Transaction Amount. - value M String 16,2 Amount dengan 2 digit angka dibelakang koma. contoh: 10000.00 - currency M String 3 Mata Uang. fixed value : IDR - expiredDate M String 25 waktu kadaluwarsa Virtual Account.ISO-8601 + additionalInfo O Object - Informasi tambahan untuk customer gunakan
HTTP/1.1 200 OK
Content-Type: application/json ;charset = utf-8
{
"responseCode" : "2002700",
"responseMessage" : "Successful",
"virtualAccountData" : {
"partnerServiceId" : "00010001",
"customerNo" : "00000000000000000000",
"virtualAccountNo" : "1623XXXXXXXXXXXXX",
"virtualAccountName" : "SUCCESS John - shoes**",
"virtualAccountPhone" : "+6281234567890",
"trxId" : "AHM20260130XXXXXXXXX",
"totalAmount" : {
"value" : "10000.00",
"currency" : "IDR"
},
"virtualAccountTrxType" : "C",
"expiredDate" : "2026-12-25T15:52:34+07:00",
"additionalInfo" : {
"paymentType" : "BRIVA"
}
}
}