# Get Balance Statement

Retrieve a statement for the specified balance account.
The response format depends on the URL path:
- `statement.json` - JSON format
- `statement.csv` - CSV format
- `statement.pdf` - PDF format (includes Wise branding)
- `statement.xlsx` - Excel format
- `statement.xml` - CAMT.053 XML format
- `statement.mt940` - MT940 format
- `statement.qif` - QIF format

The period between `intervalStart` and `intervalEnd` cannot exceed 469 days (around 1 year 3 months).
This endpoint is SCA protected. SCA requirements apply to profiles registered outside of the following regions: US, AU, NZ, SG, CA, MY.
This additional authentication is only required once every 90 days.
Note that viewing the statement on the website or in the mobile app also requires SCA.
Review the [Strong Customer Authentication guide](/guides/developer/auth-and-security/sca-and-2fa) for more details.

Endpoint: GET /v1/profiles/{profileId}/balance-statements/{balanceId}/statement.json
Security: UserToken, PersonalToken

## Security:

  - `UserToken` (unknown)
    http bearer JWT

  - `PersonalToken` (unknown)
    http bearer JWT

## Path parameters:

  - `profileId` (integer, required)
    The profile ID.

  - `balanceId` (integer, required)
    The balance ID to get the statement for.

## Query parameters:

  - `currency` (string, required)
    Currency of the balance statement requested (ISO 4217 Alphabetic Code).

  - `intervalStart` (string, required)
    Statement start time in UTC.

  - `intervalEnd` (string, required)
    Statement end time in UTC.

  - `type` (string)
    Statement type:
- `COMPACT` - Single statement line per transaction
- `FLAT` - Accounting statements where transaction fees are on a separate line

  - `statementLocale` (string)
    Language for the statement. Supports 2 character language codes.

## Header parameters:

  - `X-External-Correlation-Id` (string)
    Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. [Learn more](/guides/developer/headers/correlation-id).

## Response 200:

  - `200` (unknown)
    OK - Successfully retrieved balance statement.

