Get Preview Card Designs
This endpoint generates and returns preview card design images based on the provided financial account and card type. It allows partners and administrators to visually confirm how a payment card will appear — including front and back images in multiple sizes — before issuing it to a customer or authorized user.
The response includes design URLs for both standard and burner card variants, enabling verification of branding, layout, and design configurations prior to physical or virtual card issuance.
Endpoint
POST /api/paymentCards/design
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 you need to preview the card design associated with a specific financial account before issuing a card to a customer or subprofile. This is useful for confirming custom branding or design configurations are correct prior to committing to a physical card print or virtual card issuance. It also supports previewing burner card designs, which differ visually from standard card designs.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
financialAccountId | string | Yes | The ID of the financial account the card will be linked to. Must not be empty. |
cardType | int32 | No | Integer representing the card type. Values: 0 (default), 1, 2, 3, 4. Maps to Physical, Virtual, Burner, and other supported types. |
{
"financialAccountId": "fa_9b3c1e2d4a5f6789",
"cardType": 1
}Response
200 OK
| Field | Type | Description |
|---|---|---|
frontSideImageUrlXs | string (nullable) | URL of the front-side card image in extra-small size. |
frontSideImageUrlXl | string (nullable) | URL of the front-side card image in extra-large size. |
backSideImageUrlXl | string (nullable) | URL of the back-side card image in extra-large size. |
burnerFrontSideImageUrlXs | string (nullable) | URL of the burner card front-side image in extra-small size. |
burnerFrontSideImageUrlXl | string (nullable) | URL of the burner card front-side image in extra-large size. |
burnerBackSideImageUrlXl | string (nullable) | URL of the burner card back-side image in extra-large size. |
{
"frontSideImageUrlXs": "https://cdn.netevia.com/designs/card-front-xs.png",
"frontSideImageUrlXl": "https://cdn.netevia.com/designs/card-front-xl.png",
"backSideImageUrlXl": "https://cdn.netevia.com/designs/card-back-xl.png",
"burnerFrontSideImageUrlXs": "https://cdn.netevia.com/designs/burner-front-xs.png",
"burnerFrontSideImageUrlXl": "https://cdn.netevia.com/designs/burner-front-xl.png",
"burnerBackSideImageUrlXl": "https://cdn.netevia.com/designs/burner-back-xl.png"
}Error Codes
| Code | When it happens |
|---|---|
| 400 | Missing or invalid financialAccountId (empty string or wrong format) |
| 401 | Token missing, expired, or invalid |
| 403 | Insufficient permissions to access card designs for this account |
| 404 | No design templates found for the given financial account or card type |
| 500 | Internal server error while generating the design preview |
Common Mistakes
- Sending an empty string for
financialAccountId— the field has aminLength: 1constraint and will return a 400 error. - Omitting the
Authorizationheader or using an expired token — always refresh viaPOST /api/auth/refreshbefore the 10-minute expiry. - Assuming all image URL fields will be populated — any field may be
nullif no design is configured for that size or card variant. - Passing an unsupported integer value for
cardType— valid enum values are0,1,2,3, and4only.
Related Endpoints
POST /api/paymentCards— Issue a new payment card to a customer or authorized userGET /api/paymentCards/{cardId}— Retrieve details of an existing payment cardPOST /api/auth/v2— Obtain a Bearer token for authentication
Example
curl -X POST https://api.banking.netevia.dev/api/paymentCards/design \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"financialAccountId": "fa_9b3c1e2d4a5f6789",
"cardType": 1
}'