Retrieve bank collection transactions
Learn how to identify and fetch details for incoming bank-to-bank transfers used to top up user accounts. Understand the methods available to view a comprehensive history of these inbound funding activities.
Use Cases
- You want to retrieve all the top-up and withdrawal (when available) transactions made on the user's virtual account.
- You want to retrieve all the top-up transactions made on the main partner's corporate virtual account.
- You want to display all the top-up and withdrawal (bank-to-bank) transactions made against a virtual account.
Prerequisites
- The user profile risk assessment status must not be
risk_flagged. - The user profile must be in an
activestatus. - The user must have an
approvedKYC or KYB status - The user account or wallet must be in an
activestatus. - The user's virtual account must be in an
activestatus.
API Workflow
1
Retrieve the customer's Virtual Account (VA) details
Call Get Linked Virtual Accounts (GET /users/wallets/virtual_accounts) to get the virtual account details that have been provisioned to the customer.
Get Linked Virtual Accounts request
CURL
curl --location 'https://{{accounts_base_url}}/{{program_code}}/v1/users/wallets/virtual_accounts' \
--header 'X-Auth-User-ID: {{user_id}}' \
--header 'Authorization: ••••••'Get Linked Virtual Accounts response
JSON
{
"total_records": 1,
"records_per_page": 10,
"total_pages": 1,
"page": 1,
"links": [
{
"rel": "self",
"href": "https://{{server}}/{{program_code}}/v1/users/wallets/virtual_accounts?page=1&records_per_page=10",
"method": "GET"
}
],
"data": [
{
"id": "24aae1c1-d382-45d6-b8eb-b1b69bb1be9c",
"account_id": "a574bd62-6bf1-458e-7b51-3b95c2dbefb2",
"account_no": "685395021205085935",
"account_holder_name": "John Smith",
"account_number": "885395021205085135",
"bank_code": "DBSSSGSG",
"status": "active",
"created_at": "2025-07-15T12:20:07+08:00",
"account_bank_name": "DBS",
"account_bank_address": "12 Marina Boulevard, DBS Asia Central, Marina Bay Financial Centre Tower 3, Singapore 018982",
"account_bank_country": "Singapore"
}
]
}Take note of the account number of the virtual account. In this example,
"account_no": "685395021205085935"
The virtual account number will be required in the Get Program Bank Transfer Transactions request.
2
Retrieve virtual account transactions
Call Get Program Bank Transfer Transactions (GET /oauth/consumer/account/transactions) passing the virtual account number of the specific customer transaction you want to retrieve.
Get Program Bank Transfer Transactions request
CURL
curl --location 'https://{{collections_base_url}}/{{program_code}}/v1/oauth/consumer/account/transactions?virtual_account_number={{virtual_account_number}}' \
--header 'Authorization: ••••••'Get Program Bank Transfer Transactions response
JSON
{
"total_records": 0,
"records_per_page": 10,
"total_pages": 0,
"page": 1,
"links": null,
"data": []
}Related Links
Was this section helpful?
On this page
- Retrieve bank collection transactions