1. Reconciliation
BPN OpenAPI
  • Get started
    • Introduction to BPN
    • Introduction to API
    • Architecture Overview
    • Authentication
    • Environments
    • Response envelope
    • Idempotency
  • Guides
    • Virtual Account
      • Virtual Account Overview
      • VA · Payin
      • VA · Statuses
      • VA · Currencies & limits
      • VA · Payout
      • VA · RFI
      • VA Opening
        • VND VA Opening
        • BRL VA Opening
    • Wallet
      • Wallet · Transfer
      • Wallet · Assets & limits
      • Wallet · Deposit whitelist
      • Wallet · PaymentLink
      • Wallet Overview
      • Wallet · Deposit
      • Wallet · Statuses
      • Wallet · Withdraw
    • Convert
      • Convert Overview
      • Convert · Quote & submit
      • Convert · Business types
      • Convert · Pairs & limits
      • Convert · Statuses
  • API Reference
    • Virtual Account
      • Virtual Account field notes
      • Inquiry Master VA Balance
      • List Primary Virtual Accounts
      • Create Virtual Account
      • Get Virtual Account Detail
      • List Virtual Account
      • List Virtual Account Orders
      • Get Virtual Account Order Detail
      • Refund Virtual Account Order
      • List RFI Sub Virtual Account
      • Get Sub Virtual Account RFI Template Info
      • Sub Virtual Account Submit RFI
      • Add Bank Account
      • List Bank Account
      • List Banks
      • Payout via Virtual Account
      • Send Email Verify Code
    • Wallet
      • Wallet field notes
      • Deposit Whitelist
        • Get Deposit Whitelist Options
        • Register Deposit Source Address
        • List Deposit Source Addresses
        • Get Deposit Source Address
        • Disable Deposit Source Address
        • Submit Payer Details for a Received Deposit
        • Save Sub-wallet Payer Profile
        • Update Sub-wallet Payer Profile
        • Get Sub-wallet Payer Profile
        • Get Deposit Whitelist Case
      • Get Asset Balance
      • Get Deposit Address
      • Add Deposit Sender
      • Add Withdraw Whitelist
      • Delete Withdraw Whiltelist
      • Request Withdraw
      • Query Wallet Internal Transfer Detail
      • List Wallet Internal Transfer order
      • Wallet Internal Transfer
      • Create Sub Account
      • Query Transaction History
      • List Wallets
      • List Sub Account
      • Get Transaction Detail
      • List Wallet Transactions
      • Get Wallet Transaction Detail
    • Payment Link
      • Abnormal fund
        • Abnormal funds
        • Matchable Payment links
        • Link Order(Abnormal fund)
        • Submit to platform
      • Create Payment Link
      • List Payment links
      • Get Curreny Network Config
    • Convert
      • Convert field notes
      • Inquery FX Rate
      • Get Stablecoin Quote
      • Create Stable Order
      • Get Order (Single) Detail
      • List Orders(Batch)
    • KYB
      • Share KYB/KYC Info For Sub User
      • Get KYB Sub User Status
    • Reconciliation
      • Get Reconciliation Order List By Page
        GET
    • External Provider
      • FE: Create stablecoin collection sub-account link
      • FE: Deposit Travel Rule
      • External Provider · Deposit whitelist
      • Create stablecoin collection sub-account link
      • Get sub wallet account
      • List sub wallet accounts
      • Change sub wallet status
      • Query stablecoin collection order list
      • Query stablecoin collection order status
      • Get quote
      • Accept stablecoin collection order
      • Reject stablecoin collection order
      • Query USD balance
      • USD Payout (withdrawal)
      • Query USD Payout order status
      • Query USD Payout order list
      • Create deposit Travel Rule link
      • Create deposit Travel Rule detail link
    • Mock
      • Mock Virtual account Payin Order
      • Mock wallet deposit transaction
      • Mock Payin Order Refund
      • Mock Payout Order Update Status
    • Pay Session
      • Request Pay Session
    • Files
      • Request File Upload URL
  • Webhooks
    • Webhooks Overview
    • KYB notifications
    • Event catalogue
    • Resend Fail Webhook
      POST
    • Open Virtual Account Status
    • Virtual Account Payment Status
    • Virtual Account Invoice update
    • Transaction Status Notification
    • KYB Status Notification
    • Deposit Sender Detail Required
    • Abnormal Fund Notification
    • WALLET_TRANSFER_ORDER_UPDATED
    • Sub Virtual Account RFI Required
    • Sub Wallet Update
    • wallet address whitelist Update
    • Crypto Deposit Order Notification
    • Collect Order Updated
    • Usd Payout Order Updated
    • onboard result
    • partner order status
    • PaymentLink Notification
    • Deposit Whitelist Notification
  • Partner Flow
    • Share KYB/KYC and open account directly
    • Get KYB/KYC submit + open account status
    • Get Stablecoin Quote
    • Create Stable Order
    • Get Order (Single) Detail
    • List Orders(Batch)
    • Submit hash
  • Appendix
    • Enums quick reference
    • Enum
    • Virtual Account(VA) Support List & KYB requirement
  • Release Notes & Changelog
  • Errors
    • Error codes catalogue
  • Change Log
    • 2026-09-21 Virtual Account independent refund orders
    • Wallet deposit source-address whitelist
  1. Reconciliation

