**Last updated**: 19 February 2026 | [**Change log**](/products/statements/changelog/)

# Statements API

Retrieve your account statement and see individual entries for all credits and debits.
Specify a date range and other optional filter values.

Important
Make yourself familiar with our [API Principles](/products/reference/api-principles) to ensure a resilient integration.

## Get started

Ready to integrate? Use our [API Reference](/products/statements/v1/openapi) and set your headers.

| Header | Description |
|  --- | --- |
| `Authorization` | We use the `Authorization` header to identify and authenticate you within Access Worldpay. You **must** use the `Authorization` header for any request you send to our Account APIs. |
| `Accept` | We use the `Accept` header to identify which version of our API you are using. You **must** use the `Accept` header for any request you send to our Account APIs. |


Note
Replace `{your_credentials}` with your base64-encoded Basic Auth username and password. To get your Access Worldpay credentials contact your Worldpay Implementation Manager.

## Date range query

Query account statement within date range for a max 31 day period.

Provide a `startDate` and `endDate` to query an account within a date range.
Both dates must be in a date in the past and the difference between the dates shouldn't exceed 31 days.


`GET` `https://try.access.worldpay-bsh.securedataplatform.com/accounts/statements/?accountNumber={accountNumber}&startDate={startDate}&endDate={endDate}`

### Example:

`GET` `https://try.access.worldpay-bsh.securedataplatform.com/accounts/statements/?accountNumber=000555312371213&startDate=2022-05-01T15:16:30.109Z&endDate=2022-05-01T15:16:30.109Z`

### Response

The response contains the account number, currency and a collection of statement items.

## Response

### Response schema


```json
{
  "$ref": "#/components/schemas/ExternalStatementResponse",
  "components": {
    "schemas": {
      "ExternalAccountStatementItems": {
        "type": "object",
        "properties": {
          "transactionReference": {
            "description": "Your unique reference for the transaction.",
            "type": "string",
            "nullable": true
          },
          "transferType": {
            "description": "The transfer type.",
            "type": "string",
            "nullable": true
          },
          "amount": {
            "description": "The amount.",
            "type": "number",
            "format": "double"
          },
          "timestamp": {
            "description": "The posting date of the specific statement item.",
            "type": "string",
            "format": "date-time"
          },
          "fundingType": {
            "description": "A credit or debit operation. Value can be `credit` or `debit`.",
            "type": "string",
            "nullable": true
          },
          "rate": {
            "description": "The rate applied for FX conversion.",
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "cleared": {
            "description": "Cleared balance or uncleared balance. Value can be `yes` or `no`.",
            "type": "string",
            "nullable": true
          },
          "description": {
            "description": "The description of this statement item.",
            "type": "string",
            "nullable": true
          },
          "statementItemId": {
            "description": "The statement identifier.",
            "type": "string",
            "format": "uuid"
          },
          "balance": {
            "description": "The balance that resulted from this statement item's transaction.",
            "type": "number",
            "format": "double"
          },
          "statementNumber": {
            "description": "The statement number.",
            "type": "integer",
            "format": "int64"
          },
          "narrative": {
            "description": "The reference to the specific transaction.",
            "type": "string",
            "nullable": true
          },
          "countryCode": {
            "description": "The country code.",
            "type": "string",
            "nullable": true
          },
          "originalCurrency": {
            "description": "For statement items (debits/credits) with no FX conversion involved, originalCurrency value will be null.\n\nIn case an FX conversion is involved, then:\n  - For debit items, originalCurrency shows the target currency.\n  - For credit items, originalCurrency shows the source currency.\n",
            "type": "string",
            "nullable": true
          },
          "originalAmount": {
            "description": "For statement items (debits/credits) with no FX conversion involved, originalAmount value will be null.\n\nIn case an FX conversion is involved, then:\n  - For debit items, originalAmount shows the target amount.\n  - For credit items, originalAmount shows the source amount.\n",
            "type": "number",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ExternalStatementResponse": {
        "type": "object",
        "properties": {
          "accountNumber": {
            "description": "The account number.",
            "type": "string",
            "nullable": true
          },
          "currency": {
            "description": "The currency, determined by the first item in the list. The currency is the same for all items.",
            "type": "string",
            "nullable": true
          },
          "accountStatementItems": {
            "description": "A collection of account statement items.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ExternalAccountStatementItems"
            },
            "nullable": true
          },
          "pageNumber": {
            "description": "The page number. Default is 1 if no value is provided. This value specifies the exact page of each list of statements that you want to retrieve.",
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "description": "The exact number of records per page to be shown. Max 500 items/rows. Value must be between 1-500. Default is 1 if no value is provided.",
            "type": "integer",
            "format": "int32"
          },
          "pageCount": {
            "description": "The total number of pages.",
            "type": "integer",
            "format": "int32"
          },
          "totalNumberOfRecords": {
            "description": "The total number of records.",
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      }
    }
  }
}
```

### Response examples

Successful response example

```json
{
    "accountNumber": "0001010101010001",
    "currency": "EUR",
    "accountStatementItems": [
        {
            "transactionReference": "123456",
            "transferType": "PAYOUT REVERSAL",
            "amount": 2.34,
            "timestamp": "2023-06-21T16:48:59.683Z",
            "fundingType": "credit",
            "cleared": "yes",
            "description": " Return of original statement entry #1. REVERSAL: Other-TEST",
            "statementItemId": "3824f47e-5310-ee11-811a-0050568e2b86",
            "balance": 7.66,
            "statementNumber": 4,
            "narrative": "Ref: 123456",
            "countryCode": "GB"
        },
        {
            "transactionReference": "123456",
            "transferType": "PAYOUT",
            "amount": 2.34,
            "timestamp": "2023-06-21T16:16:09.670Z",
            "fundingType": "debit",
            "rate": 4.27396,
            "cleared": "yes",
            "description": "Harry Potter",
            "statementItemId": "ab8614ee-4e10-ee11-811a-0050568e2b86",
            "balance": 5.32,
            "statementNumber": 3,
            "narrative": "Ref: 123456",
            "countryCode": "US",
            "originalCurrency": "USD",
            "originalAmount": 10
        },
        {
            "transferType": "LIQUIDITY FUNDING",
            "amount": 10,
            "timestamp": "2023-06-21T13:10:58.553Z",
            "fundingType": "credit",
            "cleared": "yes",
            "description": "ALTEULIQFUND2106",
            "statementItemId": "06a63f0a-3510-ee11-811a-0050568e2b86",
            "balance": 7.66,
            "statementNumber": 2,
            "narrative": ""
        },
        {
            "transactionReference": "123456",
            "transferType": "PAYOUT",
            "amount": 2.34,
            "timestamp": "2023-06-21T12:32:17.490Z",
            "fundingType": "debit",
            "rate": 4.27396,
            "cleared": "yes",
            "description": "John Doe",
            "statementItemId": "d9904ba4-2f10-ee11-811a-0050568e2b86",
            "balance": -2.34,
            "statementNumber": 1,
            "narrative": "Ref: 123456",
            "countryCode": "GB",
            "originalCurrency": "PLN",
            "originalAmount": 10
        }
    ],
    "pageNumber": 3,
    "pageSize": 4,
    "pageCount": 3,
    "totalNumberOfRecords": 12
}
```

Error response example

```json
{
    "httpStatusCode": 400,
    "customCode": "STAB16",
    "message": "There was an error in the request",
    "errors": {
        "startDate": [
            "Date interval limit exceeded in the request. Max interval is 31 days"
        ]
    }
}
```