Create Virtual Account
Developing
POST
/pg/snap/v1/transfer-va/create-va
Last modified:2025-05-19 04:29:39
This endpoint allows you to create a dynamic Virtual Account (VA) for a specific transaction. A VA provides a unique bank account number that customers can use to make payments via bank transfers. Once the payment is received, the system automatically updates the transaction status, facilitating seamless reconciliation.
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://staging-uno.topremit.com/pg/snap/v1/transfer-va/create-va' \
--header 'Authorization;' \
--header 'CHANNEL-ID;' \
--header 'X-TIMESTAMP;' \
--header 'X-SIGNATURE;' \
--header 'X-PARTNER-ID;' \
--header 'X-EXTERNAL-ID;' \
--header 'Content-type: application/json' \
--data-raw '{
"partnerServiceId": "string",
"customerNo": "string",
"virtualAccountNo": "string",
"virtualAccountName": "string",
"trxId": "string",
"totalAmount": {
"value": "string",
"currency": "string"
},
"expiredDate": "string",
"additionalInfo": {
"channel": "string",
"description": "string"
}
}'
Response Response Example
200 - Example 1
{
"responseCode": "string",
"responseMessage": "string",
"virtualAccountData": {
"partnerServiceId": "string",
"customerNo": "string",
"virtualAccountNo": "string",
"trxId": "string",
"totalAmount": {
"value": "string",
"currency": "string"
},
"expiredDate": "string",
"additionalInfo": {
"paymentId": "string",
"channelCode": "string",
"status": "string",
"created_at": "string"
}
}
}
Request
Header Params
Content-type
string
required
Example:
application/json
Authorization
string
required
CHANNEL-ID
string
required
X-TIMESTAMP
string
required
e.g., 2025-05-15T12:34:31+07:00
X-SIGNATURE
string
required
X-PARTNER-ID
string
required
X-EXTERNAL-ID
string
required
Body Params application/json