Statement API

Get your account statement

Request

Authorization: {your_credentials}
Accept: application/vnd.worldpay.accounts.statements-v1+json

GET https://try.access.worldpay.com/accounts/statements/

Query string parameters

/accounts/statements/{querystring}

Example string:
/accounts/statements/?accountNumber=000555312371213&startDate=2022-05-01T15:16:30.109Z&endDate=2022-05-01T15:16:30.109Z

Mandatory string parameters

Field NameDescriptionData Type/FormatMin-Max LengthValidation Criteria
accountNumberAccount Number. The first 6 characters indicate the entity (domain ID) of the merchant. The rest determines the specific account number.String16-16Alphanumeric only. Special characters are restricted.
startDateFrom date and time. Timespan between 'startDate' and 'endDate' shouldn't exceed 30 days. This should not be a date in the future.ISO 8601(YYYY-MM-DD) + time in UTCMust be 24 charactersMust be a Gregorian calendar date with ISO 8601 format YYYY-MM-DD. Timezone is UTC.
endDateFrom date and time. Timespan between 'startDate' and 'endDate' shouldn't exceed 30 days. This should not be a date in the future.ISO 8601(YYYY-MM-DD) + time in UTCMust be 24 charactersMust be a Gregorian calendar date with ISO 8601 format YYYY-MM-DD. Timezone is UTC.

Optional string parameters

Field NameDescriptionData Type/FormatMin-Max LengthValidation Criteria
pageNumberPage 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.N1-3Numbers only.
pageSizeExact 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.N1-3Numbers only.
fundingTypeCredit or debit operation. Value can be credit or debit. If no value is passed, the statement includes both credits and debits.String5-6Only credit and debit allowed.
transferTypeType of the transaction used to filter out statement's entries.String1-20Alphanumeric only. Special characters are restricted.
countryCodeCountry of the transaction.String2-2ISO country code. Alphanumeric only. Special characters are restricted.
amountAmount of transaction.N1-100Numbers only (decimal).
transactionReferenceMerchant's unique reference for the payment request. This can be a "like" search (exact or partial match).String1-50Special characters are allowed. For the list, please see our formatting guide.

Response

Successful response example

{
    "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
}

Body of the response

Field NameDescriptionData Type/Format
accountNumberAccount NumberString (AN)
currencyCurrency (Use the currency value from the first item in the list. The currency is the same for all items.).String (AN)
accountStatementItemsCollection of account statement items.
Note
Refer to the below table "Collection of Account Statement Items" for details.
pageNumberPage Number.Number (Integer)
pageSizeNumber of records per page.Number (Integer)
pageCountTotal number of pages.Number (Integer)
totalNumberOfRecordsTotal Number of records.Number (Integer)

Collection of Account Statement Items

Field NameDescriptionData Type/Format
transactionReferenceMerchant's unique reference for the transaction.
Note
This field shows the uniquePayoutId for an account payout.
String (AN)
transferTypeTransfer Type.String (AN)
amountAmount.Number (Decimal)
timestampPosting date of the specific statement item.DateTime in UTC format
fundingTypeCredit or debit operation. Value can be credit or debit.String (AN)
rateRate applied for FX conversion.Number (Decimal)
clearedCleared balance or uncleared balance. Value can be yes or no.Boolean (yes, no)
descriptionDescription of this statement item.String (AN)
statementItemIdStatement ID.String (AN)
statementNumberStatement number.Number (Integer)
balanceBalance that resulted from this statement item's transaction.Number (Decimal)
narrativeReference to the specific transaction.String (AN)
countryCodeCountry code.String (A)
originalCurrencyFor statement items (debits/credits) with no FX conversion involved, originalCurrency value will be null. In case an FX conversion is involved, then: For debit items, originalCurrency will show the target currency. For credit items, originalCurrency will show the source currency.String (AN)
originalAmountFor statement items (debits/credits) with no FX conversion involved, originalAmount value will be null. In case an FX conversion is involved, then: For debit items, originalAmount will show the target amount. For credit items, originalAmount will show the source amount.Number (Decimal)

Error response example

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

Error response codes

HTTP codeCustom codeMessageScenario
400STAB16There was an error in the request.Date interval limit exceeded in the request.
400STAB16Request date shouldn't a future date.Date provided is in the future.
400STAB16There was an error in the request.Records per page limit exceeded in the request
400STAB16(Account Number is one example of missing fields, could be any other missing mandatory field): There was an error in the request. Account number is mandatory.Bad Request (There was an error in the request) - Message will tell which mandatory field is missing: Schema validation failed or Mandatory fields missing, or Format of data received for one or more fields is invalid
401STAUA06Unauthorised.Token validation failed
403STAF18Forbidden.Consumer isn't allowed to act on the behalf of this Account
500STAE11Forbidden.Unexpected Issue. Please try again Internal service error
500STAE11Forbidden.Domain validation is recoverable Internal service error