Virtual Account SNAP
Payment VA (SNAP) Notification
Payment notification for Virtual Account SNAP.
HTTPMethod: POST
URL: ${ROOT_URL}/v1.0/transfer-va/payment
Service Code: 30
Version: 1.0
ServiceGroup: transfer-va
ProductType: payment
| Parameter | Required | Type | Length | Remarks |
|---|
| Content-Type | M | String | - | Fixed value application/json |
| Authorization | C | String | Dynamic | access_token; mandatory if using symmetric encryption |
| X-TIMESTAMP | M | String | 64 | Jakarta time, format 2021-11-29T09:22:18+07:00 |
| X-PARTNER-ID | M | String | 36 | Merchant ID |
| X-EXTERNAL-ID | M | String | 12 | Request ID |
| X-SIGNATURE | M | String | Dynamic | Signature strings |
| X-IP-ADDRESS | M | String | 15 | Client IP (IPv4) |
| Parameter | Required | Type | Length | Remarks |
|---|
| partnerServiceId | M | String | 8 | Merchant ID |
| customerNo | M | String | 20 | Fixed value 00000000000000000000 |
| virtualAccountNo | M | String | 28 | virtualAccountNo |
| virtualAccountName | M | String | 255 | Payer Name |
| virtualAccountEmail | O | String | 255 | Email |
| virtualAccountPhone | O | String | 30 | Mobile Phone, Format: 62xxxxxxxxxxxxx |
| trxId | C | String | 64 | Unique identifier generated by Partner |
| paymentRequestId | M | String | 128 | Unique identifier generated by PJP. Platform Transaction Number |
| channelCode | O | Number | 4 | Channel code based on ISO 18245 |
| hashedSourceAccountNo | O | String | 32 | Source account number in hash |
| sourceBankCode | O | String | 3 | Source account bank code based on |
| + paidAmount | M | Object | | |
| - Value | M | String (ISO4217) | 16,2 | Paid Amount with 2 decimal |
| - Currency | M | String | 3 | Currency, fixed value: IDR |
| + cumulativePaymentAmount | O | Object | | |
| - Value | M | String (ISO4217) | 16,2 | Transaction Amount |
| - Currency | M | String | 3 | Currency, fixed value: IDR |
| paidBills | O | String | 6 | Hexadecimal format of binary of flag of paid bills |
| + totalAmount | O | Object | | |
| - Value | M | String (ISO4217) | 16,2 | Transaction Amount. |
| - Currency | M | String | 3 | Currency, fixed value: IDR |
| trxDateTime | O | Date | 25 | PJP internal system datetime with timezone, which follows the ISO-8601 standard |
| referenceNo | O | String | 64 | Payment auth code generated by PJP, Platform Transaction Number |
| journalNum | O | String | 6 | Sequence journal number in PJP Core System |
| paymentType | O | String | 1 | Type of payment |
| flagAdvise | O | String | 1 | Status is this a retry notification, N: No, Y: Yes |
| subCompany | O | String | 5 | Sub Company code generated by Partner |
| + billDetails | O | Array of Objects | | Array with maximum 24 Objects |
| - billCode | O | String | 2 | From Inquiry Response |
| - billNo | O | String | 18 | From Inquiry Response |
| - billName | O | String | 20 | From Inquiry Response |
| - billShortName | O | String | 10 | From Inquiry Response |
| + billDescription | O | Object | | From Inquiry Response |
| - english | O | String | 18 | From Inquiry Response |
| - indonesia | O | String | 18 | From Inquiry Response |
| - billSubCompany | O | String | 5 | From Inquiry Response |
| + billAmount | O | Object | | |
| - Value | M | String (ISO4217) | 16,2 | Transaction Amount. From Inquiry Response |
| - Currency | M | String | 3 | Currency, fixed value: IDR |
| + additionalInfo | O | Object | unlimited | From Inquiry Response |
| - BillReferenceNo | O | Number | 15 | Bill auth code generated by PJP |
| + freeTexts | O | Array of Objects | | Array with maximum 25 Objects |
| - english | O | String | 32 | Will be shown in Channel |
| - indonesia | O | String | 32 | Will be shown in Channel |
| + additionalInfo | O | Object | | |
| - transFeeRate | O | decimal(8,6) | No | Transaction Fee Rate |
| - transFeeAmount | O | decimal(12,2) | No | Transaction Fee Amount |
| - totalTransFee | O | decimal(12,2) | No | Total Transaction Fee (excluding VAT) |
| - vatFee | O | decimal(12,2) | No | Tax |
| - payer | O | String(60) | No | Actual Payer |
| - accountNo | O | String(32) | No | Actual Payer Account Number |
| Parameter | Required | Type | Length | Remarks |
|---|
| Content-Type | M | String | - | Fixed value application/json |
| X-TIMESTAMP | M | String | 64 | Jakarta time, format 2021-11-29T09:22:18+07:00 |
| Parameter | Required | Type | Length | Remarks |
|---|
| responseCode | M | String | 7 | HTTP status code + service code + case code |
| responseMessage | M | String | 150 | Response Description |
| + virtualAccountData | M | Object | | |
| + paymentFlagReason | O | Object | | Reason for Payment Status multi language |
| - indonesia | O | String | 200 | Reason for Payment Status in English |
| - english | O | String | 200 | Reason for inquiryStatus in Bahasa |
| - partnerServiceId | M | String | 8 | Derivative of X-PARTNER-ID , similar to company code |
| - customerNo | M | String | 20 | Fixed value 00000000000000000000 |
| - virtualAccountNo | M | String | 28 | virtualAccountNo |
| - virtualAccountName | M | String | 255 | Customer name |
| - virtualAccountEmail | O | String | 255 | Customer email |
| - virtualAccountPhone | O | String | 30 | Customer's phone number |
| - trxId | O | String | 32 | From Payment Request |
| - paymentRequestId | M | String | 128 | From Payment Request |
| + paidAmount | O | Object | | |
| - Value | M | String (ISO4217) | 16,2 | Transaction Amount. |
| - Currency | M | String | 3 | Currency, fixed value: IDR |
| - paidBills | O | String | 6 | From Payment Request |
| + totalAmount | O | Object | | |
| - Value | M | String (ISO4217) | 16,2 | Transaction Amount. Example: 10000.00 , Static VA send: 0.00 |
| - Currency | M | String | 3 | Currency, fixed value: IDR |
| - trxDateTime | O | Date | 25 | From Payment Request |
| - referenceNo | O | String | 15 | From Payment Request |
| - journalNum | O | String | 6 | From Payment Request |
| - paymentType | O | String | 1 | From Payment Request |
| - flagAdvise | O | String | 1 | From Payment Request |
| - paymentFlagStatus | O | String | 2 | Status for Payment Flag from Partner |
| + billDetails | O | Array of Objects | | Array with maximum 24 Objects |
| - billerReferenceId | O | | 64 | From Inquiry Response |
| - billCode | O | String | 2 | From Inquiry Response |
| - billNo | O | String | 18 | From Inquiry Response |
| - billName | O | String | 20 | From Inquiry Response |
| - billShortName | O | String | 10 | From Inquiry Response |
| + billDescription | O | Object | | From Inquiry Response |
| - english | O | String | 18 | From Inquiry Response |
| - indonesia | O | String | 18 | From Inquiry Response |
| - billSubCompany | O | String | 5 | From Inquiry Response |
| + billAmount | O | Object | | |
| - Value | M | String (ISO4217) | 16,2 | Transaction Amount. |
| - Currency | M | String | 3 | Currency, fixed value: IDR |
| + additionalInfo | O | Object | unlimited | From Inquiry Response |
| - status | O | String | 2 | Payment status for specific Bill |
| + reason | O | Object | | Reason for Payment Status for specific Bill multi language |
| - english | O | String | 64 | Reason for Payment Status for specific Bill in English |
| - indonesia | O | String | 64 | Reason for Payment Status for specific Bill in Bahasa |
| + freeTexts | O | Array of Objects | | Array with maximum 25 Objects |
| - english | O | String | 32 | Will be shown in Channel |
| - indonesia | O | String | 32 | Will be shown in Channel |
| + additionalInfo | O | Object | | |
| - transFeeRate | O | decimal(8,6) | No | Transaction Fee Rate |
| - transFeeAmount | O | decimal(12,2) | No | Transaction Fee Amount |
| - totalTransFee | O | decimal(12,2) | No | Total Transaction Fee (excluding VAT) |
| - vatFee | O | decimal(12,2) | No | Tax |
| - payer | O | String(60) | No | Actual Payer |
| - accountNo | O | String(32) | No | Actual Payer Account Number |
| Code | DESC |
|---|
| 00 | Success |
| 01 | Initiated |
| 02 | Paying |
| 03 | Pending |
| 04 | Refunded |
| 05 | Canceled |
| 06 | Failed |
| 07 | Not found |
POST /v1.0/transfer-va/payment
# HTTP Header
Content-Type: application/json
X-TIMESTAMP: 2021-11-29T10:00:00+07:00
X-PARTNER-ID: 010001
X-EXTERNAL-ID: 123456789012
X-SIGNATURE: xxxxxxxxx
X-IP-ADDRESS: 172.24.281.24
# HTTP Body
{
"partnerServiceId":" 088899",
"customerNo":"12345678901234567890",
"virtualAccountNo":" 08889912345678901234567890",
"paymentRequestId":"20211029142345",
"additionalInfo":{}
}