Wise Card API

Manage your customers' cards programmatically. These APIs allow you to list cards, retrieve card details, control card status, and manage spending permissions. **Key capabilities:** - List and retrieve card details for a profile - Update card status (active, frozen, blocked) - Control spending permissions (e-commerce, ATM, contactless, magnetic stripe, etc.) - Reset PIN attempt counter after incorrect PIN entries - Update card phone number for verification purposes {% admonition type="info" %} For accessing sensitive card data (PAN, CVV, PIN), see the [Sensitive Card Details API](/api-reference/card-sensitive-details). For ordering new cards, see the [Card Orders API](/api-reference/card-order). For transaction history, see the [Card Transactions API](/api-reference/card-transaction). {% /admonition %}

Business capability
Card Issuance Management BC-1340.60

Operations 8

GET /v3/spend/profiles/{profileId}/cards List cards for a profile #
GET /v3/spend/profiles/{profileId}/cards/{cardToken} Get card details #
PUT /v3/spend/profiles/{profileId}/cards/{cardToken}/status Update card status #
POST /v3/spend/profiles/{profileId}/cards/{cardToken}/reset-pin-count Reset PIN count #
GET /v3/spend/profiles/{profileId}/cards/{cardToken}/spending-permissions Get card spending permissions #
PATCH /v3/spend/profiles/{profileId}/cards/{cardToken}/spending-permissions Update a single card permission #
PATCH /v4/spend/profiles/{profileId}/cards/{cardToken}/spending-permissions Bulk update card permissions #
PUT /v3/spend/profiles/{profileId}/cards/{cardToken}/phone-number Update phone number #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/wise-card-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

wise-card-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Wise Platform Card API
  version: ''
  description: The Wise Platform API is a REST-based interface that enables programmatic access to Wise's payment infrastructure.
servers:
- url: https://api.wise.com
  description: Production Environment
- url: https://api.wise-sandbox.com
  description: Sandbox Environment
tags:
- name: Card
  x-displayName: Cards
  description: Manage your customers' cards programmatically.
