API Danh sách giao dịch
API lấy danh sách giao dịch của các tài khoản ngân hàng đã liên kết. Hỗ trợ phân trang và lọc theo nhiều tiêu chí.
API Endpoint
GET
https://bankhub-api-sandbox.sepay.vn/v1/transactionQuery Parameters
pageinteger
Số trang
Mặc định:1per_pageinteger
Số item mỗi trang
Mặc định:20company_xidstring
Lọc theo ID công ty
bank_account_xidstring
Lọc theo ID tài khoản ngân hàng
brand_namestring
Lọc theo tên ngân hàng (MBBank, Vietcombank...)
transaction_datestring
Lọc theo ngày cụ thể (YYYY-MM-DD)
start_transaction_datestring
Lọc từ ngày (YYYY-MM-DD)
end_transaction_datestring
Lọc đến ngày (YYYY-MM-DD)
transfer_typeenum
Lọc theo loại giao dịch (in = tiền vào, out = tiền ra)
webhook_successenum
Lọc theo trạng thái webhook (0 = thất bại, 1 = thành công)
qstring
Từ khóa tìm kiếm (nội dung giao dịch, mã thanh toán, số tài khoản)
Lưu ý
- API này yêu cầu Bearer Token trong header Authorization
- Kết quả được sắp xếp theo thời gian giao dịch mới nhất
- Sử dụng
transfer_typeđể phân biệt giao dịch tiền vào (in) và tiền ra (out) - Trường
webhook_successcho biết webhook đã được gửi thành công hay chưa
Xử lý lỗi
401UnauthorizedAccess token không hợp lệ hoặc đã hết hạn
API Response
Response 200 - Thành công
{
"data": [
{
"transaction_id": "string",
"transaction_date": "string",
"bank_account_xid": "string",
"company_xid": "string",
"brand_name": "string",
"account_number": "string",
"va": "string",
"va_xid": "string",
"reference_number": "string",
"transfer_type": "in",
"amount": 0,
"transaction_content": "string",
"payment_code": "string",
"webhook_success": 0
}
],
"meta": {
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0
}
}dataarray<object>
Danh sách giao dịch
metaobject
Thông tin phân trang
Code mẫu
1
2
3
curl --request GET \--url 'https://bankhub-api-sandbox.sepay.vn/v1/transaction?page=SOME_INTEGER_VALUE&per_page=SOME_INTEGER_VALUE&company_xid=SOME_STRING_VALUE&bank_account_xid=SOME_STRING_VALUE&brand_name=SOME_STRING_VALUE&transaction_date=SOME_STRING_VALUE&start_transaction_date=SOME_STRING_VALUE&end_transaction_date=SOME_STRING_VALUE&transfer_type=SOME_STRING_VALUE&webhook_success=SOME_INTEGER_VALUE&q=SOME_STRING_VALUE' \--header 'Authorization: Bearer REPLACE_BEARER_TOKEN'
Ví dụ sử dụng
JSLấy trang đầu tiên với 10 giao dịch
1
2
curl --location 'https://bankhub-api-sandbox.sepay.vn/v1/transaction?limit=10&page=1' \--header 'Authorization: Bearer YOUR_ACCESS_TOKEN'
JSLọc giao dịch theo công ty
1
2
curl --location 'https://bankhub-api-sandbox.sepay.vn/v1/transaction?company_xid=cmp_abc123xyz' \--header 'Authorization: Bearer YOUR_ACCESS_TOKEN'
JSLọc chỉ giao dịch tiền vào
1
2
curl --location 'https://bankhub-api-sandbox.sepay.vn/v1/transaction?transfer_type=in' \--header 'Authorization: Bearer YOUR_ACCESS_TOKEN'
JSLọc theo khoảng thời gian
1
2
curl --location 'https://bankhub-api-sandbox.sepay.vn/v1/transaction?transaction_date_min=2024-01-01&transaction_date_max=2024-01-31' \--header 'Authorization: Bearer YOUR_ACCESS_TOKEN'
JSTìm kiếm theo nội dung giao dịch
1
2
curl --location 'https://bankhub-api-sandbox.sepay.vn/v1/transaction?content=DH123456' \--header 'Authorization: Bearer YOUR_ACCESS_TOKEN'
Lưu ý về Performance
- Nên sử dụng
limitphù hợp để tối ưu hiệu suất (khuyến nghị: 20-50, tối đa 100) - Với số lượng giao dịch lớn, nên lọc theo
company_xidhoặcbank_account_xid - Sử dụng
transaction_date_minvàtransaction_date_maxđể giới hạn khoảng thời gian - Kết hợp nhiều filter để thu hẹp kết quả tìm kiếm
Các bộ lọc hữu ích
transfer_type: Lọc theo loại giao dịch (in= tiền vào,out= tiền ra)amount_min/amount_max: Lọc theo khoảng số tiềncontent: Tìm kiếm theo nội dung giao dịchbank_account_xid: Lọc theo tài khoản ngân hàng cụ thể