# Wallet Report

Wallet report as CSV, one row per ledger entry in `api_country`, streamed as it is read. v2 and v3 entries alike, none hidden.
`timestamp` bounds the window, both ends inclusive. `external_id` and `linked_txn` come from the payment in `txn`: `linked_txn` is the payment a reversal retry was made for. `timezone` sets the zone timestamps are written in; omit it for UTC.

Endpoint: POST /v3/reports/wallet
Version: 3.0.0
Security: bearerAuth

## Security:

  - `bearerAuth` (unknown)
    http bearer JWT

## Query parameters:

  - `timezone` (any)

## Request fields (application/json):

  - `api_country` (string, required)
    Enum: "BGD", "IND", "PAK", "PHL", "NPL", "EGY", "VNM", "NGA"

  - `operation` (any)

  - `txn` (any)

  - `timestamp` (any)

## Response 200:

  - `200` (unknown)
    Successful Response

## Response 400:

  - `400` (unknown)
    Bad data in the request

## Response 400 fields (application/problem+json):

  - `type` (string, required)

  - `title` (string, required)

  - `status` (integer, required)

  - `detail` (any)

  - `instance` (any)

## Response 401:

  - `401` (unknown)
    Access token not valid or expired

## Response 401 fields (application/problem+json):

  - `type` (string, required)

  - `title` (string, required)

  - `status` (integer, required)

  - `detail` (any)

  - `instance` (any)

## Response 403:

  - `403` (unknown)
    Access token missing permissions to access the resource

## Response 403 fields (application/problem+json):

  - `type` (string, required)

  - `title` (string, required)

  - `status` (integer, required)

  - `detail` (any)

  - `instance` (any)

## Response 422:

  - `422` (unknown)
    One or more request fields are invalid

## Response 422 fields (application/problem+json):

  - `type` (string, required)

  - `title` (string, required)

  - `status` (integer, required)

  - `detail` (any)

  - `instance` (any)

  - `errors` (array, required)

  - `errors.detail` (string, required)

  - `errors.pointer` (string, required)

  - `errors.code` (any)

  - `errors.input` (any)

## Response 429:

  - `429` (unknown)
    Request rate too high; back off and retry. Where a `retry-after` response header is present it gives the seconds to wait.

## Response 429 fields (application/problem+json):

  - `type` (string, required)

  - `title` (string, required)

  - `status` (integer, required)

  - `detail` (any)

  - `instance` (any)

## Response 500:

  - `500` (unknown)
    Internal server error (contact administrator)

## Response 500 fields (application/problem+json):

  - `type` (string, required)

  - `title` (string, required)

  - `status` (integer, required)

  - `detail` (any)

  - `instance` (any)