paths:
  /v3/spend/profiles/{profileId}/cards:
    get:
      operationId: cardList
      summary: List cards for a profile
      description: Returns a paginated list of cards that belong to a specific profile.
      tags:
      - Card
      parameters:
      - name: profileId
        in: path
        required: true
        description: The ID of the profile to retrieve cards for.
        schema:
          type: integer
          format: int64
        example: 123456
      - name: pageSize
        in: query
        required: false
        description: The maximum number of cards to return per page. Must be between 10 and 100.
        schema:
          type: integer
          format: int64
          minimum: 10
          maximum: 100
          default: 10
        example: 10
      - name: pageNumber
        in: query
        required: false
        description: The page number to retrieve. Must be greater than or equal to 1.
        schema:
          type: integer
          format: int64
          minimum: 1
          default: 1
        example: 1
      - $ref: '#/components/parameters/X-External-Correlation-Id'
      security:
      - UserToken: []
      responses:
        '200':
          description: List of cards retrieved successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  cards:
                    type: array
                    description: Collection of cards for this profile.
                    items:
                      $ref: '#/components/schemas/Card'
                  totalCount:
                    type: integer
                    format: int64
                    description: The total number of cards for this profile.
                    example: 1
          headers:
            X-External-Correlation-Id:
              $ref: '#/components/headers/X-External-Correlation-Id'
            x-trace-id:
              $ref: '#/components/headers/x-trace-id'
        '429':
          $ref: '#/components/responses/429'
  /v3/spend/profiles/{profileId}/cards/{cardToken}:
    get:
      operationId: cardGet
      summary: Get card details
      description: Retrieves details for a specific card by its token.
      tags:
      - Card
      parameters:
      - name: profileId
        in: path
        required: true
        description: The ID of the profile that owns the card.
        schema:
          type: integer
          format: int64
        example: 123456
      - name: cardToken
        in: path
        required: true
        description: The unique token identifying the card.
        schema:
          type: string
          format: uuid
        example: ca0c8154-1e14-4464-a1ce-dcea7dc3de52
      - $ref: '#/components/parameters/X-External-Correlation-Id'
      security:
      - UserToken: []
      responses:
        '200':
          description: Card details retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Card'
          headers:
            X-External-Correlation-Id:
              $ref: '#/components/headers/X-External-Correlation-Id'
            x-trace-id:
              $ref: '#/components/headers/x-trace-id'
        '429':
          $ref: '#/components/responses/429'
  /v3/spend/profiles/{profileId}/cards/{cardToken}/status:
    put:
      operationId: cardStatusUpdate
      summary: Update card status
      description: 'Update the status of a card. For cards issued with an `INACTIVE` status, updating to `ACTIVE` will activate the card and move the card order status to `COMPLETED`.


        **Available status transitions:**

        - `ACTIVE` - The card is active and usable

        - `FROZEN` - The card is temporarily frozen; all authorization requests will be declined

        - `BLOCKED` - The card is **irreversibly** blocked and is no longer usable'
      tags:
      - Card
      parameters:
      - name: profileId
        in: path
        required: true
        description: The ID of the profile that owns the card.
        schema:
          type: integer
          format: int64
        example: 123456
      - name: cardToken
        in: path
        required: true
        description: The unique token identifying the card.
        schema:
          type: string
          format: uuid
        example: ca0c8154-1e14-4464-a1ce-dcea7dc3de52
      - $ref: '#/components/parameters/X-External-Correlation-Id'
      security:
      - UserToken: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - status
              properties:
                status:
                  type: string
                  description: The status to update the card to.
                  enum:
                  - ACTIVE
                  - FROZEN
                  - BLOCKED
                  example: ACTIVE
            example:
              status: ACTIVE
      responses:
        '200':
          description: Card status updated successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Card'
          headers:
            X-External-Correlation-Id:
              $ref: '#/components/headers/X-External-Correlation-Id'
            x-trace-id:
              $ref: '#/components/headers/x-trace-id'
        '429':
          $ref: '#/components/responses/429'
  /v3/spend/profiles/{profileId}/cards/{cardToken}/reset-pin-count:
    post:
      operationId: cardPinCountReset
      summary: Reset PIN count
      description: 'If the wrong PIN has been entered more than 3 times, future transactions on the card will be blocked with a `PIN_ENTRY_TRIES_EXCEEDED` error message.


        Use this endpoint to reset the PIN count to 0 and unblock transactions.


        {% admonition type="info" %}

        In some cases, you may also need to reset the PIN count directly at the ATM.

        {% /admonition %}'
      tags:
      - Card
      parameters:
      - name: profileId
        in: path
        required: true
        description: The ID of the profile that owns the card.
        schema:
          type: integer
          format: int64
        example: 123456
      - name: cardToken
        in: path
        required: true
        description: The unique token identifying the card.
        schema:
          type: string
          format: uuid
        example: ca0c8154-1e14-4464-a1ce-dcea7dc3de52
      - $ref: '#/components/parameters/X-External-Correlation-Id'
      security:
      - UserToken: []
      responses:
        '200':
          description: PIN count reset successfully.
          headers:
            X-External-Correlation-Id:
              $ref: '#/components/headers/X-External-Correlation-Id'
            x-trace-id:
              $ref: '#/components/headers/x-trace-id'
        '429':
          $ref: '#/components/responses/429'
  /v3/spend/profiles/{profileId}/cards/{cardToken}/spending-permissions:
    get:
      operationId: cardPermissionsGet
      summary: Get card spending permissions
      description: Retrieves the current spending permissions configured for a card.
      tags:
      - Card
      parameters:
      - name: profileId
        in: path
        required: true
        description: The ID of the profile that owns the card.
        schema:
          type: integer
          format: int64
        example: 123456
      - name: cardToken
        in: path
        required: true
        description: The unique token identifying the card.
        schema:
          type: string
          format: uuid
        example: ca0c8154-1e14-4464-a1ce-dcea7dc3de52
      - $ref: '#/components/parameters/X-External-Correlation-Id'
      security:
      - UserToken: []
      responses:
        '200':
          description: Card permissions retrieved successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  permissions:
                    type: array
                    description: List of spending permissions for this card.
                    items:
                      $ref: '#/components/schemas/Permission'
              example:
                permissions:
                - type: ECOM
                  isEnabled: false
                  isLocked: false
                - type: POS_CHIP
                  isEnabled: true
                  isLocked: false
                - type: ATM_WITHDRAWAL
                  isEnabled: false
                  isLocked: false
                - type: MOBILE_WALLETS
                  isEnabled: true
                  isLocked: false
                - type: POS_CONTACTLESS
                  isEnabled: false
                  isLocked: true
                - type: POS_MAGSTRIPE
                  isEnabled: false
                  isLocked: true
          headers:
            X-External-Correlation-Id:
              $ref: '#/components/headers/X-External-Correlation-Id'
            x-trace-id:
              $ref: '#/components/headers/x-trace-id'
        '429':
          $ref: '#/components/responses/429'
    patch:
      operationId: cardPermissionsUpdate
      summary: Update a single card permission
      deprecated: true
      description: 'Enable or disable a single spending permission on a card.


        {% admonition type="warning" %}

        This endpoint is deprecated. Please use the v4 endpoint instead.

        {% /admonition %}'
      tags:
      - Card
      parameters:
      - name: profileId
        in: path
        required: true
        description: The ID of the profile that owns the card.
        schema:
          type: integer
          format: int64
        example: 123456
      - name: cardToken
        in: path
        required: true
        description: The unique token identifying the card.
        schema:
          type: string
          format: uuid
        example: ca0c8154-1e14-4464-a1ce-dcea7dc3de52
      - $ref: '#/components/parameters/X-External-Correlation-Id'
      security:
      - UserToken: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - type
              - isEnabled
              properties:
                type:
                  type: string
                  description: The permission type to update.
                  enum:
                  - ECOM
                  - POS_CHIP
                  - POS_MAGSTRIPE
                  - POS_CONTACTLESS
                  - ATM_WITHDRAWAL
                  - MOBILE_WALLETS
                  example: ECOM
                isEnabled:
                  type: boolean
                  description: Whether to enable or disable this permission.
                  example: true
      responses:
        '200':
          description: Permission updated successfully.
          headers:
            X-External-Correlation-Id:
              $ref: '#/components/headers/X-External-Correlation-Id'
            x-trace-id:
              $ref: '#/components/headers/x-trace-id'
        '429':
          $ref: '#/components/responses/429'
  /v4/spend/profiles/{profileId}/cards/{cardToken}/spending-permissions:
    patch:
      operationId: cardPermissionsBulkUpdate
      summary: Bulk update card permissions
      description: 'Enable or disable multiple spending permissions on a card in a single request.


        This is the recommended endpoint for updating card permissions as it allows updating multiple permissions atomically.'
      tags:
      - Card
      parameters:
      - name: profileId
        in: path
        required: true
        description: The ID of the profile that owns the card.
        schema:
          type: integer
          format: int64
        example: 123456
      - name: cardToken
        in: path
        required: true
        description: The unique token identifying the card.
        schema:
          type: string
          format: uuid
        example: ca0c8154-1e14-4464-a1ce-dcea7dc3de52
      - $ref: '#/components/parameters/X-External-Correlation-Id'
      security:
      - UserToken: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - permissions
              properties:
                permissions:
                  type: array
                  description: List of permissions to update.
                  items:
                    type: object
                    required:
                    - type
                    - isEnabled
                    properties:
                      type:
                        type: string
                        description: The permission type to update.
                        enum:
                        - ECOM
                        - POS_CHIP
                        - POS_MAGSTRIPE
                        - POS_CONTACTLESS
                        - ATM_WITHDRAWAL
                        - MOBILE_WALLETS
                      isEnabled:
                        type: boolean
                        description: Whether to enable or disable this permission.
            example:
              permissions:
              - type: ECOM
                isEnabled: true
              - type: POS_CHIP
                isEnabled: true
      responses:
        '200':
          description: Permissions updated successfully.
          headers:
            X-External-Correlation-Id:
              $ref: '#/components/headers/X-External-Correlation-Id'
            x-trace-id:
              $ref: '#/components/headers/x-trace-id'
        '429':
          $ref: '#/components/responses/429'
  /v3/spend/profiles/{profileId}/cards/{cardToken}/phone-number:
    put:
      operationId: cardPhoneNumberUpdate
      summary: Update phone number
      deprecated: true
      description: '{% admonition type="warning" %}

        This endpoint is deprecated for partners onboarded after 1/3/2025. For new and existing partners, your clientId will need to be approved by our support team to make the `phoneNumber` optional in the create card order endpoint. See 3DS for more information.

        {% /admonition %}


        Updates the phone number of a card. The new phone number must be a valid phone number.'
      tags:
      - Card
      security:
      - UserToken: []
      parameters:
      - name: profileId
        in: path
        required: true
        description: Your profile ID.
        schema:
          type: integer
          format: int64
        example: 30000000
      - name: cardToken
        in: path
        required: true
        description: The card token.
        schema:
          type: string
        example: 12345-12345-12345-12345
      - $ref: '#/components/parameters/X-External-Correlation-Id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - phoneNumber
              properties:
                phoneNumber:
                  type: string
                  description: Must be a valid phone number prefixed with + and country code.
                  example: '+6588888888'
      responses:
        '200':
          description: Updated card phone number details.
          content:
            application/json:
              schema:
                type: object
                properties:
                  token:
                    type: string
                    description: The card token that you are modifying.
                    example: 12345-12345-12345-12345
                  profileId:
                    type: integer
                    description: The profile ID that the card is linked to.
                    example: 30000000
                  phoneNumber:
                    type: string
                    description: The new phone number associated with the card.
                    example: '+6588888888'
          headers:
            X-External-Correlation-Id:
              $ref: '#/components/headers/X-External-Correlation-Id'
            x-trace-id:
              $ref: '#/components/headers/x-trace-id'
        '429':
          $ref: '#/components/responses/429'
