# Produce a card

Sends the card production request to a kiosk machine. To confirm that card information has been successfully created, listen to the card-production-status-change webhook with status READY.

{% admonition type="warning" %}
Cards that were created over 60 days ago will result in a 422 error code and cannot be retried. This is due to the data being obfuscated on our side. In this case, a new card order has to be created.
{% /admonition %}

Endpoint: PUT /v3/spend/profiles/{profileId}/cards/{cardToken}/production
Security: UserToken

## Path parameters:

  - `profileId` (integer, required)
    The profile ID (personal or business) that owns the card.
    Example: 123456

  - `cardToken` (string, required)
    The unique token identifying the card.
    Example: "ca0c8154-1e14-4464-a1ce-dcea7dc3de52"

## Request fields (application/json):

  - `kioskId` (string, required)
    Identifier that specifies on which kiosk the card should be produced.
    Example: "WIS00001"

## Response 200 fields (application/json):

  - `status` (string)
    Current production status:
- READY - Card is ready for production
- IN_PROGRESS - Card is in production at the kiosk machine
- PRODUCED - Card is produced and collected. This is a final state
- PRODUCTION_ERROR - Card production failed
- REQUEST_ERROR - Card production request failed
    Enum: "READY", "IN_PROGRESS", "PRODUCED", "PRODUCTION_ERROR", "REQUEST_ERROR"

  - `kioskId` (string,null)
    Identifier that specifies which kiosk machine is producing the card. When the status is READY, this value is null.
    Example: "WIS00001"

  - `occurredAt` (string)
    Time when the card production request has been sent to the kiosk machine (ISO 8601 format).
    Example: "2024-01-01T12:24:56.121Z"

  - `errorCode` (string,null)
    Code returned when card production is not successful. Nullable.

Request errors - Returned when status is REQUEST_ERROR:
- UNKNOWN_ERROR - An error occurred on the server
- REQUEST_ALREADY_EXISTS - The request has already been submitted
- KIOSK_ID_NOT_FOUND - The kiosk ID does not exist
- CARD_TYPE_NOT_FOUND - The card type does not exist
- INVALID_FIELD_VALUE - Some field values are unexpected
- INVALID_PIN_FORMAT - The PIN does not follow ISO0 or ISO2 standard
- EMPTY_OR_NULL_FIELD_VALUE - Some required fields are empty or null
- EMPTY_OR_NULL_OR_WRONG_SIZE_FIELD_VALUE - Some required fields are empty, null, or have incorrect lengths
- CHARSET_NOT_SUPPORTED - The character set for some fields is not supported
- INVALID_FIELD_FORMAT - Some field formats are invalid
- INVALID_FIELD_ENCODING - The encoding for some fields is not expected
- CDATA_ENCODING_OR_FORMATING_ERROR - The encoding or formatting for XML text field values is incorrect
- PIN_LENGTH_ERROR - The PIN length is incorrect
- PIN_VERIFICATION_FAILED - The PIN cannot be verified because the server is unreachable
- DATA_PREPARATION_FAILED - The server failed to parse the request
- PARTIAL_DATA_RECEIVED - Only part of the expected data has been received
- NO_BRANCH_LINKED_TO_KIOSK - The kiosk has not been linked to any branch
- IMAGE_SERVER_ERROR - The image server is unreachable or failed to process the data
- PAN_ALREADY_EXISTS - The PAN already exists
- PRINTER_OR_SATELLITE_NOT_READY - The printer or satellite is not ready to start the production
- REQUEST_CREATED_BUT_NOT_STARTED - The request has been created, but production is pending until the printer or satellite is ready
- UNABLE_TO_ACCEPT_REQUEST - The system is currently busy and cannot accept new requests at this time

