Card

Replace card

PATCH/issuing/cards/{card_id}/replace

Replace a card and automatically deactivate the original. The response contains the new replacement card; retrieve the original card to see its deactivation_reason and replacement_card_id.

Requested reason
PAN
Original card's recorded reason
Original card's tokens
lost, stolen, fraud, voluntary
New PAN
Requested reason
Deactivated
damaged
Reused
damaged
Deactivated
expired
Reused
renewed
Deactivated

All non-terminal tokens on the original card are deactivated for every replacement reason, including when the PAN is reused. Reusing the PAN increments sequence_number. An expired replacement records renewed as the reason, but does not preserve tokens. The separate renew endpoint migrates tokens when the renewal card is activated. renewed and account_closed are not valid replacement request reasons and return HTTP 400. A card can't be replaced as damaged or expired if any card with the same PAN was deactivated as lost, stolen, or fraud.

Path Parameters

card_id

stringRequired

Unique identifier for the card.

Body Parameters

deactivation_reason

enumRequired

Reason for deactivating the original card during replacement. lost, stolen, fraud, and voluntary requests create a replacement with a new PAN. damaged requests reuse the PAN. expired requests are processed as renewal-style replacements with the same PAN and a new expiration, and the original card's reason is recorded as renewed. All non-terminal card tokens on the original card are deactivated for every reason. renewed and account_closed are not accepted by this endpoint. Possible values: lost, stolen, fraud, expired, voluntary, damaged

encrypted_pin

stringOptional

Debit card programs only. Base64-encoded encrypted PIN for the replacement card. expired and damaged replacements reuse the PAN, so omitting this keeps the original card's PIN; pass SKIP to create the replacement without a PIN instead. A carried-over PIN starts unblocked, with no wrong attempts counted, even if the original card's PIN was blocked. lost, stolen, fraud, and voluntary replacements get a new PAN, which the original PIN can't carry over to, so omitting this creates the replacement without a PIN. A card without a PIN has pin_status set to unset, and transactions that require a PIN decline with pin_not_set until you set one with PATCH /issuing/cards/\{card_id\}/pin. To have Column choose a new PIN instead, omit this and pass generate_pin. Treat an encrypted PIN like the PIN itself: never log, store, or reuse it.

expiration_month

integerOptional

Optional expiration month (1-12)

expiration_year

integerOptional

Optional expiration year (4-digit year, e.g. 2025)

generate_pin

booleanOptional

Debit card programs with PIN reveal enabled only. Pass true to have Column set a new random 4-digit PIN on the replacement card instead of keeping the original card's PIN or providing encrypted_pin, which must then be omitted. The PIN is never returned in the response; the cardholder learns it through PIN reveal.

status

stringOptional

Optional status for the replacement card