Approve Provisioning
Following the Tokenization Initiation and the acceptance of the Terms and Conditions by the Customer, the Network will request approval from CLOWD9.
CLOWD9 will carry out further card validation steps based on the:
- Primary Account Number status.
- CVV2 and Expiry.
- Risk criteria as per your configurations.
Following these checks, CLOWD9 will respond with one of three responses based on the risk criteria configured as follows:
- Approved (reason code 00): This will result in the token creation in an inactive status via the Network, known as the Green Flow. Further verification is not required and the next step will be Token Activation.
- Require Additional Authentication (response code 85): The Network will progressing with the token creation in an inactive status; however further Customer Verification will be required. This is known as the Yellow Flow and will require Cardholder Verification methods to be provided as per the next step.
- Declined (response code will depend on the reason for the Decline): As a result of the decline, the Customer will not be able to tokenize their card. They will be required to re-start the process.
Where you are involved in the Approve Provisioning Request, CLOWD9 decision only applies if no decision is received from you.
Request
| Field | Description | Format | Example |
|---|---|---|---|
| cardholder_info | |||
| high_value_customer | Indicates if the Customer is a high-value customer: true false | boolean | false |
| risk_assessment_score | Risk assessment score for the customer. Values are 0 - 9. | string | 0 |
| created_datetime | The DPAY date and time creation | integer | 1754313056 |
| decisions | |||
| action | The outcome of the Provisioning request: 00 - APPROVED (Green Flow ) 85 - REQUIRE_ADDITIONAL_AUTHENTICATION (Yellow Flow ) 05 - DECLINED (Red Flow) | string | APPROVED |
| avs | The outcome of the AVS check: M = Address matches N =Address does not match, P = not provided empty = not provided | string | M |
| cvv2 | The outcome of the CVV2 validation: M =CVV2 matches N =CVV2 does not match P = not provided empty = not provided | string | M |
| risk | |||
| account_score | Under development | ||
| device_score | Under development | ||
| entry_mode | Under development | ||
| device | |||
| identifier | The Identifier associated to the device provided by the Network | 7VnCWhDb98QXaHFNbx75e0z9 | |
| index | The index provided by the Network. | string | 0 |
| name | The name associated to the device | string | ZGVmYXVsdA.. |
| os_type | Identifies the device OS type | string | |
| os_version | Identifies the device OS version | string | |
| location | Under development | ||
| time_zone | Under development | ||
| brand | Under development | ||
| type | Under development | ||
| life_cycle_trace_id | Network trace ID for lifecycle tracking | string | 305216474470842 |
| pan_entry_mode | Method used to enter the PAN during tokenization: KEY_ENTERED | string | KEY_ENTERED |
| token_info | |||
| card_id | Identifier associated to the card being tokenized. | UUID | 3d0229b5-8330-4c62-be60-d8a5ba2f605d |
| client_id | The Identifier associated to the card. | UUID | 82d890aa-f083-4359-a1c8-5cd483ba40e8 |
| network | The network associated with the BIN and card_id
| string | visa |
| pan_reference_id | The Network identifier associated to the PAN. | string | V-3025197339880335891989 |
| previous_status | empty in Approve Provisioning context. | string | |
| status | inactive_ in Approve Provisioning context. | string | inactive |
| token_reference_id | The Network identifier associated to the Token. | string | DNITHE302521033484727131 |
Example
Approve provisioning example request
{
"cardholder_info": {
"high_value_customer": false,
"risk_assessment_score": "9"
},
"created_datetime": "1754313056",
"decisions": {
"action": "85",
"avs": "",
"cvv2": "M"
},
"risk": {
"account_score": "5",
"device_score": "5",
"entry_mode": "Unknown"
},
"device": {
"identifier": "7VnCWhDb98QXaHFNbx75e0z9",
"index": "0",
"name": "ZGVmYXVsdA..",
"os_type": "",
"os_version": "",
"location": "+1.42/+103.84",
"time_zone": "Asia",
"brand": "SAMSUNG",
"type": "MOBILE_PHONE"
},
"life_cycle_trace_id": "305216474470842",
"pan_entry_mode": "KEY_ENTERED",
"token_info": {
"card_id": "47277b0d-2aa6-48ab-a2f5-7a5dababf2f8",
"client_id": "82d890aa-f083-4359-a1c8-5cd483ba40e8",
"network": "visa",
"pan_reference_id": "V-3025197339880335891989",
"previous_status": "",
"status": "inactive",
"token_reference_id": "DNITHE302521033484727131"
}
}
Expected Response
Respond with 200, that message was received. The response will need a body and will need to be valid JSON, for example as below.
Example 1: Approved
{
"action": "00",
"card_id": "47277b0d-2aa6-48ab-a2f5-7a5dababf2f8",
"token_reference_id": "DNITHE302521033484727131"
}
Example 2: Require Additional Authentication
{
"action": "85",
"card_id": "47277b0d-2aa6-48ab-a2f5-7a5dababf2f8",
"token_reference_id": "DNITHE302521033484727131"
}
Your Customer will be required to succesfully complete authentication before they can use their device.
Example 3: Declined
{
"action": "05",
"card_id": "47277b0d-2aa6-48ab-a2f5-7a5dababf2f8",
"token_reference_id": "DNITHE302521033484727131"
}Updated 14 days ago