Create a new, active virtual card and link it to a reference with the given bearer details.
IMPORTANT:
This API method contains PCI sensitive information.
- Session-Id="Encrypted" AES Key e-g (AB521456236KHU52) is required for encryption of sensitive data.
You can read more on how our Secure API’s work here.
Request Path Parameters
| Parameter | type | Limits | required | Description |
|---|---|---|---|---|
| terminalID | String | 10 characters | ✓ | The Paymentology issued terminal id of the terminal requesting the transaction |
| reference | String | 1-255 characters | ✓ | The user defined reference to the card. For example: a member id or wallet number |
| firstName | String | 0-50 characters | ✓ | The first name of the card bearer. Field is required but can accept empty string |
| lastName | String | 0-50 characters | ✓ | The last name of the card bearer. Field is required but can accept empty string |
| idOrPassport | String | 0-20 characters | ✓ | The id or passport number of the card bearer. Field is required but can accept empty string. |
| cellphoneNumber | String | 0-20 characters | ✓ | The cellphone number of the card bearer. Field is required but can accept empty string. |
| expiryDate | Date | ✓ | The date at which the virtual card is set to expire. Note: Should be encrypted in the request. Before encryption it should be in this format yyyy-mm-ddTHH:mm:ss based on ISO8601 | |
| IV | String | ✓ | The initialization vector (IV) used to initialize the encryption/decryption algorithm. If no encryption is applicable for your project, do not include this parameter in your request. Note: This parameter is only required for Companion API v2.2, and it requires a different endpoint. | |
| transactionID | String | 1-255 characters | ✓ | a unique identifier generated by the client, which must not be duplicated over time. |
| transactionDate | Date | ✓ | Client generated / local Transaction Date to assist in identifying transactions on the client side | |
| checksum | String | ✓ | HMAC-SHA256 hashed signature of the concatenated method name with all argument values using the terminal password as private key |
<?xml version="1.0"?>
<methodCall>
<methodName>CreateLinkedCard</methodName>
<params>
<param>
<value>
<string>0092998153</string>
</value>
</param>
<param>
<value>
<string>105232700000440</string>
</value>
</param>
<param>
<value>
<string>Jhon</string>
</value>
</param>
<param>
<value>
<string>Foo</string>
</value>
</param>
<param>
<value>
<string>id123</string>
</value>
</param>
<param>
<value>
<string>0924769387</string>
</value>
</param>
<param>
<value>
<dateTime.iso8601>2029-09-01T00:00:00</dateTime.iso8601>
</value>
</param>
<param>
<value>
<string>e1ad2ce7-14b2-4f73-9d41-aaccd768521c</string>
</value>
</param>
<param>
<value>
<dateTime.iso8601>20241028T11:27:58</dateTime.iso8601>
</value>
</param>
<param>
<value>
<string>2179242073DE2A5DAE99B98212277F87D3D0E413</string>
</value>
</param>
</params>
</methodCall>Response Parameters
| Field | type | Description |
|---|---|---|
| cvv2 | String | Generated CVV2 for the created card (Masked or encrypted depending upon configuration) |
| resultCode | Integer | Status code indicating transaction result |
| cardNumber | String | Generated PAN for the created card (Masked or encrypted depending upon configuration) |
| resultText | String | Text indicating transaction result. |
| validDate | String | String representation of the valid date as MM/YY as expected by web forms when doing online payments |
| expiryDate | Date | The expiry date of the created card |
| trackingNumber | String | Generated tracking number for the created card |
| IV | String | The initialization vector used to initialize the encryption/decryption algorithm. |
<methodResponse>
<params>
<param>
<value>
<struct>
<member>
<name>cvv2</name>
<value>
<string>DHF67G</string>
</value>
</member>
<member>
<name>resultCode</name>
<value>
<int>1</int>
</value>
</member>
<member>
<name>cardNumber</name>
<value>
<string>AGT67094GY453HNJGY524JUNDREW</string>
</value>
</member>
<member>
<name>resultText</name>
<value>
<string>Approved</string>
</value>
</member>
<member>
<name>validDate</name>
<value>
<string>06/22</string>
</value>
</member>
<member>
<name>expiryDate</name>
<value>
<string>AHY9076TG54GT6ED4SW88</string>
</value>
</member>
<member>
<name>trackingNumber</name>
<value>
<string>689348400002066</string>
</value>
</member>
<member>
<name>IV</name>
<value>
<string>GHT67KMJ983UJGB678TGEW</string>
</value>
</member>
</struct>
</value>
</param>
</params>
</methodResponse>