webhooks:
  cards#manual-provisioning-verification:
    post:
      operationId: eventCardsManualProvisioningVerification
      summary: Cards manual provisioning verification
      description: 'Triggered when a card is manually added to a wallet provider, and the verification methods required to complete the wallet provisioning are returned.

        See the Webhooks guide for setup instructions, signature verification, and best practices.


        * Event type: `cards#manual-provisioning-verification`

        * Profile level subscriptions: Not Supported

        * Application level subscriptions: Supported'
      tags:
      - Card
      parameters:
      - $ref: '#/components/parameters/x-signature-sha256'
      - $ref: '#/components/parameters/x-delivery-id'
      - $ref: '#/components/parameters/x-test-notification'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v2.0.0-4'
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: ok
          description: Return any `2xx` status to acknowledge receipt of the event.
components:
  responses:
    '429':
      x-global: true
      description: Rate limit exceeded. Retry after the number of seconds specified in the `Retry-After` header.
      headers:
        Retry-After:
          description: Number of seconds to wait before retrying the request.
          schema:
            type: integer
          example: 5
        X-Rate-Limited-By:
          description: Identifies the rate limiter that triggered the 429 response.
          schema:
            type: string
          example: wise-public-api
        X-External-Correlation-Id:
          $ref: '#/components/headers/X-External-Correlation-Id'
        x-trace-id:
          $ref: '#/components/headers/x-trace-id'
      content:
        application/json:
          schema:
            type: object
  schemas:
    Permission:
      type: object
      description: Spending permission configuration for a card.
      x-tags:
      - card
      properties:
        type:
          type: string
          description: 'The type of transaction this permission controls:

            - `ECOM` - Online transactions

            - `POS_CHIP` - Physical point-of-sale transactions with chip

            - `POS_MAGSTRIPE` - Physical point-of-sale transactions with magnetic stripe

            - `POS_CONTACTLESS` - Physical point-of-sale contactless transactions

            - `ATM_WITHDRAWAL` - ATM withdrawals

            - `MOBILE_WALLETS` - Digital wallet payments (Apple Pay, Google Pay)

            '
          enum:
          - ECOM
          - POS_CHIP
          - POS_MAGSTRIPE
          - POS_CONTACTLESS
          - ATM_WITHDRAWAL
          - MOBILE_WALLETS
          example: ECOM
        isEnabled:
          type: boolean
          description: Indicates if this permission type is enabled.
          example: false
        isLocked:
          type: boolean
          description: Indicates if this permission is locked. If locked, the permission cannot be enabled.
          example: false
    v2.0.0-4:
      title: Schema version 2.0.0
      type: object
      properties:
        schema_version:
          type: string
          description: Version of the event schema. Determined by the `schema_version` on your [webhook subscription](/api-reference/webhook).
          enum:
          - 2.0.0
          example: 2.0.0
        subscription_id:
          type: string
          format: uuid
          description: ID of the webhook subscription that triggered this event
          example: 5281e333-a4d9-4960-aec3-553267a9a8aa
        event_type:
          type: string
          description: Event type identifier
          example: cards#manual-provisioning-verification
        sent_at:
          type: string
          format: date-time
          description: Timestamp when the event was sent
          example: '2026-03-09T05:52:37Z'
        data:
          type: object
          properties:
            resource:
              type: object
              properties:
                profile_id:
                  type: integer
                  format: int64
                  description: ID of the profile that owns the card
                  example: 9953556
                client_id:
                  type: string
                  description: Your api_client_id
                  example: tw-test-card-issuance
                card_token:
                  type: string
                  description: Unique identifier of the card
                  example: 72393ec3-0707-4bf1-00b7-744f7a380d2c
                type:
                  type: string
                  description: Resource type (always `card`)
                  example: card
            payment_token_unique_reference:
              type: string
              description: The payment token unique reference associated to the card
              example: DNITHE352605523102858206
            last_four_digits:
              type: string
              description: The last four digits for the card Primary Account Number (PAN)
              example: '8237'
            creation_time:
              type: string
              format: date-time
              description: The time when the card provisioning request was created
              example: '2026-03-09T05:52:37.274962Z'
            wallet_name:
              type: string
              description: The wallet provider used to provision the card such as "Google Pay" or "Apple Pay"
              example: Google Pay
    Card:
      type: object
      description: The Card resource represents a Wise card linked to a profile.
      x-tags:
      - card
      properties:
        token:
          type: string
          description: Unique identifier for the card.
          example: ca0c8154-1e14-4464-a1ce-dcea7dc3de52
        profileId:
          type: integer
          format: int64
          description: Profile ID that owns this card.
          example: 123456
        clientId:
          type: string
          description: Client ID of the partner that issued the card.
          example: wise_api_docs
        status:
          type: object
          description: Current status of the card.
          properties:
            value:
              type: string
              description: 'Status value. One of:

                - `ACTIVE` - Card is active and can be used

                - `INACTIVE` - Card is inactive and all transactions will be declined

                - `BLOCKED` - Card is blocked and cannot be reversed back to any state

                - `FROZEN` - Card is temporarily blocked

                - `PARTNER_SUSPENDED` - Card is suspended by Wise temporarily (do not display to end customers)

                - `EXPIRED` - Card is expired

                - `PURGED` - Cardholder data (e.g. PAN, PIN) has been purged after the retention period (555 days after the card''s expiry date)

                '
              enum:
              - ACTIVE
              - INACTIVE
              - BLOCKED
              - FROZEN
              - PARTNER_SUSPENDED
              - EXPIRED
              - PURGED
              example: ACTIVE
        cardHolderName:
          type: string
          description: Name of the card holder.
          example: John Smith
        expiryDate:
          type: string
          format: date-time
          description: Date when the card will expire.
          example: '2028-05-31T00:00:00Z'
        lastFourDigits:
          type: string
          description: Last 4 digits of the card number.
          example: '6320'
        bankIdentificationNumber:
          type: string
          description: Bank identification number (BIN) of the card.
          example: '459661'
        phoneNumber:
          type: string
          description: Phone number associated with the card.
          example: '+441234567890'
        cardProgram:
          type: object
          description: Card program details.
          properties:
            name:
              type: string
              description: Name of the card program.
              example: VISA_DEBIT_BUSINESS_UK_1
            scheme:
              type: string
              description: Card network scheme.
              enum:
              - VISA
              - MASTERCARD
              example: VISA
            defaultCurrency:
              type: string
              description: Default currency of the card.
              example: GBP
            cardType:
              type: string
              description: Type of the card. E.g. `PHYSICAL` or `VIRTUAL`.
              example: VIRTUAL
        unlockSpendingPermissions:
          type: string
          description: 'Method with which physical card spending permissions can be unlocked. One of:

            - `WITH_PARTNER_API` - Unlock via Partner API

            - `WITH_FIRST_CHIP_AND_PIN_TRANSACTION` - Unlock with first chip and PIN transaction

            - `NONE` - Not applicable (for virtual cards)

            '
          enum:
          - WITH_PARTNER_API
          - WITH_FIRST_CHIP_AND_PIN_TRANSACTION
          - NONE
          example: WITH_PARTNER_API
        creationTime:
          type: string
          format: date-time
          description: Time when the card was created.
          example: '2022-05-31T01:43:24.596321434Z'
        modificationTime:
          type: string
          format: date-time
          description: Time when the card was last modified.
          example: '2022-05-31T01:43:24.596321825Z'
  parameters:
    x-delivery-id:
      name: X-Delivery-Id
      in: header
      required: false
      description: Unique identifier for this webhook delivery attempt.
      schema:
        type: string
        format: uuid
      example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
    x-signature-sha256:
      name: X-Signature-SHA256
      in: header
      required: false
      description: 'RSA-SHA256 signature of the request body, Base64 encoded. Verify this against the [Wise public key](/guides/developer/webhooks/event-handling#requests) to ensure the request is authentic and has not been tampered with.

        '
      schema:
        type: string
      example: t7FMhk3OARMgwqz0LJXO...
    x-test-notification:
      name: X-Test-Notification
      in: header
      required: false
      description: 'Present with the value `true` if this is a test notification sent to verify your callback URL during subscription setup.

        '
      schema:
        type: boolean
      example: true
    X-External-Correlation-Id:
      x-global: true
      name: X-External-Correlation-Id
      in: header
      required: false
      description: '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).

        '
      schema:
        type: string
        format: uuid
        maxLength: 36
      example: f47ac10b-58cc-4372-a567-0e02b2c3d479
  headers:
    x-trace-id:
      x-global: true
      description: Unique trace identifier assigned by Wise. Useful when contacting support about a specific request.
      schema:
        type: string
      example: fba501b6d453b96789f52338f019341f
    X-External-Correlation-Id:
      x-global: true
      description: Echoed back when `X-External-Correlation-Id` was included in the request. [Learn more](/guides/developer/headers/correlation-id).
      schema:
        type: string
        format: uuid
        maxLength: 36
      example: f47ac10b-58cc-4372-a567-0e02b2c3d479
  securitySchemes:
    UserToken:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'User Access Token for making API calls on behalf of a Wise user.


        Can be obtained via two OAuth 2.0 flows:

        - **registration_code grant**: For partners creating users via API

        - **authorization_code grant**: For partners using Wise''s authorization page


        Access tokens are valid for 12 hours and can be refreshed using a refresh token.

        '
    PersonalToken:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'Personal API Token for individual personal or small business users.

        Generated from Wise.com > Settings > Connect and manage apps > API tokens.

        Has limited API access compared to OAuth tokens (PSD2 restrictions apply for EU/UK users).

        '
    ClientCredentialsToken:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'Application-level token for partner operations that don''t require a specific user context, such as bulk settlement and card spend controls.


        Obtained via `POST /oauth/token` with Basic Authentication (client-id:client-secret) and `grant_type=client_credentials`.


        Valid for 12 hours. No refresh token — fetch a new token when expired.


        See [create an OAuth token](/api-reference/oauth-token/oauthtokencreate) for details.

        '
    BasicAuth:
      type: http
      scheme: basic
      description: 'Basic Authentication using your Client ID and Client Secret as the username and password.


        Client credentials are provided by Wise when your partnership begins. See [Getting Started](/guides/developer) for details.

        '