Production errors - Returned when status is PRODUCTION_ERROR:
- CB_NOT_AVAILABLE - Main server error: central base not available
- CB_DB_NOT_AVAILABLE - Main server error: database not available
- CB_NETWORK_NOT_AVAILABLE - Main server error: network not available
- CB_AUTHENTICATION_FAILED - Main server error: user authentication verification failed
- CB_SERVICE_NOT_ALLOWED - Main server error: the accessed service requires a higher security level
- CB_TIME - Main server error: timeout occurred on the Central Base side
- DP_NOT_AVAILABLE - Data processing error: the Data preparation module is not available
- DP_IO_ERROR - Data processing error: Input/Output error when communicating with the DP
- DP_TIMEOUT - Data processing error: timeout error
- SAT_SERVER_NOT_REACHABLE - Satellite agent error: the server is not reachable
- SAT_AUTHENTICATION_FAILED - Satellite agent error: user authentication failed on satellite
- SAT_NETWORK_NOT_AVAILABLE - Satellite agent error: the network is not available
- PRT_NOT_REACHABLE - Printer error: printer is not reachable
- PRT_SETUP_ERROR - Printer error: printer setup is incorrect
- PRT_TIMEOUT - Printer error: printer timeout
- PRT_RIBBON - Printer error: ribbon error
- PRT_LOCK_ERROR - Printer error: printer physically unlocked
- PRT_RIBBON_MISSING - Printer error: ribbon is missing
- PRT_RIBBON_ENDED - Printer error: ribbon has ended
- PRT_COVER_OPEN - Printer error: printer cover is open
- PRT_PAUSED - Printer error: printer paused
- PRD_UNEXPECTED_DATA - Production error: production data is incorrect
- PRD_FEEDER_EMPTY - Production error: feeder is empty
- PRD_FEEDER_JAM - Production error: feeder card jam
- PRD_HOPPER_FULL - Production error: hopper is full
- PRD_HOPPER_DOOR - Production error: hopper door is open
- PRD_HOPPER_JAM - Production error: hopper card jam
- PRD_MAGSTRIPE - Production error: error occurred during magstripe encoding
- PRD_SMARTCARD - Production error: error occurred during chip personalization
- PRD_EMBOSSER - Production error: error occurred during embossing
- PRD_TIMEOUT - Production error: production timeout has been reached
- PRD_REJECT_FULL - Production error: reject box is full
- PRD_SMARTCARD_CARD_NOT_IN_READER - Production error: card is not in reader
- PRD_FINAL_VALIDATION_NOK - Production error: user has rejected card production
- INV_NOT_INITIALIZED - Production error: inventory not initialized
- UNKNOWN_ERROR - Unknown error
    Example: "PIN_VERIFICATION_FAILED"

  - `description` (string,null)
    Detailed description of the error code.
    Example: "The PIN cannot be verified because the server is unreachable"

## Response 422 fields (application/json):

  - `status` (string)
    Current production status:
- READY - Card is ready for production
- IN_PROGRESS - Card is in production at the kiosk machine
- PRODUCED - Card is produced and collected. This is a final state
- PRODUCTION_ERROR - Card production failed
- REQUEST_ERROR - Card production request failed
    Enum: "READY", "IN_PROGRESS", "PRODUCED", "PRODUCTION_ERROR", "REQUEST_ERROR"

  - `kioskId` (string,null)
    Identifier that specifies which kiosk machine is producing the card. When the status is READY, this value is null.
    Example: "WIS00001"

  - `occurredAt` (string)
    Time when the card production request has been sent to the kiosk machine (ISO 8601 format).
    Example: "2024-01-01T12:24:56.121Z"

  - `errorCode` (string,null)
    Code returned when card production is not successful. Nullable.

