Create Virtual Account



Virtual Account merupakan rekening buatan yang tidak benar-benar nyata atau virtual. Biasanya dalam akun ini terdapat nomor ID pelanggan yang dibuat oleh Bank. Pembuatan akun dapat dilakukan sesuai permintaan perusahaan dengan tujuan untuk melakukan transaksi. Pada setiap transaksi, pelanggan akan mendapatkan satu ID akun atau biasa dikenal dengan VA number. Selanjutnya, masing-masing pelanggan diberikan virtual account yang unik dan berbeda, serta bisa diatur sesuai kebutuhan

API URL
Development : https://sandbox-api.espay.id/rest/merchantpg/sendinvoice
Production: https://api.espay.id/rest/merchantpg/sendinvoice

Format message yang dikirimkan harus dalam bentuk URL encoded. Keterangan untuk setiap field dalam HTTP POST message tersebut:

Parameter Request

Nama Field Attribute Mandatory Keterangan
rq_uuid 64 Ya Request identifier. Id unik untuk mengidentifikasi pesan ini dengan pesan lainnya
rq_datetime 19 Ya Tanggal dan waktu di server aplikasi Espay saat pesan terkirim
order_id 32 Ya Transaction Number / Invoice Id / unique id yang dapat mengidentifikasi tagihan yang dimiliki pelanggan mitra
amount 17 Ya Jumlah total tagihan yang akan dibayarkan oleh pelanggan mitra dengan 2 digit terakhir adalah desimal dari pembayaran
ccy 3 Ya Kode mata uang dari tagihan yang ingin yang dibayarkan contoh IDR
comm_code 32 Ya Kode merchant yang terdaftar pada aplikasi Espay
remark1 32 Tidak Deskripsi pertama. Mandatory bisa “Ya” mengkuti skema. Diisi dengan No Handphone
remark2 32 Ya Deskripsi kedua. Diisi dengan Nama
remark3 32 Tidak Deskripsi ketiga. Diisi dengan alamat email
update 1 Ya Di isi Y jika ingin mengupdate data terhadap order_id yang telah terdaftar
Di isi N jika ingin mendaftarkan order_id baru
bank_code 3 Ya Kode bank yang akan dijadikan pembayaran. Contoh: 008, 016 atau dll.
va_expired 20 Tidak Untuk setup waktu expired dari VA tersebut. (dalam satuan menit)
Contoh: 4000 (artinya akan expired dalam 4000 menit)
signature 64 Ya Signature yang harus divalidasi oleh Espay, lihat halaman ini untuk detailnya

Lalu ESPAY melakukan inquiry terhadap Merchant

Inquiry Request Data

Nama Field Attribute Mandatory Keterangan
rq_uuid 64 Ya Pengidentifikasi request. ID unik untuk mengidentifikasi pesan-pesan tersebut dengan pesan yang lain
rq_datetime 19 Ya Tanggal dan waktu di server aplikasi Espay ketika pesan dikirim
member_id 20 Tidak Kode pelanggan jika terdaftar di aplikasi Espay
comm_code 32 Ya Kode penjual yang terdaftar di aplikasi Espay
order_id 20 Ya Nomor transaksi / ID faktur / ID unik yang mengidentifikasi pesanan / tagihan / faktur
password 32 Tidak Password digunakan untuk mengidentifikasi dan mekanisme validasi oleh penjual untuk mengidentifikasi request secara menyeluruh dari aplikasi Espay
signature 64 Ya Signature diperlukan untuk validasi oleh penjual

Setelah itu, Merchant akan meresponse request

Inquiry Response Data

Nama Field Attribute Mandatory Keterangan
error_code 4 Ya Penjual akan memberikan informasi tentang request berdasarkan bidang ini.
0 = Sukses, proses di penjual telah sukses
lainnya = failed, proses di penjual telah gagal (validasi bermasalah, proses bisnis tidak sesuai, atau masalah lainnya)
error_message 32 Ya Jika error_code sama dengan 0 = Sukses
Jika error_code tidak sama dengan 0, silahkan sisipkan pesan atau keterangan masalah pada bidang ini
order_id 20 Tidak Nomor transaksi / ID faktur / ID unik yang mengidentifikasikan pesanan / tagihan / faktur
amount 13.2 Tidak Jumlah yang harus dibayar oleh pelanggan
Format : 100000.00
ccy 3 Tidak Kode mata uang transaksi. contoh: IDR / USD
description 32 Tidak Deskripsi transaksi
trx_date 19 Tidak Tanggal transaksi di server penjual
Format : DD/MM/YYYYhh:mm:ss

Setelah melakukan request dengan contoh diatas, Merchant akan mendapatkan response. Dengan contoh sebagai berikut :

Parameter Response

Nama Field Attribute Mandatory Keterangan
rq_uuid 4 Ya Request identifier. Id unik untuk mengidentifikasi pesan ini dengan pesan lainnya
rs_datetime 32 Ya Tanggal dan waktu di server aplikasi Espay saat pesan terkirim
error_code 4 Ya Kode error pada web service, 0000 artinya success
error_message 32 Ya Deskripsi error
va_number 16 Ya Virtual Account Number yang digunakan customer untuk membayar.
expired 19 Ya Tanggal dan waktu Virtual Account Number akan kadaluarsa.
description 32 Ya Deskripsi.
total_amount 17 Ya Total Harga dari Merchant + biaya administrasi.
amount 17 Ya Total Harga dari Merchant.
fee 17 Ya biaya administrasi.
  

Contoh Request

POST /rest/merchantpg/sendinvoice HTTP/1.1 Host: sandbox-api.espay.id Connection: keep-alive Content-Type: application/x-www-form-urlencoded Accept: */* rq_uuid=80784df2-accb-46fc-92f4-8d3103b38408 &rq_datetime=2021-10-23 22:51:45 &order_id=21102509019CO9R &amount=754000.00 &ccy=IDR &comm_code=SGWBUKUKUSC &remark1=53620211011190253332 &remark2=TravelAja OTA Web Tiara Iyay &remark3=likesupa@gmail.com &update=N &bank_code=008 &va_expired=10 &signature=e7bb3339e618b6fb8ce3035edc83456813efb962e9f2c2b286e92387615b6f15
  

Contoh Inquiry Request

POST /rest/merchantpg/sendinvoice HTTP/1.1 Host: sandbox-api.espay.id Connection: keep-alive Content-Type: application/x-www-form-urlencoded Accept: */* rq_uuid=80784df2-accb-46fc-92f4-8d3103b38408 &rq_datetime=2021-10-23 22:51:45 &member_id=SGWMERCHANT &comm_code=SGWBUKUKUSC &order_id=21102509019CO9R &signature=e7bb3339e618b6fb8ce3035edc83456813efb962e9f2c2b286e92387615b6f15
  

Contoh Inquiry Response

{ "error_code": "0000", "error_message": "Success", "order_id" : "21102509019CO9R", "amount" : "754000.00", "ccy" : "IDR", "description" : "notes here", "trx_date" : "23/10/2021 22:51:45" }
  

Contoh Response

{ "rq_uuid" : "80784df2-accb-46fc-92f4-8d3103b38408", "rs_datetime" : "2021-10-23 22:51:45", "error_code": "0000", "error_message": "Success", "va_number" : "829306667221345556", "expired" : "2021-11-23 22:51:45", "description" : "notes here", "total_amount" : "756000.00", "amount" : "754000.00", "fee" : "2000.00", }