## Response 200 fields (application/json):

  - `accountHolder` (object)
    Account holder information.

  - `accountHolder.type` (string)
    Account holder type.
    Enum: "PERSONAL", "BUSINESS"

  - `accountHolder.address` (object)
    Account holder address.

  - `accountHolder.address.addressFirstLine` (string)
    Street address.
    Example: Veerenni 24

  - `accountHolder.address.city` (string)
    City.
    Example: Tallinn

  - `accountHolder.address.postCode` (string)
    Postal/ZIP code.
    Example: 12112

  - `accountHolder.address.stateCode` (string)
    State code.

  - `accountHolder.address.countryName` (string)
    Country name.
    Example: Estonia

  - `accountHolder.firstName` (string)
    Account holder first name.
    Example: Oliver

  - `accountHolder.lastName` (string)
    Account holder last name.
    Example: Wilson

  - `issuer` (object)
    Account issuer information.

  - `issuer.name` (string)
    Issuer name.
    Example: TransferWise Ltd.

  - `issuer.firstLine` (string)
    Street address.
    Example: 56 Shoreditch High Street

  - `issuer.city` (string)
    City.
    Example: London

  - `issuer.postCode` (string)
    Postal/ZIP code.
    Example: E1 6JJ

  - `issuer.stateCode` (string)
    State code.

  - `issuer.country` (string)
    Country.
    Example: United Kingdom

  - `bankDetails` (object | null)
    Local bank details for the account.

  - `transactions` (array)
    List of transactions in the statement period.

  - `transactions.type` (string)
    Transaction direction.
    Enum: "DEBIT", "CREDIT"

  - `transactions.date` (string)
    Date when transaction was created.
    Example: 2018-04-30T08:47:05.832Z

  - `transactions.amount` (object)
    Transaction amount.

  - `transactions.amount.value` (number)
    Amount value (negative for debits).
    Example: -7.76

  - `transactions.amount.currency` (string)
    Currency code.
    Example: EUR

  - `transactions.totalFees` (object)
    Transaction fees.

  - `transactions.totalFees.value` (number)
    Fee amount.
    Example: 0.04

  - `transactions.totalFees.currency` (string)
    Currency code.
    Example: EUR

  - `transactions.details` (object)
    Transaction details.

  - `transactions.details.type` (string)
    Transaction type.
    Enum: "CARD", "CONVERSION", "DEPOSIT", "TRANSFER", "MONEY_ADDED", "INCOMING_CROSS_BALANCE", "OUTGOING_CROSS_BALANCE", "DIRECT_DEBIT", "BALANCE_INTEREST", "BALANCE_ADJUSTMENT", "UNKNOWN", "ACCRUAL_CHARGE", "INVESTMENT_TRADE_ORDER", "ACQUIRING_PAYMENT", "CARD_CASHBACK", "CARD_ORDER_CHECKOUT"

  - `transactions.details.description` (string)
    Human readable explanation about the transaction.
    Example: Card transaction of 6.80 GBP issued by Tfl.gov.uk/cp TFL TRAVEL CH

  - `transactions.details.amount` (object)
    Amount in original currency (for card transactions abroad).

  - `transactions.details.amount.value` (number)
    Example: 6.8

  - `transactions.details.amount.currency` (string)
    Example: GBP

  - `transactions.details.senderName` (string)
    Deposit sender name.
    Example: HEIN LAURI

  - `transactions.details.senderAccount` (string)
    Deposit sender bank account details.
    Example: EE76 1700 0170 0049 6704

  - `transactions.details.paymentReference` (string)
    Deposit payment reference text.
    Example: SVWZ+topup card

  - `transactions.details.category` (string)
    Card transaction category.
    Example: Transportation Suburban and Loca

  - `transactions.details.merchant` (object)
    Card transaction merchant details.

  - `transactions.details.merchant.name` (string)
    Merchant name.
    Example: Tfl.gov.uk/cp

  - `transactions.details.merchant.firstLine` (string | null)
    Merchant address street.

  - `transactions.details.merchant.postCode` (string)
    Merchant address postal code.
    Example: SW1H 0TL

  - `transactions.details.merchant.city` (string)
    Merchant address city.
    Example: TFL TRAVEL CH

  - `transactions.details.merchant.state` (string)
    Merchant address state.

  - `transactions.details.merchant.country` (string)
    Merchant address country.
    Example: GB

  - `transactions.details.merchant.category` (string)
    Merchant category.
    Example: Transportation Suburban and Loca

  - `transactions.details.sourceAmount` (object)
    Source amount for conversions.

  - `transactions.details.sourceAmount.value` (number)
    Example: 8.69

  - `transactions.details.sourceAmount.currency` (string)
    Example: GBP

  - `transactions.details.targetAmount` (object)
    Target amount for conversions.

  - `transactions.details.targetAmount.value` (number)
    Example: 9.94

  - `transactions.details.targetAmount.currency` (string)
    Example: EUR

  - `transactions.details.fee` (object)
    Conversion fee.

  - `transactions.details.fee.value` (number)
    Example: 0.03

  - `transactions.details.fee.currency` (string)
    Example: GBP

  - `transactions.details.rate` (number)
    Conversion exchange rate.
    Example: 1.147806

  - `transactions.exchangeDetails` (object | null)
    Exchange details for card transactions abroad.

  - `transactions.exchangeDetails.forAmount` (object)

  - `transactions.exchangeDetails.forAmount.value` (number)
    Example: 6.8

  - `transactions.exchangeDetails.forAmount.currency` (string)
    Example: GBP

  - `transactions.exchangeDetails.rate` (number | null)
    Exchange rate applied.

  - `transactions.runningBalance` (object)
    Running balance after the transaction.

  - `transactions.runningBalance.value` (number)
    Example: 16.01

  - `transactions.runningBalance.currency` (string)
    Example: EUR

  - `transactions.referenceNumber` (string)
    Wise assigned unique transaction reference number. Can be used to map refunds to the original transfer.
    Example: CARD-249281

  - `endOfStatementBalance` (object)
    Closing balance for the specified time period.

  - `endOfStatementBalance.value` (number)
    Balance value.
    Example: 9.94

  - `endOfStatementBalance.currency` (string)
    Currency code.
    Example: EUR

  - `query` (object)
    Query parameters used for the request.

  - `query.intervalStart` (string)
    Statement start time.
    Example: 2018-03-01T00:00:00Z

  - `query.intervalEnd` (string)
    Statement end time.
    Example: 2018-04-30T23:59:59.999Z

  - `query.currency` (string)
    Currency code.
    Example: EUR

  - `query.accountId` (integer)
    Balance account ID.
    Example: 64

## Response 200 headers (application/json):

  - `X-External-Correlation-Id` (string)
    Echoed back when `X-External-Correlation-Id` was included in the request. [Learn more](/guides/developer/headers/correlation-id).
    Example: f47ac10b-58cc-4372-a567-0e02b2c3d479

  - `x-trace-id` (string)
    Unique trace identifier assigned by Wise. Useful when contacting support about a specific request.
    Example: fba501b6d453b96789f52338f019341f

## Response 429:

  - `429` (unknown)
    Rate limit exceeded. Retry after the number of seconds specified in the `Retry-After` header.

## Response 429 headers (application/json):

  - `Retry-After` (integer)
    Number of seconds to wait before retrying the request.
    Example: 5

  - `X-Rate-Limited-By` (string)
    Identifies the rate limiter that triggered the 429 response.
    Example: wise-public-api

  - `X-External-Correlation-Id` (string)
    Echoed back when `X-External-Correlation-Id` was included in the request. [Learn more](/guides/developer/headers/correlation-id).
    Example: f47ac10b-58cc-4372-a567-0e02b2c3d479

  - `x-trace-id` (string)
    Unique trace identifier assigned by Wise. Useful when contacting support about a specific request.
    Example: fba501b6d453b96789f52338f019341f

