# 5 Static VA Collection Verification API
IMPORTANT:currently only support ALFAMART_VA
# Description
This interface is implemented by the merchant and is used to verify if the collection is allowed and inquiry the merchant about the transaction details before a user completes a repayment transaction.
# HTTP Request Information
# Request URL
Provided by the merchant
# Request Method
POST
# Request Header
| parameter name | Is it mandatory | type of data | description |
|---|---|---|---|
| Content-Type | mandatory | string | application/json |
# Request Body
| parameter name | Is it mandatory | type of data | length | example | description |
|---|---|---|---|---|---|
| param | mandatory | string | - | - | Parameter Body |
| sign | mandatory | string | - | 45eebd745dcf0b5f6d6f9fcde28cd9fe8116a892 | Sign |
# param
| parameter name | Is it mandatory | type of data | description | remark |
|---|---|---|---|---|
| eventName | mandatory | string | Event name(payment.verification) | |
| mchOrderId | mandatory | string | Merchant Order id | |
| channelCode | mandatory | string | Channel code | |
| amount | conditional | long | Amount | mandatory when channelCode is not ALFAMART_VA |
| referenceNumber | mandatory | string | Repayment code | |
| mobile | mandatory | string | Mobile | |
| createTime | mandatory | string | Inquiry Create time |
# Request Body Example
ALFAMART_VA
{
"param": "{\"eventName\":\"payment.verification\", \"mchOrderId\":\"TestMchOrderIdP0057\", \"channelCode\":\"ALFAMART_VA\", \"referenceNumber\":\"00004000011000000001\", \"mobile\":\"0812345678\", \"createTime\":\"2023-12-12 10:21:23\"}",
"sign": "45eebd745dcf0b5f6d6f9fcde28cd9fe8116a892"
}
Other channels
{
"param": "{\"eventName\":\"payment.verification\", \"mchOrderId\":\"TestMchOrderIdP0057\", \"channelCode\":\"XXX_VA\", \"amount\": 10000, \"referenceNumber\":\"12345678\", \"mobile\":\"0812345678\", \"createTime\":\"2023-12-12 10:21:23\"}",
"sign": "45eebd745dcf0b5f6d6f9fcde28cd9fe8116a892"
}
# Response
# Response Body
| parameter name | Is it mandatory | type of data | description |
|---|---|---|---|
| code | mandatory | int | status code |
| message | mandatory | string | description about the status |
| data | mandatory | object | response data |
# data
| parameter name | Is it mandatory | type of data | description | remark |
|---|---|---|---|---|
| amount | conditional | long | amount of the transaction | mandatory when channelCode is ALFAMART_VA |
# code Example
| Code | Description |
|---|---|
| 2000 | Success |
| 1000 | Decline |
| 1001 | Merchant defined error (message to customer) |
| 1002 | Amount exceeds the limit error |
| 1003 | Bill was expired |
| 1004 | Bill not found |
# Response Body Example
channel ALFAMART_VA success example
{
"code": 2000,
"message": "Success",
"data": {
"amount": 10000
}
}
other channels success example
{
"code": 2000,
"message": "Success"
}
decline example 1000
{
"code": 1000,
"message": "Decline"
}
decline example 1001
{
"code": 1001,
"message": "<Merchant defined error (message to customer)>"
}
decline example 1002
{
"code": 1002,
"message": "Amount exceeds the limit error"
}