v1

latestOpenAPI 3.1.0Copyright Pismo2026-07-247702,7523.1 MB
Card validity

Renew card validity

Renew a card's validity period in hours.

Renewal can be done for VIRTUAL cards and activated PLASTIC cards that were created or reissued with the validity_period_hours field set to a defined value greater than zero.

When a card reaches its valid_until date, the card's status is set to INOPERATIVE. When this happens, a Card updated event is generated.

For existing cards that never had validity_period_hours defined, you can do it through this endpoint.

When the card is renewed:

  • A new valid_until date is calculated and a Card updated event is generated with operation type = CARD_VALIDITY_RENEWAL.

  • If the card's status is INOPERATIVE, the status changes to NORMAL.

  • If the card's status is NORMAL, REISSUED, BLOCKED, PENDING or WARNING, the status remains the same.

Note: This endpoint requires an account token - an access token encoded with a Pismo account ID. Tokens can expire quickly, which can result in a 401 Unauthorized error message.

patch/wallet/v2/cards/{cardId}/validity/renew

Path parameters

cardIdstring required

Pismo card ID

Request body

validity_period_hoursinteger required

Sets a card's validity period in hours. Cannot exceed the card's expiration_date.

<b>REQUIRED</b> for a PLASTIC or VIRUTUAL card.

Example request

{
  "validity_period_hours": 48
}

Response

Card validity period was renewed

idinteger

ID of card to create relationship for

status'ACTIVE' | 'SUSPENDED' | 'PENDING'

Card status

validity_period_hoursinteger

How long, in hours, the card is valid. Cannot exceed the card's expiration_date. Once this period is exceeded, and the card has a NORMAL, BLOCKED, PENDING, WARNING or REISSUED status, its status becomes INOPERATIVE.

This field is used to calculate the datetime value for valid_until.

For VIRTUAL and PLASTIC cards. Setting this field for TEMPORARY or RECURRING cards returns a 400 Bad request error.

valid_untilstring

Card validation date in UTC time (format:yyyy-MM-ddThh:mm:ssZ). For TEMPORARY virtual cards, which have a limited time frame, typically 24 hours (default), or according to the program parameter for this, which is why the date/time here is more granular than expiration_date.

For more information, refer to Configuring temporary cards.

Example response

{
  "id": 6743052,
  "status": "ACTIVE",
  "validity_period_hours": 240,
  "valid_until": "2021-07-03T17:23:18Z"
}