# Card order status change

This event is triggered every time a card order status is updated. Statuses depend on the type of card (virtual/physical). Additional statuses related to delivery exist for physical cards.
* Event type: `cards#card-order-status-change`
* Profile level subscriptions: Not Supported
* Application level subscriptions: Supported

**Available card order statuses**:
The initial card order status is `PLACED` or `REQUIREMENTS_FULFILLED` depending on the requirement fulfillment state. The possible values are:
- `PLACED`: The card order is created. The card will be generated once it has fulfilled all the requirements.
- `REQUIREMENTS_FULFILLED`: The card order has fulfilled all the requirements and the card should be generated in a short while.
- `CARD_DETAILS_CREATED`: The card has been generated.
- `PRODUCED`: The physical card has been produced and is waiting to be picked up by delivery vendor (physical card only).
- `COMPLETED`: The card has been activated and is ready to use. The card order is completed.
- `CANCELLED`: The card order has been cancelled. This can happen if you contact Wise Support to cancel a card order.
- `RETURNED`: Delivery failed. The physical card has been returned and will be blocked (physical card only).

Events may not be delivered in the order they occurred. Use `data.occurred_at` to reconcile the order.
See the [Event ordering guide](/guides/developer/webhooks/event-ordering) for details.
See the [Webhooks guide](/guides/developer/webhooks) for setup instructions, signature verification, and best practices.

Endpoint: POST cards#card-order-status-change

## Header parameters:

  - `X-Signature-SHA256` (string)
    RSA-SHA256 signature of the request body, Base64 encoded. Verify this against the [Wise public key](/guides/developer/webhooks/event-handling#requests) to ensure the request is authentic and has not been tampered with.

  - `X-Delivery-Id` (string)
    Unique identifier for this webhook delivery attempt.

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

## Request fields (application/json):

  - `schema_version` (string)
    Version of the event schema. Determined by the `schema_version` on your [webhook subscription](/api-reference/legacy/webhook).
    Enum: "4.0.0"

  - `subscription_id` (string)
    ID of the webhook subscription that triggered this event.
    Example: 01234567-89ab-cdef-0123-456789abcdef

  - `event_type` (string)
    Event type identifier
    Example: cards#card-order-status-change

  - `sent_at` (string)
    Timestamp when the event was sent.
    Example: 2023-01-01T12:34:56.123Z

  - `data` (object)

  - `data.resource` (object)

  - `data.resource.profile_id` (integer)
    ID of the profile that owns the card.
    Example: 123456

  - `data.resource.type` (string)
    Webhook notification of type 'card'.
    Example: card

  - `data.resource.client_id` (string)
    API `client_id`
    Example: your-bank

  - `data.resource.card_token` (string | null)
    Unique identifier of the card.
    Example: 35050a4a-9521-426e-8109-1396e3687a3e

  - `data.resource.card_program` (string)
    The card program associated with this card order. A card program is how Wise refers to all the cards you will be issuing with us, grouped by product type and issuing country.
    Example: VISA_DEBIT_CONSUMER_UK_1_PHYSICAL_CARDS_API

  - `data.order_id` (string)
    Card order ID associated with the status change.
    Example: 1001L

  - `data.order_status` (string)
    Updated card order status
    Enum: "PLACED", "REQUIREMENTS_FULFILLED", "CARD_DETAILS_CREATED", "PRODUCED", "COMPLETED", "CANCELLED", "RETURNED"

  - `data.delivery_vendor` (string | null)
    Delivery vendor used to dispatch the order (physical card only).
    Example: DHL

  - `data.occurred_at` (string)
    When the card order status change occurred.
    Example: 2023-01-01T12:24:56.789Z

## Response 200 fields (application/json):

  - `status` (string)
    Example: ok

