Check Status Transaction - API Virtual Account SNAP
Tentang Check Status Transaction - API Virtual Account SNAP
API dengan standar SNAP ini digunakan oleh Merchant untuk mengajukan pemeriksaan status inquiry kepada NICEPAY.
Check Status Transaction - API Virtual Account SNAP
Silakan mengajukan akses token terlebih dahulu untuk melakukan autentikasi melalui bagian Request Access Token API - SNAP.
Service Code | 26 |
|---|---|
API Endpoint | /api/v1.0/transfer-va/status |
Method | HTTP POST |
Description | Untuk mengajukan pemeriksaan status inquiry kepada NICEPAY |
Content-Type | application/json |
Request Check Status Header Parameter
Parameter | Tipe | Ukuran | Kebutuhan | Deskripsi | Contoh |
|---|---|---|---|---|---|
Content-Type | String | | Mandatory | Application / JSON | |
Authorization | String | | Mandatory | Bearer “access_token” | |
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-SIGNATURE | String | | Mandatory | Signature will be generated by Merchant. | |
X-PARTNER-ID | String | 20 | Mandatory | X-PARTNER-ID = CLIENT_ID | |
X-EXTERNAL-ID | String | 40 | Mandatory | Unique Reference Number. (41807553358950093184) | |
CHANNEL-ID | String | 20 | Mandatory | Unique Channel Merchant Credential ID Number. Client ID + "01" = Channel ID "IONPAYTEST" + "01" = "IONPAYTEST01" | IONPAYTEST01 |
Request Check Status Body Parameter
Untuk parameter partnerServiceId dan virtualAccountNo dapat dikirim dengan nilai kosong.
Parameter | Tipe | Ukuran | Kebutuhan | Deskripsi |
|---|---|---|---|---|
partnerServiceId | String | 20 | Mandatory | Partner Service ID / Prefix |
customerNo | String | 40 | Mandatory | Customer Number |
virtualAccountNo | String | 25 | Mandatory | Virtual Account Number |
inquiryRequestId | String | 128 | Mandatory | The same value as X-EXTERNAL-ID |
additionalInfo | Object | | Mandatory | "additionalInfo": { "totalAmount": { ... }, ... } |
totalAmount | Object | | Mandatory | "totalAmount": { ... } |
value | String | 12 | Mandatory | Transaction Amount |
currency | String | 3 | Mandatory | Currency |
trxId | String | 40 | Mandatory | Reference Number from Merchant |
tXidVA | String | 30 | Mandatory | Transaction ID (Generated by NICEPAY) |
Response Check Status Parameter
Parameter | Tipe | Ukuran | Kebutuhan | Deskripsi |
|---|---|---|---|---|
responseCode | String | | Mandatory | |
responseMessage | String | | Mandatory | Response Message |
virtualAccountData | Object | | Mandatory | |
partnerServiceId | String | 20 | Mandatory | Partner Service ID / Prefix |
customerNo | String | 40 | Mandatory | Customer Number |
virtualAccountNo | String | 25 | Mandatory | Virtual Account Number |
inquiryRequestId | String | 128 | Mandatory | The same value as X-EXTERNAL-ID |
totalAmount | Object | | Mandatory | "totalAmount": { .... } |
value | String | 12 | Mandatory | Transaction Amount |
currency | String | 3 | Mandatory | Currency |
additionalInfo | Object | | Mandatory | "additionalInfo": { ... } |
bankCd | String | 4 | Mandatory | |
tXidVA | String | 30 | Mandatory | Transaction ID (Generated by NICEPAY) |
goodsNm | String | 200 | Mandatory | Goods Name |
vacctValidDt | String | 8 | Mandatory | Virtual Account Valid Date |
vacctValidTm | String | 6 | Mandatory | Virtual Account Valid Time |
virtualAccountName | String | 100 | Mandatory | Virtual Account Name |
trxId | String | 40 | Mandatory | Reference Number from Merchant |
transactionStatusDesc | String | | Mandatory | Transaction Status - API SNAP Description : Success Pending Refunded Canceled Failed |
latestTransactionStatus | String | | Mandatory | 00 - Success 03 - Pending 04 - Refunded 05 - Canceled 06 - Failed |
hashedSourceAccountNo | String | 32 | Optional | Source account number in hash or unhash depend on Bank |
sourceBankCode | String | 11 | Optional | Source account Bank code |
Sample Parameter for Check Status Transaction API Virtual Account SNAP
Request Parameter
config = NICEPay.builder()
.isProduction(false)
.isCloudServer(false)
.clientSecret(CLIENT_SECRET)
.partnerId(PARTNER_ID)
.externalID("tXid202402111402271707638094")
.timestamp("2024-12-31T10:11:40+07:00")
.privateKey(PRIVATE_KEY_CLOUD)
.build();
var accessToken = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJJT05QQVlURVNUIiwiaXNzIjoiTklDRVBBWSIsIm5hbWUiOiJCUklOIiwiZXhwIjoiMjAyNC0wMi0xMVQwODowOTozNVoifQ==.aIybLX36dYwfFvW7dcoenXkOe2EAwIYq84ZtPuIf3K8=";
InquiryStatus requestData = InquiryStatus.builder()
.partnerServiceId("99123040")
.customerNo("00007307")
.virtualAccountNo("9912304000007307")
.inquiryRequestId("tXid202402111402271707638094")
.totalAmount("10000.00", "IDR")
.trxId("2024123000000000000001")
.tXidVA("NORMALTEST02202401181001033629")
.build();
NICEPayResponse result = SnapInquiryStatusService.callServiceVACheckStatus(requestData, accessToken, config);
Response Parameter
{
"responseCode": "2002600",
"responseMessage": "Successful",
"virtualAccountData": {
"partnerServiceId": "86230927",
"customerNo": "87654321",
"virtualAccountNo": "8623092787654321",
"inquiryRequestId": "11032020240313",
"totalAmount": {
"value": "10000.00",
"currency": "IDR"
}
},
"additionalInfo": {
"virtualAccountName": "John Test",
"trxId": "2020102900000000000001",
"transactionStatusDesc": "success",
"latestTransactionStatus": "00",
"bankCd": "CENA",
"tXidVA": "OPENFIX0010220221107161035699",
"goodsNm": "Test",
"vacctValidDt": "20221110",
"vacctValidTm": "161037",
"hashedSourceAccountNo": "abcdefghijklmnopqrstuvwxyz123456",
"sourceBankCode": "008"
}
}