---
title: "Settlements"
method: GET
path: "/v2/settlements"
tags: ["finances"]
---

# Settlements

`GET /v2/settlements`

## Request

- Base URL: `https://api.sandbox.pawapay.io`
- URL: `https://api.sandbox.pawapay.io/v2/settlements`
- Auth: HTTP bearer

Get the settlements created from `startDate` to `endDate` in UTC, both days included: the account each one was sent to, the bank fee, the exchange rate and the amount taken from each wallet. These are the same settlements as on the Dashboard under Settlements.

Settlements are returned newest first. Account numbers and crypto wallet addresses are masked.

## Query parameters

- `startDate` string, date, required
- `endDate` string, date, required

## Response `200`

Request has been succesfully processed.

- SettlementsResponse
  - `startDate` string, date, required: The `startDate` of the request.
  - `endDate` string, date, required: The `endDate` of the request.
  - `settlements` Settlement[], required: Settlements created in the period, newest first. Empty if there are none. Both scheduled settlements and settlements you requested are included. Your upcoming settlement is included once it starts and is `IN_PROGRESS`.
    - `settlementId` string, uuid, required: The ID of the settlement. It is the same in every request.
    - `status` 'IN_PROGRESS' | 'COMPLETED' | 'CANCELLED' | 'SKIPPED', required: Status of the settlement: * `IN_PROGRESS` - We are taking the funds from your wallets or sending them to your account. Nothing has reached your account yet. * `COMPLETED` - We have sent the funds to your account. * `CANCELLED` - We couldn't complete the settlement. The funds were returned to your wallets and nothing was sent. * `SKIPPED` - None of your wallets qualified for this settlement. Nothing was taken from your wallets. More statuses may be added in the future.
    - `date` string, date, required: The date the settlement was created, in UTC. The same date as on the Dashboard.
    - `destinations` SettlementDestination[], required: The bank accounts or crypto wallets the settlement was sent to. Each one lists the wallets settled into it.
      - `type` 'BANK' | 'CRYPTO', required: The type of account. `BANK` comes with `bankAccount`, and `CRYPTO` comes with `cryptoAccount`.
      - `accountCurrency` string, required: Currency of the account. An ISO 4217 code such as `EUR`, or `USDC` or `USDT` for a crypto wallet.
      - `bankAccount` SettlementBankAccount: The bank account the settlement was sent to.
        - `bankName` string, required
        - `accountName` string, required
        - `accountNumber` string, required: The masked account number: `****` followed by the last 4 characters, for example `****8900`. Just `****` if the number has 4 characters or fewer.
        - `country` string, required: Country of the bank account. Format is ISO 3166-1 alpha-3, three character country code in upper case. Read more from [Wikipedia](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3#Officially_assigned_code_elements).
      - `cryptoAccount` SettlementCryptoAccount: The crypto wallet the settlement was sent to.
        - `walletAddress` string, required: The masked wallet address: `****` followed by the last 4 characters, for example `****9f3a`. Just `****` if the address has 4 characters or fewer.
      - `totalAmount` string, required: The sum of the wallets' `settledAmount`, in `accountCurrency`, before the bank fee is deducted. For example, `20000`.
      - `bankFeeAmount` string, required: Bank charges deducted from this settlement, in `accountCurrency`, with up to 3 decimals. `0` if there are none. Bank charges are deducted only from EUR, USD, GBP and stablecoin settlements. Local-currency settlements are paid in full. If your bank charges a fee for a local settlement, we deduct it from your wallet separately and it shows in [Wallet Breakdowns](/v2/api-reference/finances/wallet-breakdowns), not here.
      - `settledAmount` string, required: The amount you are settled on your bank account or crypto wallet, in `accountCurrency`, after exchange rate conversion and bank fees. For an `IN_PROGRESS` settlement, nothing has been sent yet. For a `CANCELLED` settlement, nothing was sent and the funds were returned to your wallets.
      - `wallets` SettlementWallet[], required: The wallets settled into this destination.
        - `country` string, text, required: Country of the wallet. Format is ISO 3166-1 alpha-3, three character country code in upper case. Read more from [Wikipedia](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3#Officially_assigned_code_elements).
        - `currency` string, required: Currency of the wallet.
        - `provider` string, required: If you are using a wallet that is only used by a single provider, that providers code will be shown here. Empty for country wallets.
        - `status` 'COMPLETED' | 'SKIPPED' | 'REVERTED' | 'IN_PROGRESS', required: Status of the withdrawal from this wallet: * `IN_PROGRESS` - We are taking the funds from this wallet. * `COMPLETED` - The funds were taken from this wallet. * `REVERTED` - The funds were taken from this wallet and returned to it because the settlement was cancelled. * `SKIPPED` - Nothing was taken from this wallet. See `skippedReason` for why. More statuses may be added in the future.
        - `amount` string: The amount taken from the wallet, in the wallet currency. Not included if nothing was taken.
        - `fxRate` string: Exchange rate from the wallet currency to `accountCurrency`. For example, `27.32` for a ZMW wallet settled to a EUR account means 1 EUR = 27.32 ZMW. Up to 8 decimals. Only included if the wallet currency is different from `accountCurrency` and a rate has been recorded.
        - `settledAmount` string: The amount settled from this wallet, in `accountCurrency`, after exchange rate conversion. If the wallet is in `accountCurrency`, it equals `amount`. Not included if there is no amount yet.
        - `skippedReason` string: Why the wallet was skipped, for example that its balance was below your minimum wallet balance. Only included for `SKIPPED` wallets. This is free text for people to read, so don't parse it.

## Other responses

- `400`: Request was rejected due to incompatibility with PawaPay API specification
- `401`: Authentication failed. Make sure you have added the API token into the header. If using signatures, make sure they are valid.
- `403`: Authorization failure. The API token needs read access to both deposits and payouts.
- `500`: An unknown failure has occurred. The request is read-only and safe to retry.

## Changes

- **2026-11-03** `4556d2ec2141`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/pawapay/apis/pawapay-merchant-api-v2/changes/v2/settlements/get.md)

---

[API](https://skmtc.dev/pawapay/apis/pawapay-merchant-api-v2.md) - [All operations](https://skmtc.dev/pawapay/apis/pawapay-merchant-api-v2/llms.txt) - [OpenAPI document](https://skmtc.dev/pawapay/apis/pawapay-merchant-api-v2/revisions/4556d2ec2141?raw)
