Update card settings

Update details of a specific card, based on its ID.

note

This feature is available in the UK, US, the EEA, and SG.

This feature is not available in Sandbox.

To use the Cards API, please contact Revolut API Support.

For more information, see the guides: Manage cards.

Request

Path Parameters
Path Parameters

The ID of the card.

Request body
Body any

Possible length: <= 30 characters

The label of the card.

Example: {"single":{"amount":200.22,"currency":"GBP"},"week":{"amount":200.44,"currency":"GBP"}}

All spending limits set for the card.

You can have at most 1 periodic (day/week/month/quarter/all-time) and 1 non-periodic (single transaction) limit at a time. If you try to specify 2 periodic limits at a time, it will result in an error.

Use null as the value for a specific limit to erase that limit. Use null as the value for the spending_limits object to erase all limits.

caution

If the card has a spend program assigned, modifying the card's spending limits will unlink this spend program from this card, and the new custom settings will apply.

note

Updating a spending limit does not reset the spending counter. For more information, see the guides: Manage cards - Update a card.

The limit for a single transaction.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The daily limit for transactions.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The weekly limit for transactions.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The monthly limit for transactions.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The quarterly limit for transactions.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The yearly limit for transactions.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The all-time limit for transactions.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The controls for the card's spending period.

They let you set or modify the dates when the card becomes available or unavailable for spending, and define what happens after the end date.

If specified, you must provide at least one of these:

  • start_date
  • end_date together with end_date_action

The spending period dates must be in the future.

The dates are inclusive. This means that:

  • If you set the start_date to 2025-12-31, the card will become active on that day.
  • If you set the end_date to 2026-06-01, the card will be active through that day, and will be locked/terminated starting on 2026-06-02.
note

If you wish to unlock a card with a spending period starting in the future and make it available for spending right away, you can do it in a few ways, depending on your use case:

  • To remove the start date, but keep the end date settings, provide the current spending_period settings without the start_date.
  • To remove the start date when no end date is set, provide the spending_period.start_date set to null.
  • To remove all spending period settings, either provide spending_period set to null, or use the dedicated endpoint to unlock the card.

If you wish to erase a spending period end date, you can do this in a similar way, applying the steps to spending_period.end_date and spending_period.end_date_action.

Example: "2025-09-26"

The start date (inclusive) of the spending period, in ISO 8601 format (YYYY-MM-DD). Uses the timezone set by the business, or defaults to Europe/London.

Example: "2030-12-31"

The end date (inclusive) of the spending period, in ISO 8601 format (YYYY-MM-DD). Uses the timezone set by the business, or defaults to Europe/London.

Possible values: [lock, terminate]

The action to take after the end date of the spending period.

Possible values: [health, general, services, airlines, transport, accommodation, utilities, shopping, financial, furniture, hardware, groceries, fuel, entertainment, software, restaurants, advertising, cash, education, government]

The list of merchant categories that will be available for card spending. Use null to erase the value and reset to empty (all categories will be allowed).

note

The categories and merchant_controls parameters have the following restrictions:

  • If you set categories, you cannot set merchant_controls.control_type to allow.
  • You can set merchant_controls.control_type to block.
  • You may also set either categories or merchant_controls independently, or set neither.
  • Both parameters can be used together only if merchant_controls.control_type is block.

The merchant-level controls for card spending.

They let you block or allow the card to only transact with specific merchants:

  • allow: permits only the specified merchants (cannot be used if the categories parameter is set)
  • block: blocks the specified merchants (can be used with or without categories)

Possible values: [block, allow]

The type of control to apply.

Possible number of items: non-empty and <= 20 items

The list of IDs of merchants to which the control applies.

tip

To find merchant IDs, check transaction details (→ merchant.id). You can fetch transaction details for a specific transaction or for all transactions.

Pattern: Value must match regular expression ^[A-Z]{2}$
Example: "GB"

The list of countries where the card can be used, provided as 2-letter ISO 3166 codes.

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.

Response

Information about the updated card

note

If you modify the card's spending period in the request, the card's state returned in the response might not yet reflect those changes. This is because these spending period locks are applied to the card asynchronously, which might result in a slight delay in the card's state update.

To re-check the state, fetch the card's details.

Response body
Body object

The ID of the card.

The ID of the team member who is the holder of the card. If the card belongs to the business, this will be empty.

For more information, see the guides: Manage Cards - Create a virtual card.

Possible number of items: non-empty and <= 5 items, unique

The list of contacts for a company card.

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

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