x-tagGroups:
- name: Authentication
  tags:
  - oauth-token
- name: Enhanced Security
  tags:
  - jose
- name: Users
  tags:
  - user
  - claim-account
- name: Profiles
  tags:
  - profile
  - activity
  - address
- name: Verification
  tags:
  - kyc-review
  - verification
  - facetec
- name: Strong Customer Authentication
  tags:
  - sca-ott
  - sca-sessions
  - sca-pin
  - sca-facemaps
  - sca-device-fingerprints
  - sca-otp
  - user-security
- name: Balances
  tags:
  - balance
  - balance-statement
  - bank-account-details
  - multi-currency-account
- name: Cards
  tags:
  - card
  - card-sensitive-details
  - 3ds
  - card-kiosk-collection
  - card-order
  - card-transaction
  - spend-limits
  - spend-controls
  - digital-wallet
  - disputes
- name: Quotes
  tags:
  - quote
  - rate
  - comparison
- name: Recipients
  tags:
  - recipient
  - contact
- name: Transfers
  tags:
  - transfer
  - delivery-estimate
  - currencies
  - batch-group
- name: Funding
  tags:
  - payin-deposit-detail
  - direct-debit-account
  - bulk-settlement
  - payins
- name: Webhooks
  tags:
  - webhook
  - webhook-event
- name: Simulations
  tags:
  - simulation
- name: Partner Support
  tags:
  - case