Signature Payment Gateway
Semua request dari server Espay akan membutuhkan paramater signature, semua merchant harus validasi parameter ini untuk memastikan request hanya datang dari server espay.
Signature transaksi dihasilkan dengan cara menyatukan parameter dengan ##, uppercase paramater string tersebut lalu hash menggunakanan algoritma SHA256, berikut penjelasan dan contoh signature service Espay:
Send Invoice
untuk signature send invoice, parameter sesuai urutan sebagai berikut:
- Signature Key(Key)
- rq_uuid
- rq_datetime
- order_id
- Amount
- Ccy
- comm_code
- Mode
Key yang akan digunakan untuk generate signature (diberikan oleh team Espay).
Request uuid yang dikirim dalam web service.
Request datetime yang dikirim dalam web service.
Merchant order id.
Nominal transaksi.
Nilai mata uang.
Comm_code.
Value yang digunakan adalah SENDINVOICE
Contoh
##7bc074f97c3131d2e290a4as##UUID001##2016-07-25
11:05:49##145000065##10000##IDR##SGWTES##SENDINVOICE##
Closed Invoice
untuk signature closed invoice, parameter sesuai urutan sebagai berikut:
- Signature Key(Key)
- rq_uuid
- rq_datetime
- order_id
- Comm_code.
- Mode
Key yang akan digunakan untuk generate signature (diberikan oleh team Espay).
Request uuid yang dikirim dalam web service.
Request datetime yang dikirim dalam web service.
Merchant order id.
Comm Code
value yang digunakan adalah CLOSEDINVOICE
Contoh
##7bc074f97c3131d2e290a4707a54a623##UUID001##2016-07-25
11:05:49##145000065##SGWTES##CLOSEDINVOiCE##
Transaction Inquiry, Payment notification, Check Payment Status & Update Expire Transaction memiliki urutan parameter yang sama yaitu :
##KEY##rq_datetime##order_id##mode##
berikut penjelasannya :
- Signature Key(Key)
- rq_datetime
- order_id
- Mode
- INQUIRY if request is Transaction Inquiry
- PAYMENTREPORT if request is Payment notification
- CHECKSTATUS if request is Check Payment Status
- EXPIRETRANSACTION if request is Update Expire Transaction
Key digunakan untuk menghasilkan signature, yang diberikan oleh Tim Integrasi Espay
Parameter request datetime yang tersedia disetiap request
Order dari merchant atau id transaksi
paramater ini untuk membedakan signature dari setiap request. Mode ini terdiri dari
Contoh
##7bc074f97c3131d2e290a4707a54a623##2016-07-25 11:05:49##145000065##INQUIRY##
##7BC074F97C3131D2E290A4707A54A623##2016-07-25 11:05:49##145000065##PAYMENTREPORT##
Berikut merupakan langkah-langkah untuk melakukan proses generate signature:
- Satukan Parameter dengan ##
- Uppercase string yang telah disatukan
- Hash dengan sha256
Contoh signature yang telah dimasukan
##7bc074f97c3131d2e290a4707a54a623##2016-07-25 11:05:49##145000065##INQUIRY##
Contoh String Signature Setelah Uppercase
##7BC074F97C3131D2E290A4707A54A623##2016-07-25 11:05:49##145000065##INQUIRY##
contoh string signature setelah proses sha256
67747e2e6b219879563655eb012f77646b9792736f5693f2e44693fec5a67d26