# Card status change

This event is triggered for the initial card status as well as any subsequent updates.

* Event type: cards#card-status-change
* Profile level subscriptions: Not Supported
* Application level subscriptions: Supported

Events may not be delivered in the order they occurred. Use data.occurred_at to reconcile the order.
See the Event ordering guide for details.

See the Webhooks guide for setup instructions, signature verification, and best practices.

Endpoint: POST cards#card-status-change

## Header parameters:

  - `X-Signature-SHA256` (string)
    RSA-SHA256 signature of the request body, Base64 encoded. Verify this against the Wise public key to ensure the request is authentic and has not been tampered with.
    Example: "t7FMhk3OARMgwqz0LJXO..."

  - `X-Delivery-Id` (string)
    Unique identifier for this webhook delivery attempt.
    Example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890"

  - `X-Test-Notification` (boolean)
    Present with the value true if this is a test notification sent to verify your callback URL during subscription setup.
    Example: true

## Request fields (application/json):

  - `body` (any) — one of (discriminator: schema_version):
    - 4.0.0:
      - `schema_version` (string)
        Version of the event schema. Determined by the schema_version on your [webhook subscription](/api-reference/webhook).
        Enum: "4.0.0"
      - `subscription_id` (string)
        ID of the webhook subscription that triggered this event.
        Example: "ABCD-1234-ABCD-1234-ABCD"
      - `event_type` (string)
        Event type identifier
        Example: "cards#card-status-change"
      - `sent_at` (string)
        Timestamp when the event was sent.
        Example: "2022-08-22T07:59:50.123Z"
      - `data` (object)
      - `data.resource` (object)
      - `data.resource.profile_id` (integer)
        ID of the profile that owns the card.
        Example: 123456
      - `data.resource.client_id` (string)
        Your api_client_id
        Example: "your-bank"
      - `data.resource.card_token` (string)
        Unique identifier of the card.
        Example: "ABCD-1234-ABCD-1234-ABCD"
      - `data.resource.type` (string)
        Resource type (always card)
        Example: "card"
      - `data.card_status` (string)
        The updated card status. Possible values:
- ACTIVE - Card is active and can be used.
- INACTIVE - Card is inactive and all transactions will be declined.
- BLOCKED - Card is blocked and cannot be reversed back to any state.
- FROZEN - Card is "blocked", but temporarily.
- PARTNER_SUSPENDED - Card is suspended by Wise temporarily due to, for example, fraud reasons.
- EXPIRED - Card is expired.
- PURGED - The cardhoder data (ex: PAN, PIN) have been purged after exceeds the retention period (555 days after the card's expiry date).
        Example: "FROZEN"
      - `data.changed_by` (string)
        The identifier of the entity that updated the card status. If changed by Wise, the value is set to internal_system,
otherwise, it is set to your api_client_id.
        Example: "internal_system"
      - `data.occurred_at` (string)
        When the card status change occurred.
        Example: "2022-08-22T07:49:50.789Z"
    - 2.0.0:
      - `schema_version` (string)
        Version of the event schema. Determined by the schema_version on your [webhook subscription](/api-reference/webhook).
        Enum: "2.0.0"
      - `subscription_id` (string)
        ID of the webhook subscription that triggered this event.
        Example: "ABCD-1234-ABCD-1234-ABCD"
      - `event_type` (string)
        Event type identifier
        Example: "cards#card-status-change"
      - `sent_at` (string)
        Timestamp when the event was sent.
        Example: "2022-08-22T07:59:50Z"
      - `data` (object)
      - `data.resource` (object)
      - `data.resource.profile_id` (integer)
        ID of the profile that owns the card.
        Example: 123456
      - `data.resource.client_id` (string)
        Your api_client_id
        Example: "your-bank"
      - `data.resource.card_token` (string)
        Unique identifier of the card.
        Example: "ABCD-1234-ABCD-1234-ABCD"
      - `data.resource.type` (string)
        Resource type (always card)
        Example: "card"
      - `data.card_status` (string)
        The updated card status. Possible values:
- ACTIVE - Card is active and can be used.
- INACTIVE - Card is inactive and all transactions will be declined.
- BLOCKED - Card is blocked and cannot be reversed back to any state.
- FROZEN - Card is "blocked", but temporarily.
- PARTNER_SUSPENDED - Card is suspended by Wise temporarily due to, for example, fraud reasons.
- EXPIRED - Card is expired.
- PURGED - The cardholder data (ex: PAN, PIN) have been purged after exceeds the retention period (555 days after the card's expiry date).
        Example: "FROZEN"
      - `data.changed_by` (string)
        The identifier of the entity that updated the card status. If changed by Wise, the value is set to internal_system,
otherwise, it is set to your api_client_id.
        Example: "internal_system"
      - `data.occurred_at` (string)
        When the card status change occurred.
        Example: "2022-08-22T07:49:50Z"

## Response 200 fields (application/json):

  - `status` (string)
    Example: "ok"


