Request For Conversion
SaaS apps can request conversion of a virtual card to a physical card for their customers. All endpoints require a valid accessToken and follow the encryption & header rules of the platform.
POST{baseUrl}/pcs/api/v1/virtual-to-physical
Payload
| Attribute | Type | Required | Description |
|---|---|---|---|
| cardId | Integer | Yes | The card identifier specifying which card needs to be converted. |
| addressId | Integer | Conditional | Delivery address ID. Either addressId or address object is required. |
| address | Object | Conditional | Delivery address object. Either addressId or address is required. |
| address.country | String (ISO Alpha-3) | Conditional | Country code (e.g., PAK). |
| address.state | String | Conditional | State/Province. |
| address.city | String | Conditional | City. |
| address.addressLine1 | String | Conditional | Address line 1. |
| address.postalCode | String | Conditional | Postal/ZIP code. |
| address.longitude | String | Conditional | Longitude (decimal). |
| address.latitude | String | Conditional | Latitude (decimal). |
Request Example
{
"cardId": 25,
"address": {
"country": "PAK",
"state": "Punjab",
"city": "RWP",
"addressLine1": "line 1 address",
"postalCode": "44000",
"longitude": "127.45",
"latitude": "716.70"
}
}Response
| Field | Type | Description |
|---|---|---|
| id | Integer | Card ID. |
| userId | Integer | Owner user ID. |
| cardIssuerConfigId | Integer | Card issuer config ID. |
| userProfile | Object | Basic profile of the cardholder. |
| _3dSecure | Object | 3DS configuration/details (if available). |
| account | Object | Linked account details. |
| cardTier | Object | Card tier flags. |
| manufacturing | Object | Manufacturing details. |
| delivery | Object | Delivery details. |
| paymentCardType | Enum | e.g., DEBIT. |
| cardNetwork | Enum | e.g., MASTERCARD. |
| cardType | Enum | PHYSICAL or VIRTUAL. |
| billingCurrency | String | Billing currency code. |
| embossName | String | Emboss/holder name. |
| lastFourDigits | String | Last four digits of card. |
| token | Integer | Card token. |
| tokenFlags | String | Token flags bitmask. |
| pinSet | Boolean | Whether PIN is set. |
| status | Enum | ACTIVE. |
| cardConversionStatus | String | APPROVED / REJECTED / REQUESTED. |
| cardText | String | Human-readable action text. |
| cardCategory | Enum | e.g., STANDARD. |
| consumerType | Enum | e.g., CONSUMER. |
| maxPurchaseLimit | Number | Max purchase limit. |
| statusReason | String | Reason for current status. |
| cardHolderName | String | Cardholder full name. |
| cardTokens | Array | Linked tokens. |
| processedAtThirdParty | Boolean | Whether processed at third party. |
| createdAt / updatedAt | String | Timestamps (ISO 8601). |
200 — SUCCESS
{
"data": {
"id": 25,
"userId": 5,
"cardIssuerConfigId": 1,
"userProfile": {
"id": 421,
"pronounTitle": "Mr",
"firstName": "khalid",
"lastName": "raza",
"email": "test.user.com",
"countryCode": "92",
"phone": "33059511111",
"language": "ENGLISH"
},
"_3dSecure": { "id": 876, "configId": 9, "status": false },
"account": {
"id": 36,
"accountId": 10,
"userId": 5,
"accountType": "DIGITAL",
"currencyCode": "AED",
"accountTitle": "DEFAULT USER DIGITAL AED",
"accountNumber": "1000648060000040",
"iban": "AE680961000648060000040"
},
"cardTier": {
"id": 1,
"title": "PMT Mastercard - DEBIT",
"description": "You can create mastercard debit cards using this product",
"enableLimits": true,
"enableFraudRules": false
},
"manufacturing": { "id": 219, "configId": 2, "status": "PENDING" },
"delivery": {
"id": 219,
"configId": 3,
"status": "PENDING",
"address": {
"id": 319,
"country": "PAK",
"state": "Punjab",
"city": "RWP",
"addressLine1": "line 1 address",
"type": "MAILING",
"postalCode": "44000",
"longitude": "127.45",
"latitude": "716.70"
}
},
"paymentCardType": "DEBIT",
"cardNetwork": "MASTERCARD",
"cardType": "PHYSICAL",
"billingCurrency": "AED",
"embossName": "KHALID",
"lastFourDigits": "5844",
"token": 335446928,
"tokenFlags": "00010000000000000000000000000000",
"pinSet": false,
"status": "ACTIVE",
"cardConversionStatus": "REQUESTED",
"cardText": "Your card is active",
"maxPurchaseLimit": 100,
"statusReason": "Virtual Card request was approved automatically by the system without agent or admin intervention",
"cardCategory": "STANDARD",
"consumerType": "CONSUMER",
"reportedCards": [],
"processedAtThirdParty": true,
"apiCallUniqueIdentifier": "750a2def-3a4f-4de9-bfff-6deb11cc7d57",
"createdAt": "2025-10-24T07:12:26.407+00:00",
"updatedAt": "2025-10-24T07:28:59.046+00:00",
"cardHolderName": "sardar adil",
"cardTokens": []
}
}