Get Reconciliation Order List By Page

GET
/v1/stable/reconciliation/list
VA refunds appear as separate PAYIN_REFUND / PAYOUT_REFUND rows (RE*). Original VA rows keep orderStatus=SUCCESS and expose refundStatus / refundOrderId. Amounts are decimal strings.

Request

Authorization
API Key
Add parameter in header
API-KEY
Example:
API-KEY: ********************
API Key
Add parameter in header
API-SIGNATURE
Example:
API-SIGNATURE: ********************
API Key
Add parameter in header
API-TIMESTAMP
Example:
API-TIMESTAMP: ********************
or
Query Params

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location '/v1/stable/reconciliation/list?businessType=PAYIN_REFUND&transactionType=PAY_IN%2CCASH_OUT%2CDEPOSIT&status=SUCCESS%2CFAIL&sourceCurrency=MXN%2CMEXAS&targetCurrency=MXN%2CMEXAS&accountId=sample_accountId&startTime=1&endTime=1&pageNum=0&pageSize=0&refundStatus=REFUNDED' \
--header 'API-KEY: <api-key>' \
--header 'API-SIGNATURE: <api-key>' \
--header 'API-TIMESTAMP: <api-key>'

Responses

🟢200Success
application/json
Bodyapplication/json

Example
{"status": 200, "msg": "success", "traceId": "trace-123456789", "data": {"pageNumber": 1, "pageSize": 10, "totalPage": 1, "totalRow": 10, "records": [{"businessType": "FIAT_VIRTUAL_ACCOUNT", "transactionId": "TXN-FVA-10001", "transactionType": "CASH_OUT", "amount": 1500, "currency": "EUR", "ourFeeCurrency": "EUR", "ourFeeAmount": 5, "swiftFeeCurrency": "EUR", "swiftFeeAmount": 10, "status": "SUCCESS", "paymentMethod": "VIRTUAL_ACCOUNT", "txId": "ONCHAIN-1231", "sourceFiatCurrency": "EUR", "mintCryptoCurrency": "", "burnCryptoCurrency": "", "targetFiatCurrency": "EUR", "sourceFiatAmt": "1500", "mintCryptoAmt": "", "burnCryptoAmt": "", "targetFiatAmt": "1500", "mintTxId": "", "burnTxId": "", "mintStartTime": 0, "mintEndTime": 0, "swapStartTime": 0, "swapEndTime": 0, "burnStartTime": 0, "burnEndTime": 0, "stage": "Fiat_Transfer", "virtualAccountName": "EURO MAIN ACCOUNT", "sourceAccountName": "Company A", "sourceAccountNumber": "DE1234567890", "sourceAccountBankName": "Deutsche Bank", "targetAccountName": "Company A", "targetAccountNumber": "DE1234567890", "targetAccountBankName": "Deutsche Bank", "orderCreateTime": 1736400000, "orderCompleteTime": 1736403600, "rfiStatus": "NONE", "sourceAddress": "", "targetAddress": ""}, {"businessType": "FIAT_VIRTUAL_ACCOUNT", "transactionId": "TXN-FVA-10002", "transactionType": "CASH_OUT_BATCH", "amount": 4500, "currency": "EUR", "ourFeeCurrency": "EUR", "ourFeeAmount": 12, "swiftFeeCurrency": "EUR", "swiftFeeAmount": 20, "status": "PROCESSING", "paymentMethod": "TRANSFER", "txId": "ONCHAIN-2231", "sourceFiatCurrency": "EUR", "mintCryptoCurrency": "", "burnCryptoCurrency": "", "targetFiatCurrency": "EUR", "sourceFiatAmt": "4500", "mintCryptoAmt": "", "burnCryptoAmt": "", "targetFiatAmt": "4500", "mintTxId": "", "burnTxId": "", "mintStartTime": 0, "mintEndTime": 0, "swapStartTime": 0, "swapEndTime": 0, "burnStartTime": 0, "burnEndTime": 0, "stage": "Batch_Processing", "virtualAccountName": "EURO MAIN ACCOUNT", "sourceAccountName": "Company A", "sourceAccountNumber": "DE99887766", "sourceAccountBankName": "BNP Paribas", "targetAccountName": "Company A", "targetAccountNumber": "DE99887766", "targetAccountBankName": "BNP Paribas", "orderCreateTime": 1736400000, "orderCompleteTime": 0, "rfiStatus": "NONE", "sourceAddress": "", "targetAddress": ""}, {"businessType": "FIAT_VIRTUAL_ACCOUNT", "transactionId": "TXN-FVA-10003", "transactionType": "CONVERT_BUY", "amount": 2000, "currency": "EUR", "ourFeeCurrency": "EUR", "ourFeeAmount": 4, "swiftFeeCurrency": "EUR", "swiftFeeAmount": 8, "status": "SUCCESS", "paymentMethod": "VIRTUAL_ACCOUNT", "txId": "ONCHAIN-3231", "sourceFiatCurrency": "EUR", "mintCryptoCurrency": "USDC", "burnCryptoCurrency": "", "targetFiatCurrency": "", "sourceFiatAmt": "2000", "mintCryptoAmt": "2100", "burnCryptoAmt": "", "targetFiatAmt": "", "mintTxId": "MINT123", "burnTxId": "", "mintStartTime": 1736400000, "mintEndTime": 1736400300, "swapStartTime": 0, "swapEndTime": 0, "burnStartTime": 0, "burnEndTime": 0, "stage": "Mint", "virtualAccountName": "EURO MAIN ACCOUNT", "sourceAccountName": "Company A", "sourceAccountNumber": "DE5544332211", "sourceAccountBankName": "HSBC", "targetAccountName": "", "targetAccountNumber": "", "targetAccountBankName": "", "orderCreateTime": 1736400000, "orderCompleteTime": 1736400500, "rfiStatus": "NONE", "sourceAddress": "", "targetAddress": ""}, {"businessType": "FIAT_VIRTUAL_ACCOUNT", "transactionId": "TXN-FVA-10004", "transactionType": "CONVERT_SELL", "amount": 1800, "currency": "EUR", "ourFeeCurrency": "EUR", "ourFeeAmount": 3, "swiftFeeCurrency": "EUR", "swiftFeeAmount": 6, "status": "SUCCESS", "paymentMethod": "TRANSFER", "txId": "ONCHAIN-4231", "sourceFiatCurrency": "", "mintCryptoCurrency": "", "burnCryptoCurrency": "USDC", "targetFiatCurrency": "EUR", "sourceFiatAmt": "", "mintCryptoAmt": "", "burnCryptoAmt": "1900", "targetFiatAmt": "1800", "mintTxId": "", "burnTxId": "BURN123", "mintStartTime": 0, "mintEndTime": 0, "swapStartTime": 0, "swapEndTime": 0, "burnStartTime": 1736400000, "burnEndTime": 1736400300, "stage": "Burn", "virtualAccountName": "EURO MAIN ACCOUNT", "sourceAccountName": "", "sourceAccountNumber": "", "sourceAccountBankName": "", "targetAccountName": "Company A", "targetAccountNumber": "DE55449900", "targetAccountBankName": "ING", "orderCreateTime": 1736400000, "orderCompleteTime": 1736400400, "rfiStatus": "NONE", "sourceAddress": "", "targetAddress": ""}, {"businessType": "FIAT_VIRTUAL_ACCOUNT", "transactionId": "TXN-FVA-10005", "transactionType": "PAY_IN", "amount": 950, "currency": "EUR", "ourFeeCurrency": "EUR", "ourFeeAmount": 2, "swiftFeeCurrency": "EUR", "swiftFeeAmount": 4, "status": "SUCCESS", "paymentMethod": "VIRTUAL_ACCOUNT", "txId": "ONCHAIN-5231", "sourceFiatCurrency": "EUR", "mintCryptoCurrency": "", "burnCryptoCurrency": "", "targetFiatCurrency": "", "sourceFiatAmt": "950", "mintCryptoAmt": "", "burnCryptoAmt": "", "targetFiatAmt": "", "mintTxId": "", "burnTxId": "", "mintStartTime": 0, "mintEndTime": 0, "swapStartTime": 0, "swapEndTime": 0, "burnStartTime": 0, "burnEndTime": 0, "stage": "PayIn", "virtualAccountName": "EURO MAIN ACCOUNT", "sourceAccountName": "Alice", "sourceAccountNumber": "DE112233", "sourceAccountBankName": "Santander", "targetAccountName": "Company A", "targetAccountNumber": "DE998877", "targetAccountBankName": "Santander", "orderCreateTime": 1736400000, "orderCompleteTime": 1736400200, "rfiStatus": "NONE", "sourceAddress": "", "targetAddress": ""}, {"businessType": "FIAT_VIRTUAL_ACCOUNT", "transactionId": "TXN-FVA-10006", "transactionType": "REFUND", "amount": 300, "currency": "EUR", "ourFeeCurrency": "EUR", "ourFeeAmount": 1, "swiftFeeCurrency": "EUR", "swiftFeeAmount": 2, "status": "REFUNDED", "paymentMethod": "TRANSFER", "txId": "ONCHAIN-6231", "sourceFiatCurrency": "", "mintCryptoCurrency": "", "burnCryptoCurrency": "", "targetFiatCurrency": "", "sourceFiatAmt": "", "mintCryptoAmt": "", "burnCryptoAmt": "", "targetFiatAmt": "", "mintTxId": "", "burnTxId": "", "mintStartTime": 0, "mintEndTime": 0, "swapStartTime": 0, "swapEndTime": 0, "burnStartTime": 0, "burnEndTime": 0, "stage": "", "virtualAccountName": "", "sourceAccountName": "", "sourceAccountNumber": "", "sourceAccountBankName": "", "targetAccountName": "", "targetAccountNumber": "", "targetAccountBankName": "", "orderCreateTime": 1736400000, "orderCompleteTime": 1736400100, "rfiStatus": "NONE", "sourceAddress": "", "targetAddress": ""}, {"businessType": "FIAT_VIRTUAL_ACCOUNT", "transactionId": "TXN-FVA-10007", "transactionType": "TRANSFER", "amount": 1200, "currency": "EUR", "ourFeeCurrency": "EUR", "ourFeeAmount": 2, "swiftFeeCurrency": "EUR", "swiftFeeAmount": 5, "status": "SUCCESS", "paymentMethod": "VIRTUAL_ACCOUNT", "txId": "ONCHAIN-7231", "sourceFiatCurrency": "", "mintCryptoCurrency": "", "burnCryptoCurrency": "", "targetFiatCurrency": "", "sourceFiatAmt": "", "mintCryptoAmt": "", "burnCryptoAmt": "", "targetFiatAmt": "", "mintTxId": "", "burnTxId": "", "mintStartTime": 0, "mintEndTime": 0, "swapStartTime": 0, "swapEndTime": 0, "burnStartTime": 0, "burnEndTime": 0, "stage": "", "virtualAccountName": "", "sourceAccountName": "", "sourceAccountNumber": "", "sourceAccountBankName": "", "targetAccountName": "", "targetAccountNumber": "", "targetAccountBankName": "", "orderCreateTime": 1736400000, "orderCompleteTime": 1736400200, "rfiStatus": "NONE", "sourceAddress": "", "targetAddress": ""}, {"businessType": "CONVERT", "transactionId": "TXN-CON-20001", "transactionType": "CONVERT_BUY", "amount": 500, "currency": "EUR", "ourFeeCurrency": "EUR", "ourFeeAmount": 1, "swiftFeeCurrency": "EUR", "swiftFeeAmount": 1, "status": "SUCCESS", "paymentMethod": "TRANSFER", "txId": "ONCHAIN-CON-111", "sourceFiatCurrency": "EUR", "mintCryptoCurrency": "USDC", "burnCryptoCurrency": "", "targetFiatCurrency": "", "sourceFiatAmt": "500", "mintCryptoAmt": "530", "burnCryptoAmt": "", "targetFiatAmt": "", "mintTxId": "MINTCON111", "burnTxId": "", "mintStartTime": 1736400000, "mintEndTime": 1736400100, "swapStartTime": 0, "swapEndTime": 0, "burnStartTime": 0, "burnEndTime": 0, "stage": "Mint", "virtualAccountName": "", "sourceAccountName": "", "sourceAccountNumber": "", "sourceAccountBankName": "", "targetAccountName": "", "targetAccountNumber": "", "targetAccountBankName": "", "orderCreateTime": 1736400000, "orderCompleteTime": 1736400300, "rfiStatus": "NONE", "sourceAddress": "", "targetAddress": ""}, {"businessType": "CONVERT", "transactionId": "TXN-CON-20002", "transactionType": "CONVERT_SELL", "amount": 700, "currency": "EUR", "ourFeeCurrency": "EUR", "ourFeeAmount": 2, "swiftFeeCurrency": "EUR", "swiftFeeAmount": 2, "status": "SUCCESS", "paymentMethod": "VIRTUAL_ACCOUNT", "txId": "ONCHAIN-CON-222", "sourceFiatCurrency": "", "mintCryptoCurrency": "", "burnCryptoCurrency": "USDC", "targetFiatCurrency": "EUR", "sourceFiatAmt": "", "mintCryptoAmt": "", "burnCryptoAmt": "720", "targetFiatAmt": "700", "mintTxId": "", "burnTxId": "BURNCON222", "mintStartTime": 0, "mintEndTime": 0, "swapStartTime": 0, "swapEndTime": 0, "burnStartTime": 1736400100, "burnEndTime": 1736400200, "stage": "Burn", "virtualAccountName": "", "sourceAccountName": "", "sourceAccountNumber": "", "sourceAccountBankName": "", "targetAccountName": "", "targetAccountNumber": "", "targetAccountBankName": "", "orderCreateTime": 1736400000, "orderCompleteTime": 1736400400, "rfiStatus": "NONE", "sourceAddress": "", "targetAddress": ""}, {"businessType": "TRANSFER", "transactionId": "TXN-TRF-30001", "transactionType": "TRANSFER", "amount": 900, "currency": "EUR", "ourFeeCurrency": "EUR", "ourFeeAmount": 1.5, "swiftFeeCurrency": "EUR", "swiftFeeAmount": 3, "status": "SUCCESS", "paymentMethod": "TRANSFER", "txId": "ONCHAIN-TRF-999", "sourceFiatCurrency": "", "mintCryptoCurrency": "", "burnCryptoCurrency": "", "targetFiatCurrency": "", "sourceFiatAmt": "", "mintCryptoAmt": "", "burnCryptoAmt": "", "targetFiatAmt": "", "mintTxId": "", "burnTxId": "", "mintStartTime": 0, "mintEndTime": 0, "swapStartTime": 0, "swapEndTime": 0, "burnStartTime": 0, "burnEndTime": 0, "stage": "", "virtualAccountName": "", "sourceAccountName": "Wallet A", "sourceAccountNumber": "", "sourceAccountBankName": "", "targetAccountName": "Wallet B", "targetAccountNumber": "", "targetAccountBankName": "", "orderCreateTime": 1736400000, "orderCompleteTime": 1736400100, "rfiStatus": "NONE", "sourceAddress": "0xSource123", "targetAddress": "0xTarget456"}]}}
Previous
Get KYB Sub User Status
Next
FE: Create stablecoin collection sub-account link
Built with