Payment Card Reissue
This endpoint reissues an existing payment card, generating a replacement card with a new expiration date. You can optionally carry over the original card number and PIN to the reissued card, and configure whether the card is activated immediately upon creation. Use this endpoint when a card is lost, damaged, or approaching expiration and needs to be replaced.
Deprecated: This endpoint is marked as deprecated. Check the latest API reference for the recommended replacement endpoint.
Endpoint
POST /api/paymentCards/reissuePaymentCard
Authentication
Bearer token required. Obtain via:
POST https://api.banking.netevia.dev/api/auth/v2
Include in header: Authorization: Bearer {token}
Token lifetime: 10 minutes. Refresh via POST /api/auth/refresh.
When to use
Use this endpoint when a cardholder's payment card has been lost, damaged, or is expiring and a replacement card must be issued. This is applicable for both physical and virtual card types managed on the Netevia platform. If you need to preserve the existing card number (for continuity of recurring payments), set copyNumber to true.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
paymentCardId | string | Yes | The unique identifier of the existing payment card to be reissued. Minimum length: 1. |
expirationDate | string (date-time) | Yes | The expiration date to assign to the reissued card (ISO 8601 format). |
activateOnCreate | boolean | No | If true, the reissued card is automatically activated upon creation. Defaults to false. |
copyNumber | boolean | No | If true, the reissued card retains the same card number as the original. Useful for preserving recurring payment setups. |
copyPin | boolean | No | If true, the reissued card retains the same PIN as the original card. |
{
"paymentCardId": "card_a1b2c3d4e5f6g7h8",
"expirationDate": "2028-06-30T00:00:00Z",
"activateOnCreate": true,
"copyNumber": false,
"copyPin": false
}Response
200 OK
The response wraps the reissued card details along with a mutation result indicating any errors.
paymentCard object:
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier of the reissued payment card. |
last4 | string | Last 4 digits of the reissued card number. |
bin | string | Bank Identification Number (BIN) of the card. |
status | string | Current status of the reissued card (e.g., ACTIVE, INACTIVE). |
formFactor | string | Card form factor: PHYSICAL, VIRTUAL, or BURNER. |
network | string | Card network (e.g., VISA, MASTERCARD). |
expirationDate | string (date-time) | Expiration date assigned to the reissued card. |
subProfileId | integer | ID of the subprofile (authorized user) associated with the card, if applicable. |
name | string | Display name associated with the card. |
errors | array | List of error objects if the mutation encountered validation issues. |
mutationResult object:
| Field | Type | Description |
|---|---|---|
errors | array | List of error objects returned by the mutation layer. Each error includes path, code, and description. |
errors[] object (within paymentCard or mutationResult):
| Field | Type | Description |
|---|---|---|
path | array of strings | JSON path to the field that caused the error. |
code | string | Machine-readable error code. |
description | string | Human-readable description of the error. |
{
"paymentCard": {
"id": "card_z9y8x7w6v5u4t3s2",
"last4": "XXXX",
"bin": "411111",
"status": "ACTIVE",
"formFactor": "PHYSICAL",
"network": "VISA",
"expirationDate": "2028-06-30T00:00:00Z",
"subProfileId": null,
"name": "Jane Smith",
"errors": null
},
"mutationResult": {
"errors": null
}
}Error Codes
| Code | When it happens |
|---|---|
| 400 | Missing required fields (paymentCardId or expirationDate) or validation error on input values |
| 401 | Token missing, expired, or invalid |
| 403 | Insufficient permissions to reissue the specified card |
| 404 | Payment card with the given paymentCardId not found |
| 500 | Internal server error |
Common Mistakes
- Omitting
expirationDate— this field is required; the request will fail with a 400 error if not provided. - Providing a
paymentCardIdthat belongs to a card not associated with the authenticated partner's customers, resulting in a 403 or 404 response. - Supplying
expirationDatein a non-ISO 8601 format (e.g.,MM/YYYYinstead of2028-06-30T00:00:00Z), which causes a 400 validation error. - Setting
copyNumber: truewithout confirming that the original card's network and BIN support number portability for reissued cards. - Expecting the original card to remain active after reissue — verify card lifecycle behavior and cancel or close the original card as needed.
Related Endpoints
POST /api/paymentCards/createPaymentCard— Create a new payment card for a customerPOST /api/paymentCards/activatePaymentCard— Activate a payment card that was created in an inactive statePOST /api/paymentCards/cancelPaymentCard— Cancel or close an existing payment cardGET /api/paymentCards/getPaymentCard— Retrieve details of a specific payment card
Example
curl -X POST https://api.banking.netevia.dev/api/paymentCards/reissuePaymentCard \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"paymentCardId": "card_a1b2c3d4e5f6g7h8",
"expirationDate": "2028-06-30T00:00:00Z",
"activateOnCreate": true,
"copyNumber": false,
"copyPin": false
}'