# Response Codes

| Code  | Description |
|-------|-------------|
| `200` | Request Succeeded |
| `400` | Bad Request, missing or invalid parameters |
| `404` | Recipient ID or Account ID not found |

| Error Code                    | Details                                                                                                     |
|-------------------------------|-------------------------------------------------------------------------------------------------------------|
| ERR_CARD_PAV_ERROR            | Card Account Verification was unable to complete due to system error or client is not enabled. These requests can be retried. |
| ERR_CARD_PAV_BLOCKED          | Card Account Verification blocked due to too many attempts.                                               |
| ERR_CARD_PAV_FAILURE          | Card Account Verification workflow - Error raised when a full match is required. `INSTANT_FUNDING`(AFT) requires a verified account. |
| ERR_CARD_PAV_PAN_FAILURE      | Card Account Verification workflow - PAN (primary account number) is invalid.                              |
| ERR_CARD_PAV_CVV_FAILURE      | Card Account Verification workflow - CVV / Expiration Date combination is invalid.                         |

### Card Account Verification Requirements for Funding transactions

When configured for `INSTANT_FUNDING`(AFT) a card account request requires a full address for verification services. Only verified cards are eligible for funding transactions.
Including the `verification_options` object with `require_match` will apply the verified address to the Card Account and enable funding transaction services.

### Card Account Verification

Standalone Card Account Verification services are used to re-verify Name and/or Address on an existing Card Account. Our onboarding team will configure the verification services offered. Details on how to trigger error scenarios in the Test Sandbox are documented on the [Test Data](https://docs-v2.interchecks.com/docs/test-data) page in the **Test Values for Card Account Verification** section.

When verifying name, both `first_name` and `last_name` must be included in the request.

| Parameter      | Possible Values                                  |
|----------------|--------------------------------------------------|
| network        | VISA / MASTERCARD                                |
| pan            | MATCH / NO_MATCH                                 |
| cvv            | MATCH / NO_MATCH / NOT_PROCESSED / NOT_SUPPORTED |
| avs.street     | MATCH / NO_MATCH / NOT_PROCESSED / NOT_SUPPORTED |
| avs.zip       | MATCH / NO_MATCH / NOT_PROCESSED / NOT_SUPPORTED |
| ani.first_name | MATCH / PARTIAL / NO_MATCH / NOT_PROCESSED / NOT_SUPPORTED |
| ani.last_name  | MATCH / PARTIAL / NO_MATCH / NOT_PROCESSED / NOT_SUPPORTED |

**payer_id**  
string  
required  
Payer ID

**recipient_id**  
string  
required  
Recipient ID

**account_id**  
string  
required  
Account ID

**first_name**  
string  
First Name (optional)

**last_name**  
string  
Last Name (optional)

**address**  
object  
Address (optional)

**verification_options**  
object  
Verification options

### Example CURL Request
```bash
curl --request POST \
     --url https://test.api.interchecks.io/api/v2/payer_id/accounts/recipient_id/cards/account_id/verification \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '{\n  "verification_options": {\n    "require_match": false\n  }\n}'
```

### Response Examples

- `200 - Verification response for Name`
- `200 - Verification response for Address`
- `200 - Verification Response for Name & Address`
- `200 - Verification Response for Name & Address with required match`
