Wise website screenshot

Wise

Wise (formerly TransferWise) provides cross-border payments and multi-currency accounts for personal and business customers. The Wise Platform API exposes profiles, balances, transfers, recipients, quotes, multi-currency accounts, cards, statements, and webhooks.

10 APIs 0 Features
PaymentsFXCross-BorderBankingMulti-Currency

APIs

Wise Profiles API

Manages Wise user identity records. A profile represents either a personal or business entity that owns balances, can send and receive money, and can hold recipients. Profiles a...

Wise Recipients API

Manages beneficiary bank account records. Recipients store the destination account details (name, currency, account number, routing/IBAN/SWIFT details) used as the target of a t...

Wise Quotes API

Calculates the exchange rate, fees, and estimated delivery time for a prospective transfer between two currencies. A quote pins the FX rate for a short window and is a required ...

Wise Transfers API

Creates and tracks cross-border money movements. A transfer ties a quote to a recipient and is funded from a source balance or pay-in method. The API exposes create, fund, cance...

Wise Balances API

Manages multi-currency balances held inside a profile. Supports listing balances, retrieving the available and reserved amounts per currency, opening and closing currency balanc...

Wise Multi-Currency Account API

Provisions local bank account details (account number / routing / IBAN / SWIFT) for a profile across the supported receiving currencies, allowing a customer to receive money lik...

Wise Statements API

Generates and downloads transaction statements for a balance over an arbitrary date range. Output formats include JSON, CSV, PDF, and MT940, supporting reconciliation and accoun...

Wise Cards API

Issues, lists, and manages Wise debit cards linked to a profile balance. Includes operations for retrieving card details, freezing/unfreezing, replacing cards, and managing spen...

Wise Webhooks API

Subscribes a partner application to event notifications for transfers, balances, cards, and profile-state changes. Supports creating, listing, and deleting webhook subscriptions...

Wise Simulation API

Sandbox-only endpoints for advancing the lifecycle of test transfers (simulating funding, processing, completion, and failure paths) without moving real money. Used to exercise ...

Collections

GraphQL

Wise GraphQL Schema

This conceptual GraphQL schema models the Wise (formerly TransferWise) Platform API surface, covering cross-border money transfers, multi-currency accounts, balances, recipients...

GRAPHQL

Pricing Plans

Wise Plans Pricing

3 plans

PLANS

Rate Limits

Wise Rate Limits

3 limits

RATE LIMITS

FinOps

Wise Finops

FINOPS

Event Specifications

Wise Platform Webhooks

AsyncAPI 2.6 description of the Wise Platform webhook surface. Wise pushes HTTP `POST` notifications to subscriber-defined HTTPS endpoints when events occur against profiles, tr...

ASYNCAPI

Resources

