List refunds
GET
https://userapi.sepay.vn/v2/bank-accounts/{ba_xid}/refundsReturns the refunds of one bank account, newest first.
Parameters
ba_xidstringrequired
Bank account UUID
orderstring
Filter by order UUID
transactionstring
Filter by collection transaction id
statusenum
Filter by refund status
pageinteger
Page (default: 1)
Default:1per_pageinteger
Records per page, 1-100 (default: 20)
Default:20Filter for reconciliation
Filter status=pending to find refunds without a final answer, status=succeeded to reconcile the money that actually went back. Filter by transaction to see how much of one payment has been refunded.
Code Examples
>
>
>
curl --request GET \--url 'https://userapi.sepay.vn/v2/bank-accounts/f9e8d7c6-b5a4-3210-fedc-ba0987654321/refunds?order=SOME_STRING_VALUE&transaction=SOME_STRING_VALUE&status=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE&per_page=SOME_INTEGER_VALUE' \--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
Response (HTTP 200)
Response 200 - Refund list
{
"status": "success",
"data": [
{
"refund_id": "RF-7QK3-M8PZ-4VNW",
"order_type": "va_order",
"order_id": "string",
"order_code": "string",
"xid": "string",
"transaction_id": "string",
"original_reference": "string",
"amount": 50000,
"currency": "VND",
"scope": "full",
"status": "pending",
"created_at": "2026-08-28 14:05:00"
}
],
"meta": {
"pagination": {
"total": 0,
"per_page": 0,
"current_page": 0,
"last_page": 0,
"has_more": true
}
}
}statusstring
dataarray<object>
metaobject
Notes
refund_idis the handle used by Refund detailamountis an integer (VND)order_idandorder_codearenullfor a refund with no order behind it- Filtering
statuswith a value outside the allowed list returns422