Request errors - Returned when status is REQUEST_ERROR:
- UNKNOWN_ERROR - An error occurred on the server
- REQUEST_ALREADY_EXISTS - The request has already been submitted
- KIOSK_ID_NOT_FOUND - The kiosk ID does not exist
- CARD_TYPE_NOT_FOUND - The card type does not exist
- INVALID_FIELD_VALUE - Some field values are unexpected
- INVALID_PIN_FORMAT - The PIN does not follow ISO0 or ISO2 standard
- EMPTY_OR_NULL_FIELD_VALUE - Some required fields are empty or null
- EMPTY_OR_NULL_OR_WRONG_SIZE_FIELD_VALUE - Some required fields are empty, null, or have incorrect lengths
- CHARSET_NOT_SUPPORTED - The character set for some fields is not supported
- INVALID_FIELD_FORMAT - Some field formats are invalid
- INVALID_FIELD_ENCODING - The encoding for some fields is not expected
- CDATA_ENCODING_OR_FORMATING_ERROR - The encoding or formatting for XML text field values is incorrect
- PIN_LENGTH_ERROR - The PIN length is incorrect
- PIN_VERIFICATION_FAILED - The PIN cannot be verified because the server is unreachable
- DATA_PREPARATION_FAILED - The server failed to parse the request
- PARTIAL_DATA_RECEIVED - Only part of the expected data has been received
- NO_BRANCH_LINKED_TO_KIOSK - The kiosk has not been linked to any branch
- IMAGE_SERVER_ERROR - The image server is unreachable or failed to process the data
- PAN_ALREADY_EXISTS - The PAN already exists
- PRINTER_OR_SATELLITE_NOT_READY - The printer or satellite is not ready to start the production
- REQUEST_CREATED_BUT_NOT_STARTED - The request has been created, but production is pending until the printer or satellite is ready
- UNABLE_TO_ACCEPT_REQUEST - The system is currently busy and cannot accept new requests at this time

Production errors - Returned when status is PRODUCTION_ERROR:
- CB_NOT_AVAILABLE - Main server error: central base not available
- CB_DB_NOT_AVAILABLE - Main server error: database not available
- CB_NETWORK_NOT_AVAILABLE - Main server error: network not available
- CB_AUTHENTICATION_FAILED - Main server error: user authentication verification failed
- CB_SERVICE_NOT_ALLOWED - Main server error: the accessed service requires a higher security level
- CB_TIME - Main server error: timeout occurred on the Central Base side
- DP_NOT_AVAILABLE - Data processing error: the Data preparation module is not available
- DP_IO_ERROR - Data processing error: Input/Output error when communicating with the DP
- DP_TIMEOUT - Data processing error: timeout error
- SAT_SERVER_NOT_REACHABLE - Satellite agent error: the server is not reachable
- SAT_AUTHENTICATION_FAILED - Satellite agent error: user authentication failed on satellite
- SAT_NETWORK_NOT_AVAILABLE - Satellite agent error: the network is not available
- PRT_NOT_REACHABLE - Printer error: printer is not reachable
- PRT_SETUP_ERROR - Printer error: printer setup is incorrect
- PRT_TIMEOUT - Printer error: printer timeout
- PRT_RIBBON - Printer error: ribbon error
- PRT_LOCK_ERROR - Printer error: printer physically unlocked
- PRT_RIBBON_MISSING - Printer error: ribbon is missing
- PRT_RIBBON_ENDED - Printer error: ribbon has ended
- PRT_COVER_OPEN - Printer error: printer cover is open
- PRT_PAUSED - Printer error: printer paused
- PRD_UNEXPECTED_DATA - Production error: production data is incorrect
- PRD_FEEDER_EMPTY - Production error: feeder is empty
- PRD_FEEDER_JAM - Production error: feeder card jam
- PRD_HOPPER_FULL - Production error: hopper is full
- PRD_HOPPER_DOOR - Production error: hopper door is open
- PRD_HOPPER_JAM - Production error: hopper card jam
- PRD_MAGSTRIPE - Production error: error occurred during magstripe encoding
- PRD_SMARTCARD - Production error: error occurred during chip personalization
- PRD_EMBOSSER - Production error: error occurred during embossing
- PRD_TIMEOUT - Production error: production timeout has been reached
- PRD_REJECT_FULL - Production error: reject box is full
- PRD_SMARTCARD_CARD_NOT_IN_READER - Production error: card is not in reader
- PRD_FINAL_VALIDATION_NOK - Production error: user has rejected card production
- INV_NOT_INITIALIZED - Production error: inventory not initialized
- UNKNOWN_ERROR - Unknown error
    Example: "PIN_VERIFICATION_FAILED"

  - `description` (string,null)
    Detailed description of the error code.
    Example: "The PIN cannot be verified because the server is unreachable"