👥
GitHubOrganization
GitHubOrganization
🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Documentation
Documentation
🔗
Sandbox
Sandbox
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Wise Platform API
items:
- info:
    name: 3ds
    type: folder
  items:
  - info:
      name: Inform challenge result
      type: http
    http:
      method: POST
      url: https://api.wise.com/v3/spend/profiles/:profileId/3dsecure/challenge-result
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The profile ID (personal or business) associated with the 3DS challenge.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Once the customer has accepted or rejected the push notification for a 3DS challenge, you can use this endpoint
      to notify us of the result.


      You must call this endpoint before the expiration time, otherwise it will return a 400 error. You can find the expiration
      information from the [3DS challenge webhook event](/guides/developer/webhooks/event-types#3ds-challenge).


      Only the first call to this endpoint will be processed. Any subsequent duplicate requests will be ignored, although
      you will still'
- info:
    name: activity
    type: folder
  items:
  - info:
      name: List Activities for a Profile
      type: http
    http:
      method: GET
      url: https://api.wise.com/v1/profiles/:profileId/activities
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The unique identifier of the profile.
      - name: monetaryResourceType
        value: ''
        type: query
        description: Filter activity by resource type.
      - name: status
        value: ''
        type: query
        description: Filter by activity status.
      - name: since
        value: ''
        type: query
        description: Filter activity list after a certain timestamp. Use ISO 8601 format.
      - name: until
        value: ''
        type: query
        description: Filter activity list until a certain timestamp. Use ISO 8601 format.
      - name: nextCursor
        value: ''
        type: query
        description: 'Pagination cursor returned from a previous response. Use the `cursor` value from the response to fetch
          the next page of activities.

          '
      - name: size
        value: ''
        type: query
        description: Desired size of query. Min 1, max 100, and default value is 10 if not specified.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'List of activities belonging to user profile.


      Activities represent snapshots of performed actions and can be filtered by various parameters to narrow down the results.

      '
- info:
    name: verification
    type: folder
  items:
  - info:
      name: Upload Evidences (v3)
      type: http
    http:
      method: POST
      url: https://api.wise.com/v3/profiles/:profileId/additional-verification/upload-evidences
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The unique identifier of the profile.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Uploads verification evidence for a specific profile.


      The request body varies significantly between **Personal** and **Business** profiles.

      '
  - info:
      name: Upload Evidences
      type: http
    http:
      method: POST
      url: https://api.wise.com/v5/profiles/:profileId/additional-verification/upload-evidences
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The unique identifier of the profile.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Uploads verification evidence for a specific profile.


      The request body varies significantly between **Personal** and **Business** profiles.


      Submitting an evidence that was already uploaded will result in an attempt to update the evidence.

      '
  - info:
      name: Upload Document
      type: http
    http:
      method: POST
      url: https://api.wise.com/v3/profiles/:profileId/verification-status/upload-document
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The profile ID (personal or business).
      body:
        type: multipart-form
        data:
        - name: files
          type: text
          value: ''
        - name: documentType
          type: text
          value: ''
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Uploads verification documents for review. You can upload multiple files at once.


      A valid document must fulfil these requirements:


      - The document must be clear.

      - The document needs to be a .jpg, .png., or .pdf file type up to 10MB in size.

      '
  - info:
      name: Required Evidences
      type: http
    http:
      method: GET
      url: https://api.wise.com/v3/profiles/:profileId/verification-status/required-evidences
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The unique identifier of the profile.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Fetches the required evidences for a profile to complete additional customer verification.


      If one or more evidences are returned, the customer should submit those evidences using the upload-evidences endpoint.


      See the [Supported Evidences guide](/guides/product/kyc/partner-kyc/supported-evidences) for the list of possible evidence
      types and how to submit them.

      '
- info:
    name: address
    type: folder
  items:
  - info:
      name: List Addresses for a Profile
      type: http
    http:
      method: GET
      url: https://api.wise.com/v1/addresses
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profile
        value: '12345678'
        type: query
        description: The profile ID to list addresses for.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: List of addresses belonging to user profile.
  - info:
      name: Create or Update an Address
      type: http
    http:
      method: POST
      url: https://api.wise.com/v1/addresses
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Adds address info to user profile.


      List of required fields are different for different countries. Use the [address requirements endpoint](#operation/addressRequirementsGet)
      to dynamically discover required fields.


      For updating personal profiles, consider using [the personal profile update endpoint](/api-reference/profile/profilepersonalupdate)
      instead. It allows submitting the address information alongside other profile data.


      **State field** is required for US, CA, BR, and AU addresses.


      **Oc'
  - info:
      name: Retrieve an Address by ID
      type: http
    http:
      method: GET
      url: https://api.wise.com/v1/addresses/:addressId
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: addressId
        value: ''
        type: path
        description: The unique identifier of the address.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: Get address info by ID.
  - info:
      name: Get Address Requirements
      type: http
    http:
      method: GET
      url: https://api.wise.com/v1/address-requirements
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Returns the list of fields required to create a valid address. Use this as a starting point to discover required
      fields.


      The response contains 4 required top-level fields:

      - `country` (select field with list of values)

      - `city` (text field)

      - `postCode` (text field)

      - `firstLine` (text field)


      If a field has `refreshRequirementsOnChange: true`, call the POST endpoint with that field''s value to discover additional
      required fields.


      For a step-by-step walkthrough, see the [Address Requirements gu'
  - info:
      name: Get Address Requirements (with context)
      type: http
    http:
      method: POST
      url: https://api.wise.com/v1/address-requirements
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Returns the list of fields required to create a valid address, based on the provided context.


      Use this endpoint to dynamically discover additional required fields based on selected values. For example:

      - Posting `{"details": {"country": "US"}}` will add "state" to the list of fields.

      - Posting `{"details": {"country": "CA"}}` will add "occupations" to the list of fields.


      Continue calling this endpoint with field values until all fields with `refreshRequirementsOnChange: true` have been
      populat'
- info:
    name: balance
    type: folder
  items:
  - info:
      name: List Balances for a Profile
      type: http
    http:
      method: GET
      url: https://api.wise.com/v4/profiles/:profileId/balances
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The profile ID.
      - name: types
        value: STANDARD
        type: query
        description: Comma-separated list of balance types to return. Acceptable values are `STANDARD` and `SAVINGS`.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Retrieves the user''s multi-currency account balance accounts. Returns all balance accounts the profile has in
      the types specified.


      The `types` parameter must include at least one type. To return more than one type, comma-separate the values.

      '
  - info:
      name: Create a Balance Account
      type: http
    http:
      method: POST
      url: https://api.wise.com/v4/profiles/:profileId/balances
      headers:
      - name: X-idempotence-uuid
        value: ''
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The profile ID.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Opens a balance within the specified profile, in the currency and type specified in the request.


      For `STANDARD` balances, only one can be created per currency. For `SAVINGS` balances, multiple in the same currency
      can be opened.


      When creating a `SAVINGS` type balance, a `name` is required.

      '
  - info:
      name: Retrieve a Balance by ID
      type: http
    http:
      method: GET
      url: https://api.wise.com/v4/profiles/:profileId/balances/:balanceId
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The profile ID.
      - name: balanceId
        value: ''
        type: path
        description: The balance ID.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: Returns a balance based on the specified balance ID.
  - info:
      name: Remove a Balance Account
      type: http
    http:
      method: DELETE
      url: https://api.wise.com/v4/profiles/:profileId/balances/:balanceId
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The profile ID.
      - name: balanceId
        value: ''
        type: path
        description: The balance ID.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Closes a balance account for the user''s profile.


      Balance accounts must have a zero balance to be closed. Bank account details for the balance will also be deactivated
      and may not be restored.

      '
  - info:
      name: Convert or Move Money Between Balances
      type: http
    http:
      method: POST
      url: https://api.wise.com/v2/profiles/:profileId/balance-movements
      headers:
      - name: X-idempotence-uuid
        value: ''
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The profile ID.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'This endpoint allows conversion and movement of funds between balance accounts.


      **Convert across balance accounts:**

      Convert funds between two `STANDARD` balance accounts in different currencies. Requires a quote created with `"payOut":
      "BALANCE"`.


      **Move money between balances:**

      - Add money to a same-currency jar (move from `STANDARD` to `SAVINGS` without conversion)

      - Add money to another-currency jar (convert money using a quote)

      - Withdraw money from a jar (move from `SAVINGS` to `STANDAR'
  - info:
      name: Retrieve Deposit Limits
      type: http
    http:
      method: GET
      url: https://api.wise.com/v1/profiles/:profileId/balance-capacity
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The profile ID.
      - name: currency
        value: SGD
        type: query
        description: Currency code (ISO 4217 Alphabetic Code). The deposit limit will be returned in this currency.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Returns the deposit limit for a profile based on regulatory requirements.


      Useful for personal profiles located in countries that have hold limits. We advise calling this API before depositing
      money into an account if the profile is located in Singapore or Malaysia.

      '
  - info:
      name: Add an Excess Money Account
      type: http
    http:
      method: POST
      url: https://api.wise.com/v1/profiles/:profileId/excess-money-account
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The profile ID.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'If a balance goes over the regulatory hold limit, excess funds are automatically moved to another account at the
      end of the day.


      Use this endpoint to specify a recipient where excess money will be transferred.


      Primarily used for Singapore and Malaysia customers.

      '
  - info:
      name: Get Total Funds
      type: http
    http:
      method: GET
      url: https://api.wise.com/v1/profiles/:profileId/total-funds/:currency
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The profile ID.
      - name: currency
        value: EUR
        type: path
        description: Currency code (ISO 4217 Alphabetic Code). All values will be converted to this currency.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Provides an overview of your account''s total valuation and available liquidity across all balances.


      Returns total worth, total available (including overdraft), total cash, and overdraft details.


      #### Example (Assuming GBP and USD has 1:1 exchange rate)


      | Scenario                                 | GBP balance | USD balance | Total Worth | Total Available | Overdraft Usage
      | Overdraft Limit |

      | ---------------------------------------- | ----------- | ----------- | ----------- | --------------- '
  - info:
      name: Get account balance (v1)
      type: http
    http:
      method: GET
      url: https://api.wise.com/v1/borderless-accounts
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: '33333333'
        type: query
        description: Your profile ID.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: '{% admonition type="warning" %}

      This endpoint is deprecated. Use the [v4 Balances endpoint](/api-reference/balance/balanceget) instead.

      {% /admonition %}


      Get available balances for all activated currencies in your multi-currency account.

      '
  - info:
      name: Convert currencies between balances (v1)
      type: http
    http:
      method: POST
      url: https://api.wise.com/v1/borderless-accounts/:borderlessAccountId/conversions
      headers:
      - name: X-idempotence-uuid
        value: a1b2c3d4-e5f6-7890-abcd-ef0123456789
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: borderlessAccountId
        value: '64'
        type: path
        description: Your borderless account ID.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: '{% admonition type="warning" %}

      This endpoint is deprecated. Use the [balance movements endpoint](/api-reference/balance/balancemovement) to move and
      convert between balances instead.

      {% /admonition %}


      Convert funds between your multi-currency account currencies.

      Quote which is used in this call must be created with `"payOut": "BALANCE"`.


      Note that this call needs an extra field in header called `X-idempotence-uuid`.

      '
  - info:
      name: List hold limit breaches
      type: http
    http:
      method: POST
      url: https://api.wise.com/v1/profiles/:profileId/balances/hold-limit-breach
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The profile ID.
      - name: state
        value: OPEN
        type: query
        description: Filter by breach state. One of `OPEN`, `CLOSED`
      - name: closingReason
        value: AUTOMATICALLY_RESOLVED
        type: query
        description: Filter by closing reason. One of `AUTOMATICALLY_RESOLVED`, `MANUALLY_RESOLVED`
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Returns a list of hold limit breaches for a profile. A hold limit breach occurs when a balance exceeds the regulatory
      hold limit for that profile''s country (e.g. Singapore, Malaysia).


      You can optionally filter by `state` and `closing_reason`.

      '
  - info:
      name: Close a hold limit breach
      type: http
    http:
      method: POST
      url: https://api.wise.com/v1/profiles/:profileId/balances/hold-limit-breach/:holdLimitBreachId
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The profile ID.
      - name: holdLimitBreachId
        value: ''
        type: path
        description: The hold limit breach ID.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Closes an open hold limit breach by performing a one-time refund to a specified recipient. The recipient will receive
      the excess amount that caused the breach.


      Only breaches with `state: OPEN` can be closed via this endpoint.

      '
- info:
    name: balance-statement
    type: folder
  items:
  - info:
      name: Get Balance Statement
      type: http
    http:
      method: GET
      url: https://api.wise.com/v1/profiles/:profileId/balance-statements/:balanceId/statement.json
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: '12345'
        type: path
        description: The profile ID.
      - name: balanceId
        value: '64'
        type: path
        description: The balance ID to get the statement for.
      - name: currency
        value: EUR
        type: query
        description: Currency of the balance statement requested (ISO 4217 Alphabetic Code).
      - name: intervalStart
        value: '2025-03-01T00:00:00.000Z'
        type: query
        description: Statement start time in UTC.
      - name: intervalEnd
        value: '2025-04-30T23:59:59.999Z'
        type: query
        description: Statement end time in UTC.
      - name: type
        value: COMPACT
        type: query
        description: 'Statement type:

          - `COMPACT` - Single statement line per transaction

          - `FLAT` - Accounting statements where transaction fees are on a separate line

          '
      - name: statementLocale
        value: en
        type: query
        description: Language for the statement. Supports 2 character language codes.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: '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).


      {% admonition type="warning" %}

      Th'
- info:
    name: bank-account-details
    type: folder
  items:
  - info:
      name: List bank account detail orders (v1)
      type: http
    http:
      method: GET
      url: https://api.wise.com/v1/profiles/:profileId/account-details-orders
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The ID of the profile to list bank account detail orders for.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Returns the bank account assignment requests for a profile and multi-currency account.


      {% admonition type="warning" %}

      This endpoint is deprecated. Please use the [v3 endpoint](/api-reference/bank-account-details/bankaccountdetailsorderslist)
      instead.

      {% /admonition %}

      '
  - info:
      name: Create bank account details order
      type: http
    http:
      method: POST
      url: https://api.wise.com/v1/profiles/:profileId/account-details-orders
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The ID of the profile to create the bank account details order for.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Creates an order which will issue account details. It should use the same currency as the balance previously created.
      Fulfilling all the requirements will complete the order, reaching status `DONE`.


      The possible values for a requirement status are:

      - `PENDING_USER`: The requirement has some pending action from the user.

      - `PENDING_TW`: The requirement has some pending action from Wise.

      - `DONE`: The requirement is completed.


      The more common requirements are:

      - `VERIFICATION`: The user needs to'
  - info:
      name: Create multiple bank account details
      type: http
    http:
      method: POST
      url: https://api.wise.com/v3/profiles/:profileId/bank-details
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The ID of the profile to create bank account details for.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Creates and assigns a pair of local account details and international account details (where available) that are
      linked to the target balance specified in the request.


      {% admonition type="warning" %}

      Please reach out to our Support Team for access to this endpoint.

      {% /admonition %}

      '
  - info:
      name: Retrieve bank account details
      type: http
    http:
      method: GET
      url: https://api.wise.com/v1/profiles/:profileId/account-details
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The ID of the profile to retrieve bank account details for.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Returns a list with all the `AVAILABLE` and `ACTIVE` account details for the given profile, including examples.
      Account receive options can also include local and international details to receive money on the currency balance.


      Example bank account details are returned for any currency where bank account details have not been requested and issued.
      Examples will always include an `id` of `null`.

      '
  - info:
      name: List bank account detail orders
      type: http
    http:
      method: GET
      url: https://api.wise.com/v3/profiles/:profileId/account-details-orders
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The ID of the profile to list bank account detail orders for.
      - name: currency
        value: ''
        type: query
        description: Currency code (ISO 4217 Alphabetic Code).
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Returns the bank account assignment requests for a profile and multi-currency account.


      The response includes bank-details orders in the following statuses: `PENDING_USER`, `PENDING_TW`, `REQUIREMENTS_FULFILLED`,
      `DONE`.

      '
  - info:
      name: Create payment return
      type: http
    http:
      method: POST
      url: https://api.wise.com/v1/profiles/:profileId/account-details/payments/:paymentId/returns
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The ID of the profile that received the payment.
      - name: paymentId
        value: ''
        type: path
        description: The ID of the payment to return.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Creates a return for a payment received to bank account details.


      When you create a return, you must provide the ID of the payment you wish to return as well as the ID of the profile
      that received the payment. In addition, you can provide a `reason` for the return in the request body. When returning
      SWIFT payments, `reason` is a required field.

      '
- info:
    name: batch-group
    type: folder
  items:
  - info:
      name: Create a batch group
      type: http
    http:
      method: POST
      url: https://api.wise.com/v3/profiles/:profileId/batch-groups
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The ID of the profile to create the batch group for.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Create a new batch group.


      A batch group can hold up to 1000 transfers that will be funded together. After creating the group, add transfers to
      it, then complete the group to receive pay-in details.

      '
  - info:
      name: Retrieve a batch group
      type: http
    http:
      method: GET
      url: https://api.wise.com/v3/profiles/:profileId/batch-groups/:batchGroupId
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The ID of the profile that the batch group is associated with.
      - name: batchGroupId
        value: ''
        type: path
        description: The batch group ID.
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Get an existing batch group by ID.

      '
  - info:
      name: Update batch group status
      type: http
    http:
      method: PATCH
      url: https://api.wise.com/v3/profiles/:profileId/batch-groups/:batchGroupId
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The ID of the profile that the batch group is associated with.
      - name: batchGroupId
        value: ''
        type: path
        description: The batch group ID.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Update a batch group''s status to complete or cancel it.


      **Complete a batch group:** Set `status` to `COMPLETED` to close the group for modifications and allow funding to proceed.
      Once completed, `payInDetails` will be populated with funding instructions.


      **Cancel a batch group:** Set `status` to `CANCELLED` to cancel all transfers in the batch. Only batches that are not
      funded can be cancelled. Cancellation is final and cannot be undone.


      The `version` parameter is required for concurrency con'
  - info:
      name: Create a batch group transfer
      type: http
    http:
      method: POST
      url: https://api.wise.com/v3/profiles/:profileId/batch-groups/:batchGroupId/transfers
      headers:
      - name: X-External-Correlation-Id
        value: f47ac10b-58cc-4372-a567-0e02b2c3d479
      params:
      - name: profileId
        value: ''
        type: path
        description: The ID of the profile that the batch group is associated with.
      - name: batchGroupId
        value: ''
        type: path
        description: The batch group ID.
      body:
        type: json
        data: '{}'
      auth:
        type: bearer
        token: '{{bearerToken}}'
    docs: 'Create a transfer in the batch group using a previously created recipient account and quote.


      For the request body format, see [transfer creation](/api-reference/transfer#create). For quote and recipient creation,
      see [quote creation](/api-reference/quote/quotecreate) and [recipient creation](/api-reference/recipient/recip

# --- truncated at 32 KB (217 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/wise/refs/heads/main/apis.yml