The card product offered by the card provider for this card. In other words, the program that the card was issued under.

note

This property is only available to travel intermediaries using our travel solution. To use it, please contact Revolut API Support.

The code of the card product.

Specifies whether the card is virtual (true) or physical (false).

Pattern: Value must match regular expression ^[0-9]{4}$

The last 4 digits of the card's PAN.

Pattern: Value must match regular expression ^[0-9]{2}/[0-9]{4}$

The card expiration date.

The label of the card.

Possible number of items: non-empty and <= 5 items, unique
Example: [{"name":"PNR","value":"RT12345"},{"name":"Traveller","value":"John Smith"}]

References for the card. Up to 5 name-value pairs assigned to the card for tracking.

info

Each time the card is used, the references are recorded in the transaction details (card.references), helping track transactions made with this card.

The names must be unique. The references can be amended up to 10 times.

References are only supported for cards owned by the business (i.e. company or auto-issued cards). They are not supported for team member cards (i.e. with holder_id present).

note

The references recorded on a transaction are those assigned to the card at the time the transaction took place. If the references are amended, they will only be applied to future transactions. Existing transaction are not affected.

Possible length: non-empty and <= 30 characters

The name of the card reference. Must be unique.

Possible length: non-empty and <= 30 characters

The value for this reference.

Possible values: [created, pending, active, frozen, locked]

The state that the card is in.

Possible values:

  • active: The card is available for spending. Newly created cards typically go into active unless subject to certain conditions, for example, spending period starting in the future.
  • frozen: The card has been frozen and is temporarily unavailable for spending.
  • locked: The card is locked, typically due to an admin lock or spending period settings, i.e. when its spending_period.start_date is in the future or spending_period.end_date is in the past. A locked card is unavailable for spending until it's unlocked and active.
    tip

    To see if the card can be unlocked, check the can_be_unlocked parameter. Note that you'll still need the necessary scope or permission to unlock it.

  • created: The card has been created but is not yet active. Used only for a specific type of cards.
  • pending: This status is currently not in use.

Returned for locked cards (state=locked). Indicates whether the card can be unlocked manually (via API or in-app). If true, you'll still need the necessary scope or permission to unlock the card.

info

Cards can be locked for various reasons. For example, a card can be locked by the user, due to spending period settings, or automatically by the system. Only certain types of lock can be lifted manually.

The spend program assigned to the card.

note

To use this property, please contact Revolut API Support.

Possible length: <= 30 characters

The name of the spend program.

Example: {"single":{"amount":200.22,"currency":"GBP"},"week":{"amount":200.44,"currency":"GBP"}}

All spending limits set for the card.

The limit for a single transaction.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The daily limit for transactions.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The weekly limit for transactions.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The monthly limit for transactions.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The quarterly limit for transactions.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The yearly limit for transactions.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The all-time limit for transactions.

The value of the spending limit.

Pattern: Value must match regular expression ^[A-Z]{3}$

The currency of the spending limit, provided as ISO 4217 code in upper case.

The controls for the card's spending period.

They specify the dates when the card becomes available or unavailable for spending, and define what happens after the end date.

Example: "2025-09-26"

The start date (inclusive) of the spending period, in ISO 8601 format (YYYY-MM-DD). Uses the timezone set by the business, or defaults to Europe/London.

Example: "2030-12-31"

The end date (inclusive) of the spending period, in ISO 8601 format (YYYY-MM-DD). Uses the timezone set by the business, or defaults to Europe/London.

Possible values: [lock, terminate]

The action to take after the end date of the spending period.

Possible values: [health, general, services, airlines, transport, accommodation, utilities, shopping, financial, furniture, hardware, groceries, fuel, entertainment, software, restaurants, advertising, cash, education, government]

The list of merchant categories that are available for card spending. If not specified, categories are not restricted.

The merchant-level controls for card spending.

They block or allow the card to only transact with specific merchants:

  • allow: permits only the specified merchants (cannot be used if the categories parameter is set)
  • block: blocks the specified merchants (can be used with or without categories)

Possible values: [block, allow]

The type of control to apply.

Possible number of items: non-empty and <= 20 items

The list of IDs of merchants to which the control applies.

tip

To find merchant IDs, check transaction details (→ merchant.id). You can fetch transaction details for a specific transaction or for all transactions.

Pattern: Value must match regular expression ^[A-Z]{2}$
Example: "GB"

The list of countries where the card can be used, specified as 2-letter ISO 3166 codes.

The list of linked accounts.

Was this page helpful?