---
title: "Simulate a Card Update"
method: POST
path: "/payments/cards/{card_id}/simulate"
tags: ["Payments", "Card Account Updates"]
---

# Simulate a Card Update

`POST /payments/cards/{card_id}/simulate`

## Request

- Base URL: `https://api.evervault.com`
- URL: `https://api.evervault.com/payments/cards/{card_id}/simulate`
- Auth: HTTP basic
- TypeScript: <https://skmtc.dev/evervault/apis/evervault-api/docs/payments/cards/:card_id/simulate/post.ts> (a function with typed inputs; its response is checked against the schema)

Simulates an update to a Card so that you can test your Card Account Updater integration. This endpoint is only available for [Sandbox Apps](/developers/sandbox).

## Path parameters

- `card_id` string, required

## Request body

- union: The request body for simulating a card update differs depending on the type of event you want to simulate.
  - object: New account number
    - `updateType` 'new-account-number', required: The type of update to simulate.
    - `expiry` CardExpiry: The card expiry date.
      - `month` string, required: The card expiry month, in MM format (e.g. 12 for December)
      - `year` string, required: The card expiry year, in YY format (e.g. 29 for 2029)
    - `number` string: The card number. Can be clear-text or an Evervault encrypted string.
    - `externalCustomerReference` string: An optional reference of your choice, such as a correlation ID, that is attached to the request. The reference will be visible in your logs. Must be between 1 and 255 characters.
  - object: New expiry date
    - `updateType` 'new-expiry-date', required: The type of update to simulate.
    - `expiry` CardExpiry: The card expiry date.
      - `month` string, required: The card expiry month, in MM format (e.g. 12 for December)
      - `year` string, required: The card expiry year, in YY format (e.g. 29 for 2029)
    - `externalCustomerReference` string: An optional reference of your choice, such as a correlation ID, that is attached to the request. The reference will be visible in your logs. Must be between 1 and 255 characters.
  - object: Account closure
    - `updateType` 'account-closure', required: The type of update to simulate.
    - `externalCustomerReference` string: An optional reference of your choice, such as a correlation ID, that is attached to the request. The reference will be visible in your logs. Must be between 1 and 255 characters.

## Response `200`

Returns the updated Card object.

- Card
  - `id` string: The unique identifier for the card.
  - `number` string, required: The Evervault encrypted card number. This can be decrypted using Relay decryption or using a function.
  - `expiry` CardExpiry: The card expiry date.
    - `month` string, required: The card expiry month, in MM format (e.g. 12 for December)
    - `year` string, required: The card expiry year, in YY format (e.g. 29 for 2029)
  - `bin` string, required: The first 6 or 8 digits of the card number.
  - `lastFour` string, required: The last 4 digits of the card number.
  - `brand` 'visa' | 'mastercard' | 'american-express' | 'discover' | 'diners-club' | 'jcb' | 'unionpay': The card brand associated with the payment card.
  - `funding` 'debit' | 'credit' | 'prepaid' | 'deferred-debit' | 'charge': The card funding type specifies the method by which transactions are financed.
  - `segment` 'consumer' | 'commercial' | 'business' | 'government' | 'payouts' | 'all': The card segment indicates the primary market or usage category of the card.
  - `country` string, iso-3166-1-alpha-2: The country where the card was issued.
  - `currency` string, iso-4217-alphabetic: The currency of the card.
  - `issuer` string: The name of the card issuer.
  - `status` 'active' | 'replaced' | 'closed' | 'invalid': The current status of the card.
  - `replacement` string, nullable: The ID of the replacement card. This field is only present if the card has been replaced.
  - `automaticUpdates` 'enabled' | 'issuer-not-enrolled' | 'disabled': The status of Card Account Updater on this card. Evervault currently supports Card Account Updates for Visa, Mastercard and American Express cards.
  - `createdAt` integer, required: The Unix timestamp of when the card was created.
  - `updatedAt` integer, nullable: The Unix timestamp of when the card was last updated.

## Changes

- **2026-11-06** `8d0ca833fa04`: 2 info
  - added the new optional request property `externalCustomerReference`
  - removed the `cardholder-opted-out` enum value from the `automaticUpdates` response property for the response status `200`
- **2026-04-17** `5e1eb58d42d5`: 2 info
  - the `country` response's property pattern `^[a-z]{2}$` was removed for the status `200`
  - the `currency` response's property pattern `^[a-z]{3}$` was removed for the status `200`
- **2025-11-18** `30ea25af4354`: 3 breaking, 3 info
  - the request property `oneOf[#/components/schemas/CauAclUpdate]/updateType` became required
  - the request property `oneOf[#/components/schemas/CauNanUpdate]/updateType` became required
  - the request property `oneOf[#/components/schemas/CauNedUpdate]/updateType` became required
  - api tag `Card Account Updates` added
  - …2 more

[Operation history](https://skmtc.dev/evervault/apis/evervault-api/changes/payments/cards/:card_id/simulate/post.md)

---

[API](https://skmtc.dev/evervault/apis/evervault-api.md) - [All operations](https://skmtc.dev/evervault/apis/evervault-api/llms.txt) - [OpenAPI document](https://skmtc.dev/evervault/apis/evervault-api/revisions/8d0ca833fa04?raw)
