Bank Statement

GET

Retrieve bank statement data with daily filtering (maximum 7 days history).

Endpoint

GET /api/v1/bank-statement

Request Headers

Header Required Description
Authorization Yes Bearer token from login
Content-Type Yes application/json
Accept Yes application/json

Request Parameters

Parameter Type Required Description
date_from date Yes Start date (YYYY-MM-DD)
date_to date Yes End date (YYYY-MM-DD)
page integer No Page number (min: 1, default: 1)
per_page integer No Items per page (min: 1, max: 100, default: 20)
type string No Filter by transaction type (topup, transfer, transfer fee, refund)

{info} Note: date_from and date_to must be the same date. Only data from the last 7 days is accessible.

Request Example

GET /api/v1/bank-statement?date_from=2026-02-16&date_to=2026-02-16&page=1&per_page=20

Response

Success Response

{
    "success": true,
    "message": "Bank statement retrieved successfully",
    "data": [
        {
            "uuid": "019c64b3-a2de-739d-9283-b76d688382f8",
            "transaction_id": "375260216112700146",
            "reference_id": "TESTTFAPD0106",
            "type": "transfer",
            "amount": "-10000",
            "recorded_at": "2026-02-16 11:27:00"
        },
        {
            "uuid": "019c64b3-a2de-739d-9283-b76d688382f8",
            "transaction_id": "375260216112700146",
            "reference_id": "TESTTFAPD0106",
            "type": "transfer fee",
            "amount": "-900",
            "recorded_at": "2026-02-16 11:27:00"
        },
        {
            "uuid": "019c64b3-a2de-739d-9283-b76d688382f8",
            "transaction_id": "375260216112700146",
            "reference_id": "TESTTFAPD0106",
            "type": "refund",
            "amount": "10900",
            "recorded_at": "2026-02-16 11:30:00"
        },
        {
            "uuid": "topup6fd7-9f4b-218f-fa8e-4573efd1",
            "transaction_id": null,
            "reference_id": null,
            "type": "topup",
            "amount": "10000",
            "recorded_at": "2026-02-12 15:12:30"
        }
    ],
    "count": 4,
    "pagination": {
        "current_page": "1",
        "per_page": "20",
        "total_pages": 1,
        "total_items": 4,
        "has_next_page": false,
        "has_previous_page": false
    },
    "meta": {
        "timestamp": "2026-02-18T13:01:51+07:00"
    }
}

Error Responses

Date Range Exceeded

{
    "success": "false",
    "message": "Date range cannot exceed 1 day (date_from and date_to must be the same)",
    "error_code": "DATE_RANGE_EXCEEDED"
}

Date Too Old

{
    "success": "false",
    "message": "Cannot retrieve statements older than 7 days",
    "error_code": "DATE_TOO_OLD"
}