Virtual Account

Generate Virtual Account (VA)

Panduan lengkap untuk membuat Virtual Account menggunakan API Paylabs.

Request URL

URL: ${ROOT_URL}/payment/v2.3/va/create

HTTPMethod: POST

EndpointUrl: /payment/v2.3/va/create

Generate VA Request Parameters

Cara Membuat Signature

Field NameTypeValueRequired
Content-TypeString(30)Isi dengan nilai "application/json;charset=utf-8"Yes
X-TIMESTAMPString(29)Waktu saat ini, dengan format 2022-09-16T16:58:47.964+07:00Yes
X-SIGNATUREString(64)Signature. Untuk selengkapnya cekYes
X-PARTNER-IDString(20)Merchant IDYes
X-REQUEST-IDString(64)ID unik merepresentasikan setiap request yang dikirimYes

Body

ParameterTypeRequiredRemarks
requestIdString(64)YesKode unik untuk setiap request
merchantIdString(20)YesID unik yang disediakan oleh payment gateway ke merchant
storeIdString(30)NoJika Merchant memiliki cabang dan ingin membuat order dengan ID cabang
paymentTypeString(20)YesNama tipe pembayaran, cek tabel Tipe Pembayaran
amountDecimal(12,2)YesNominal dalam Rupiah Indonesia
merchantTradeNoString(32)YesKode unik yang dibuat oleh Merchant untuk setiap transaksi
notifyUrlString(200)NoURL yang akan ditembak saat terjadi pembayaran. Untuk parameter-parameternya cek di bagian Inquiry Order
payerString(60)YesNama orang yang melakukan pembayaran
productNameString(100)YesNama layanan atau produk
+productInfoArray<Object>(30)NoInformasi detil atas produk atau layanan dalam transaksi
a?OidString(10)YesProduct ID
a?OnameString(32)YesProduct Name
a?Opricedecimal(12,2)YesNilai dalam Rupiah, mendukung dua angka belakang koma
a?OtypeString(20)YesProduct Type
a?OurlString(200)NoProduct URL
a?OquantityNumber(4)YesProduct Quantity

paymentType

Payment TypeCode
VASinarmasVA,MaybankVA,DanamonVA,BNCVA,BCAVA,INAVA,BNIVA,PermataVA,MuamalatVA,BSIVA,BRIVA,MandiriVA,CIMBVA,NobuVA,KaltimtaraVA,BTNVA

Generate VA Response Parameters

Header

Cara Membuat Signature

Field NameTypeValueRequired
Content-TypeString(30)Isi dengan nilai "application/json;charset=utf-8"Yes
X-TIMESTAMPString(29)Waktu saat ini, dengan format 2022-09-16T16:58:47.964+07:00Yes
X-SIGNATUREString(64)Signature. Untuk selengkapnya cekYes
X-PARTNER-IDString(20)Merchant IDYes
X-REQUEST-IDString(64)ID unik merepresentasikan setiap request yang dikirimYes

Body

Kode Error

