Credit Card

Signature

Semua request dari dan ke server Espay akan membutuhkan paramater signature, semua merchant harus validasi parameter ini untuk memastikan request hanya datang dari server Espay dan dari server Merchant.

Signature transaksi dihasilkan menggunakan algoritma hash SHA256 dan untuk menghasilkan signature transaksi, berikut penjelasannya:

  1. Signature Key(Key) : Key digunakan untuk menghasilkan signature, yang diberikan oleh Tim Integrasi Espay
  2. comm_code : Parameter Kode merchant yang diberikan oleh Tim Integrasi Espay
  3. trx_id : Transaksi ID dari merchant
  4. amount : Amount dari merchant

Urutan pengambungan signature adalah seperti berikut:

Tokenization:

  1. Signature Key
  2. comm_code
  3. trx_id
  4. amount

Capture:

  1. Signature Key
  2. comm_code
  3. trx_id
  4. amount

Void:

  1. Signature Key
  2. comm_code
  3. trx_id

Fields ini harus diatur dalam urutan berikut, dipisahkan oleh sebuah ##

##comm_code##trx_id##amount##

Selanjutnya, string harus dikonversi ke UPPERCASE sebelum hash dilakukan.
Contoh :

##SGWTEST##test001##100000##

Uppercase semua string menjadi seperti berikut :

##SGWTEST##TEST001##100000##

Hasil setelah hash dan algoritmasha256

d0f8d02e651802c0c6984794adc78c9b09cd53d504ee13456d8ee2121d20

Tokenization

Proses ini digunakan jika merchant sudah memiliki data token kartu kredit yang diberikan Espay dan ingin melakukan transaksi menggunakan token tersebut.

Alur Pesan

Merchant → Espay

Metode

HTTP Post

API URL

Development : https://sandbox-api.espay.id/rest/creditcard/tokenpayment

Production : https://api.espay.id/rest/creditcard/tokenpayment

Parameter Request:

Nama Parameter Max Length Mandatory Keterangan
comm_code 10 Ya Kode merchant yang terdaftar di Espay
masked_card_no 20 Ya Nomor kartu kredit yang di masking
store_card_number 20 Ya Token yang diberikan oleh Espay
trx_id 32 Ya Nomor transaksi id unik untuk mengidentifikasi order/ billing/ invoice.
description 19 Ya Deskripsi pembayaran
cardname 32 Ya Nama pemegang kartu kredit
email 32 Ya Email pemegang kartu kredit
ccy 5 Ya Mata uang
amount 20 Ya Jumlah pembayaran
call_back_url 32 Tidak Url kembali
signature 64 Ya Signature yang digenerate oleh merchant dan akan di validasi oleh Espay, lihat halaman ini untuk detailnya

Setelah melakukan request dengan contoh diatas, client akan mendapatkan response seperti dibawah ini:

Parameter Response:

Nama Parameter Max Length Mandatory Keterangan
trx_id 32 Ya Nomor transaksi id unik untuk mengidentifikasi order/ billing/ invoice.
error_code 4 Ya Kode error web service, 0000 = success, 9999 = failed/timeout
error_code ini untuk menyatakan sukses/gagal dari service ini saja, untuk status pembayaran berhasil/gagal akan dikirim melalu service Payment Notification
error_message 32 Ya Deskripsi error

Capture Payment

Proses ini digunakan jika merchant ingin melakukan capture terhadap transaksi yang sedang In Progress.

Alur Pesan

Merchant → Espay

Method

HTTP Post

API URL

Development : https://sandbox-api.espay.id/rest/creditcard/capturepayment
Production : https://api.espay.id/rest/creditcard/capturepayment

Parameter Request:

Nama Parameter Max Length 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 Mitra saat pesan dikirim
comm_code 10 Ya Kode merchant yang terdaftar di Espay
trx_id 32 Ya Nomor transaksi id unik untuk mengidentifikasi order/ billing/ invoice.
amount 20 Ya Jumlah pembayaran
signature 64 Ya Signature yang digenerate oleh merchant dan akan di validasi oleh Espay, lihat halaman ini untuk detailnya

Setelah melakukan request dengan contoh diatas, client akan mendapatkan response seperti dibawah ini:

Parameter Response:

Nama Parameter Max Length Mandatory Keterangan
rq_uuid 4 Ya Request identifier. Id unik untuk mengindentifikasi pesan ini dan pesan lainnya
rs_datetime 32 Ya Tanggal dan waktu server Espay saat messages response
trx_id 32 Ya Nomor transaksi id unik untuk mengidentifikasi order/ billing/ invoice.
status_transaction 32 Ya Menyatakan status transaksi saat ini
S: Success
F: Failed
error_code 4 Ya Kode error web service, 0000 = success, 9999 = failed/timeout
error_code ini untuk menyatakan sukses/gagal dari service ini saja, untuk status pembayaran berhasil/gagal akan dikirim melalu service Payment Notification
error_message 32 Ya Deskripsi error

Void Payment

Proses ini digunakan jika merchant ingin melakukan void terhadap transaksi yang sedang In Progress.

Alur Pesan

Merchant → Espay

Method

HTTP Post

API URL

Development : https://sandbox-api.espay.id/rest/creditcard/voidpayment

Production : https://api.espay.id/rest/creditcard/voidpayment

Parameter Request:

Nama Parameter Max Length 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 Mitra saat pesan dikirim
comm_code 10 Ya Kode merchant yang terdaftar di Espay
trx_id 32 Ya Nomor transaksi id unik untuk mengidentifikasi order/ billing/ invoice.
signature 64 Ya Signature yang digenerate oleh merchant dan akan di validasi oleh Espay, lihat halaman ini untuk detailnya

Setelah melakukan request dengan contoh diatas, client akan mendapatkan response seperti dibawah ini:

Parameter Response:

Nama Parameter Max Length Mandatory Keterangan
rq_uuid 4 Ya Request identifier. Id unik untuk mengindentifikasi pesan ini dan pesan lainnya
rs_datetime 32 Ya Tanggal dan waktu server Espay saat messages response
trx_id 32 Ya Nomor transaksi id unik untuk mengidentifikasi order/ billing/ invoice.
status_transaction 32 Ya Menyatakan status transaksi saat ini
S: Success
F: Failed
error_code 4 Ya Kode error web service, 0000 = success, 9999 = failed/timeout
error_code ini untuk menyatakan sukses/gagal dari service ini saja, untuk status pembayaran berhasil/gagal akan dikirim melalu service Payment Notification
error_message 32 Ya Deskripsi error
























































































































Contoh Response Tokenization

{ "trx_id": "test001", "error_code": "0000", "error_message": "Success" }


















































Contoh Response Capture Payment

{ "rq_uuid": "capturepay001", "rs_datetime": "2018-08-15 10:33:00", "trx_id": "ESP1534245432RZRH", "status_transaction": "F", "error_code": "0000", "error_message": "Success" }























































Contoh Response Void Payment

{ "rq_uuid": "capturepay001", "rs_datetime": "2018-08-15 10:33:00", "trx_id": "ESP1534245432RZRH", "status_transaction": "F", "error_code": "0000", "error_message": "Success" }