Card invitations

Create a card invitation

Create an invitation for a virtual team member card for a new, not-yet-onboarded team member. When the team member completes onboarding before the invitation's expiry date, the invitation will automatically be claimed, and the card will then be issued for the team member immediately.

:::note To increase your account's card limits, please contact Revolut API Support. :::

For more information, see the guides: Manage card invitations.

post/card-invitations

Request

  • Base URL
    https://b2b.revolut.com/api/1.0
  • Auth
    HTTP bearer

Request body

request_idstring required

A unique ID of the request that you provide.

There is no strict requirement on the format of this ID, but we suggest using v4 UUIDs.

:::warning This ID is used to prevent duplicate card creation requests in case of a lost connection or client error, so make sure you use the same request_id for requests related to the same card invitation. The deduplication is limited to 24 hours counting from the first request using a given ID. ::: For more information, see the guides: Manage card invitations - Idempotency.

expiry_periodstring

The period after which the card invitation expires if it hasn't been claimed or cancelled. Must be specified in ISO 8601 duration format. The duration is counted from the card invitation creation.

  • Minimum duration: 1 day (P1D)
  • Maximum duration: 90 days (P90D)
  • Default duration: 90 days (P90D)
holder_idstring uuid required

The ID of the team member who will be assigned as the holder of the card after the invitation is claimed.

:::tip To retrieve a team member's ID, use the GET /team-members operation. :::

virtualtrue required

Specifies the type of the card. Must be set to true, as with the API, you can create only virtual cards.

:::tip To create physical cards, use the Revolut Business app. :::

labelstring

The label for the card to be issued, displayed in the UI to help distinguish between cards. If not specified, the default label will be set according to the card's type. For card invitations created via API, it's always Virtual.

categoriesBusinessMerchantCategory[]

The list of merchant categories to be available for card spending. If not specified, all categories will be allowed.

countriesstring[]

Restricts card use to specified countries, provided as 2-letter ISO 3166 codes.

accountsstring[]

The list of accounts to link to the card. If not specified, all accounts will be linked. To retrieve account IDs, use the GET /accounts operation.

Example request

{
  "expiry_period": "P3D",
  "spending_limits": {
    "single": {
      "amount": 200.22,
      "currency": "GBP"
    },
    "week": {
      "amount": 200.44,
      "currency": "GBP"
    }
  },
  "spending_period": {
    "start_date": "2025-09-26",
    "end_date": "2030-12-31"
  },
  "mcc_controls": {
    "mccs": [
      "7033"
    ]
  },
  "countries": [
    "GB"
  ]
}

Response

Successfully created card invitation

idstring uuid required

The ID of the card invitation.

state'created' | 'expired' | 'failed' | 'redeemed' required

The current state of the card invitation:

ValueDescription
createdInvitation has been created but not yet claimed.
expiredInvitation has expired due to expiry date being reached or manual cancellation.
failedInvitation claim attempt failed.
redeemedInvitation has been successfully claimed.

To learn more about card invitation lifecycle, see the guide: Manage card invitations → Card invitation state.

created_atstring date-time required

The date and time the card invitation was created in ISO 8601 format.

updated_atstring date-time required

The date and time the card invitation was last updated in ISO 8601 format.

expiry_datestring date-time

The date and time after which this card invitation expires if not claimed or cancelled before then. Specified in ISO 8601 format. :::note Only returned for invitations in state created. :::tip For other states, to find out when a card invitation transitioned to its final state, check the updated_at value. :::

holder_idstring uuid

The ID of the team member to be assigned as the holder of the card after the invitation is claimed.

virtualboolean required

Specifies whether the issued card will be a virtual (true) or physical (false) one.

labelstring

The label of the card.

categoriesBusinessMerchantCategory[]

The list of merchant categories that will be available for card spending.
If this parameter is not specified, categories are not restricted.

countriesstring[]

The list of countries where the team member will be able to use the card. Specified as 2-letter ISO 3166 codes.

accountsstring[] required

The list of accounts that will be linked to the card.

Example response

{
  "expiry_date": "2025-10-20T15:09:24Z",
  "spending_limits": {
    "single": {
      "amount": 200.22,
      "currency": "GBP"
    },
    "week": {
      "amount": 200.44,
      "currency": "GBP"
    }
  },
  "spending_period": {
    "start_date": "2025-09-26",
    "end_date": "2030-12-31"
  },
  "mcc_controls": {
    "mccs": [
      "7033"
    ]
  },
  "countries": [
    "GB"
  ]
}

Changes

No recorded changes to this operation across all 1 revision of this API.