ParameterTypeRequiredRemarks
requestIdString(64)YesKode unik untuk setiap request
errCodeString(32)Yes0 adalah sukses, untuk lainnya bisa lihat tabel
errCodeDesString(128)NoDeskripsi terkait error
merchantIdString(20)YesMerchant ID
storeIdString(30)NoJika Merchant memiliki cabang dan ingin membuat order dengan ID cabang
paymentTypeString(20)YesNama dari Jenis Pembayaran, cek tabel Jenis Pembayaran
requestAmountDecimal(12,2)NoNominal pada saat permintaan
amountDecimal(12,2)YesNominal dalam Rupiah Indonesia, with 2 decimal placesJenis pengurangan biaya layanan:Ketika OUR dipilih, biaya layanan akan ditambahkan ke nominal order. Ketika biaya layanan yang dihitung mengandung desimal, biaya layanan akan otomatis +1 setelah menghilangkan desimal. Misalnya, 10.000,11 akan secara otomatis +1 untuk mendapatkan 10.001,00.
merchantTradeNoString(32)YesKode unik yang dibuat oleh Merchant untuk setiap transaksi
createTimeString(16)NoyyyyMMddHHmmss
vaCodeString(32)NoNomor Virtual Account
platformTradeNoString(32)NoNomor order di platform Paylabs
successTimeString(16)NoyyyyMMddHHmmss
expiredTimeString(16)NoyyyyMMddHHmmss
statusString(32)No01 PENDING, 09 FAILED, 02 SUCCEEDED
productNameString(100)YesNama layanan atau produk
+productInfoArray<Object>(30)NoInformasi detil atas produk atau layanan dalam transaksi
a?OidString(10)YesProduct ID
a?OnameString(32)YesProduct Name
a?Opricedecimal(12,2)YesNilai dalam Rupiah, mendukung dua angka belakang koma
a?OtypeString(20)YesProduct Type
a?OurlString(200)NoProduct URL
a?OquantityNumber(4)YesProduct Quantity
transFeeRateDecimal(6,6)NoRate Transaksi, mendukung enam angka belakang koma
transFeeAmountDecimal(12,2)NoBiaya, mendukung dua angka belakang koma
totalTransFeeDecimal(12,2)NoTotal rate biaya layanan transaksi (tidak termasuk vatFee), mendukung dua angka belakang koma
vatFeeDecimal(12,2)NoPajak, mendukung dua angka belakang koma
feeTypeString(3)NoJenis pengurangan biaya layanan:BENa??OURStandarnya adalah BEN. Ketika OUR dipilih, biaya layanan akan ditambahkan ke nominal order secara otomatis.
payerString(60)NoNama dari payer yang sebenarnyaJika jenis pembayaran didukung, nama pembayar akan dikembalikan. Jika tidak didukung, nilai null akan dikembalikan.Saat ini hanya mendukung: INA VA �?BNC VACatatan: Bukan “payer” yang dikirim oleh merchant saat memulai permintaan.
accountNoString(32)NoNomor rekening dari payer yang sebenarnyaJika jenis pembayaran didukung, nomor rekening pembayar akan dikembalikan. Jika tidak didukung, nilai null akan dikembalikan.Saat ini hanya mendukung: INA VA, BNC VA

Example

Request

POST /payment/v2.3/va/create
# HTTP Header
Content-Type: application/json;charset=utf-8
X-TIMESTAMP: 2022-09-16T16:58:47.964+07:00
X-SIGNATURE: xxxxxxxxx
X-PARTNER-ID: 010001
X-REQUEST-ID: xxxxxxxxxxxxxxxxxxxxxxxx

# HTTP Body
{
  "merchantId":"0010001",
  "merchantTradeNo":"100100011649755895582",
  "requestId":"200100011649755895582",
  "paymentType":"BTNVA",
  "amount":"10000.00",
  "productName":"Test",
  "payer":"test"
}

Response

POST /payment/v2.3/va/create
# HTTP Header
Content-Type: application/json;charset=utf-8
X-TIMESTAMP: 2022-09-16T16:58:47.964+07:00
X-SIGNATURE: xxxxxxxxx
X-PARTNER-ID: 010001
X-REQUEST-ID: xxxxxxxxxxxxxxxxxxxxxxxx

# HTTP Body
{
  "amount":"10000.00",
  "merchantTradeNo":"100100011649755895582",
  "vaCode":"94810003800000626",
  "platformTradeNo":"2022041200000000025",
  "expiredTime":20220413163136,
  "paymentType":"BTNVA",
  "createTime":"20220412163136",
  "merchantId":"0010001",
  "errCode":"0",
  "requestId":"200100011649755895582",
  "productName":"Test",
  "status":"01",
  "transFeeRate":"0",
  "transFeeAmount":"0",
  "totalTransFee":"0",
  "vatFee":"0"
}