Notification - API Virtual Account SNAP
Tentang Notification - API Virtual Account SNAP
API dengan standar SNAP ini digunakan untuk mengirimkan notifikasi transaksi pembayaran pada metode pembayaran Virtual Account.
Panduan Validasi X-SIGNATURE
Berikut adalah cara untuk melakukan validasi X-SIGNATURE pada Request Header Notify:
SHA256withRSA (Public_Key, stringToSign) stringToSign = client_ID + “|” + X-TIMESTAMP
Informasi khusus API Notifikasi SNAP terkait kredensial Public_Key akan diberikan oleh Tim NICEPAY kepada Merchant melalui email, karena kredensial Public_Key yang akan digunakan di API Notifikasi SNAP berbeda dengan API Transaksi SNAP (Registration, Inquiry & Payment).
Silakan menghubungi Tim Integrasi melalui email ([email protected]) untuk informasi atau bantuan lebih lanjut.
Berikut adalah contoh hasil X-SIGNATURE dari cara validasi di atas:
mYyscWBs00bm0TJQ/xY7Uu1Goh8qXJyYSlo88rFrhQ+mlyQkMtq NKMlZDpS+
Merchant Notification - API Virtual Account SNAP
Service Code | 25 |
|---|---|
API Endpoint | [merchant-domain]/api/v1.0/transfer-va/payment |
HTTP Method | POST |
Content-type | application/json |
Description | Transaction Result Notification (when success) If your system use firewall, add allow policy for NICEPAY IP = IP Public environtment Production: 103.20.51.34 103.20.51.33 18.98.96.50 IP Public environtment Dev: 103.20.51.39 103.20.51.40 18.98.96.54 |
Request Notification Header Parameter
Parameter | Tipe | Kebutuhan | Deskripsi |
|---|---|---|---|
Content-Type | String | Mandatory | Application / JSON |
X-TIMESTAMP | String | Mandatory | Using ISO 8601 as timestamp format. Transaction date time, in format YYYYMMDDTHH:mm:ss+07:00. Time must be in GMT+7 (Jakarta time). 2022-03-21T10:11:40+07:00. |
X-CLIENT-KEY | String | Mandatory | Unique Partner ID, Partner ID = Client ID |
X-SIGNATURE | String | Mandatory | Signature will be generated by Merchant. |
Request Notification Body Parameter
Parameter | Tipe | Ukuran | Kebutuhan | Deskripsi |
|---|---|---|---|---|
partnerServiceId | String | 20 | Mandatory | Partner Service ID / Prefix |
customerNo | String | 40 | Mandatory | Customer Number |
virtualAccountNo | String | 16 | Mandatory | Virtual Account Number |
virtualAccountName | String | 100 | Mandatory | Virtual Account Name |
trxId | String | 40 | Mandatory | Transaction ID (Reference Number from Merchant) |
paymentRequestId | String | 128 | Mandatory | Unique Identifier from NICEPAY |
hashedSourceAccountNo | String | 32 | Optional | Source account number in hash or unhash depend on Bank |
sourceBankCode | String | 11 | Optional | Source account Bank code |
paidAmount | Object | Variable | Mandatory | Amount of paid |
value | String | 12 | Mandatory | Value |
currency | String | 3 | Mandatory | Currency |
trxDateTime | String | 25 | Mandatory | Transaction Date Time |
additionalInfo | Object | Variable | Mandatory | Additional information |
bankCd | String | 4 | Mandatory | |
goodsNm | String | 200 | Mandatory | Goods Name |
vacctValidDt | String | 8 | Mandatory | Virtual Account Valid Date |
vacctValidTm | String | 6 | Mandatory | Virtual Account Valid Time |
Response Notification Header Parameter
Parameter | Tipe | Kebutuhan | Deskripsi |
|---|---|---|---|
Content-Type | String | Mandatory | Application / JSON |
X-TIMESTAMP | String | Mandatory | Using ISO 8601 as timestamp format. Transaction date time, in format YYYYMMDDTHH:mm:ss+07:00. Time must be in GMT+7 (Jakarta time). 2022-03-21T10:11:40+07:00. |
Response Notification Body Parameter
Parameter | Tipe | Ukuran | Kebutuhan | Deskripsi |
|---|---|---|---|---|
responseCode | String | 7 | Mandatory | |
responseMessage | String | 150 | Mandatory | Response Message |
virtualAccountData | Object | Variable | Mandatory | Virtual Account Data |
partnerServiceId | String | 20 | Mandatory | Partner Service ID / Prefix |
customerNo | String | 40 | Mandatory | Customer Number |
virtualAccountNo | String | 16 | Optional | Virtual Account Number |
virtualAccountName | Object | 100 | Mandatory | Virtual Account Name |
trxId | Object | 40 | Mandatory | Merchant Reference Number |
paymentRequestId | String | 128 | Mandatory | Unique Identifier from NICEPAY |
hashedSourceAccountNo | String | 32 | Optional | Source account number in hash or unhash depend on Bank |
sourceBankCode | String | 11 | Optional | Optional Source account Bank code |
paidAmount | Object | Variable | Mandatory | Amount of paid |
value | Object | 12 | Mandatory | Value |
currency | String | 3 | Mandatory | Currency |
trxDateTime | String | 25 | Mandatory | Transaction Date Time |
additionalInfo | Object | Variable | Mandatory | Additional information |
bankCd | String | 4 | Mandatory | |
goodsNm | String | 200 | Mandatory | Goods Name |
vacctValidDt | String | 8 | Mandatory | Virtual Account Valid Date |
vacctValidTm | String | 6 | Mandatory | Virtual Account Valid Time |
Sample Parameter for Notification API Virtual Account SNAP
Request Parameter
curl --location 'https://www.merchantbaseurl.com/api/v1.0/transfer-va/payment' \
--header 'Content-Type: application/json' \
--header 'X-TIMESTAMP: 2023-11-23T07:44:11+07:00' \
--header 'X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5' \
--header 'X-CLIENT-KEY: 82150823919040624621823174737537' \
--data '{
"partnerServiceId": "70151021",
"customerNo": "10000001",
"virtualAccountNo": "7015102110000001",
"virtualAccountName": "John Test",
"trxId": "abcdefgh1234",
"paymentRequestId": "008",
"hashedSourceAccountNo": "abcdefghijklmnopqrstuvwxyz123456",
"sourceBankCode": "008",
"paidAmount": {
"value": "10000.00",
"currency": "IDR"
},
"trxDateTime": "20201231T235959Z",
"additionalInfo": {
"bankCd": "BMRI",
"goodsNm": "Test",
"vacctValidDt": "20221110",
"vacctValidTm": "161037"
}
}'
Response Parameter
//HEADER SECTION
Content-type: application/json
X-TIMESTAMP: 2023-11-23T07:44:16+07:00
{
"responseCode": "2002500",
"responseMessage": "Success",
"virtualAccountData": {
"partnerServiceId": "70151021",
"customerNo": "10000001",
"virtualAccountNo": "7015102110000001",
"virtualAccountName": "John Test",
"trxId": "abcdefgh1234",
"paymentRequestId": "2020102900000000000001",
"hashedSourceAccountNo": "abcdefghijklmnopqrstuvwxyz123456",
"sourceBankCode": "008",
"paidAmount": {
"value": "10000.00",
"currency": "IDR"
},
"trxDateTime": "20201231T235959Z",
"additionalInfo": {
"bankCd": "BMRI",
"goodsNm": "Test",
"vacctValidDt": "20221110",
"vacctValidTm": "161037"
}
}
}