ALVIERE Tokenization API
This section outlines the endpoints related to our tokenization service. ### Card Tokenization Process When a card is added to our system through our tokenization service, we perform multiple tests before encrypting and storing the card details with the highest PCI standards. The following flow needs to be respected at all times: 1. Add a card to the system using the create token API. All card information needs to be submitted to add a card. 2. Check the CVV results section. Invalid CVVs will result in unusable cards. 3. Make sure the AVS results are acceptable for your business scenario, and if not, notify your user that the card could not be added. 4. When successful, all information gathered and generated to validate the card is returned together with the newly created token. 5. Make sure you store this token securely. This is the only way to reference this card in the future and to perform all card-related operations. Cards could have the following statuses: | Status | Description | |--------|-------------| | **CREATED** | The Card was created in the system and is currently being validated. | | **ACTIVE** | The Card is active and can be used for transactions. | | **REJECTED** | The Card has been rejected. | | **FAILED** | This is the status when a Card is failed in the system. | | **EXPIRED** | This is the status when a Card is expired in the system. | | **DELETED** | This is the status when a Card is deleted in the system. | #### Card Validations In order to complete the validation, the following checks are performed for all cards: - **BIN Check:** We retrieve card details such as issuing country, card brand (Visa, Mastercard, Discover, etc...) and card type (credit, debit, prepaid, etc...). Although this information is retrieved based on a reliable BIN database, this information is subject to constant changes by the network, regulators and other parties, so if you have any limitations as per the types of cards your service should accept, make sure you validate this information regularly. - **AVS Check:** This Address Verification System (AVS) check is used to verify the card data, such as billing address and ZIP code, against the supported card network’s billing information of the cardholder. This validation may have various results, depending on the provided information. Please see the AVS Match Responses documentation below for more details. - **CVV Check:** This check verifies that the security code (CVV) submitted by the customer matches the security code associated with the card. See documentation below for the CVV Check Response Codes. - **$0 Authorization:** This standard network card verification process ensures that the card is fully operational. It does not show up in the account holder’s statement and does not need any void or refund operation. If you are using Alviere’s tokenization services, this transaction is done automatically when you add a card to the system, and will perform CVV and AVS checks for you. #### Card Failures If a card fails any of the validation checks above, the response will remain “201 CREATED” and the response payload will contain the information regarding the results and the main reason for the failure. You may access this information at any time. Please note that the cards remain encrypted and stored in our system as per compliance regulations. If a card validation check fails, and you wish to retry (eg. the customer has missed the CVV), you can issue a new create card request with the correct parameters, and a new tokenization of this card will be returned to you with an updated validation status. #### AVS Match Response codes | Code | Visa | MasterCard | Discover | |------|------|------------|----------| | **Y** | Address & 5-digit or 9-digit ZIP match | Address & 5-digit ZIP match | Address only matches | | **A** | Address matches, ZIP does not | Address matches, ZIP does not | Address & 5-digit ZIP match | | **S** | AVS not supported | AVS not supported | AVS not supported | | **R** | System unavailable, retry | System unavailable, retry | Not applicable | | **U** | Information not available | Information not available | System unavailable, retry | | **Z** | Either 5-digit or 9-digit ZIP match, address does not | 5-digit ZIP matches, address does not | 5-digit ZIP matches, address does not | | **N** | Neither ZIP nor address match | Neither ZIP nor address match | Neither ZIP nor address match | | **W** | Not applicable | For U.S., 9-digit ZIP matches, address does not. | For non-U.S., ZIP matches, address does not | | **X** | Not applicable | For U.S., all digits match. | For non-U.S., ZIP and address match. | | **B** | Address matches, ZIP not verified | Not applicable | Not applicable | | **T** | Not applicable | Not applicable | 9-digit ZIP matches, address does not | | **P** | ZIP matches, address not verified | Not applicable | Not applicable | | **C** | Address and ZIP not verified | Not applicable | Not applicable | | **D** | Address & ZIP match (International only) | Not applicable | Not applicable | | **G** | Address not verified for International transaction (International only) | Not applicable | Not applicable | | **I** | Address not verified (International only) | Not applicable | Not applicable | | **M** | Address & ZIP match (International only) | Not applicable | Not applicable | | **F** | Address & ZIP match (UK only) | Not applicable | Not applicable | #### CVV Match Response codes When tokenizing a card the response will contain the status code of the CVV validation. The following codes are returned: | Code | Description | |------|-------------| | **M** | Match | | **N** | No Match | | **P** | Not Processed | | **S** | Not Supported | | **U** | Service Not Available | | **X** | No CVC/CVV/CVV2/CID Response Data Available | | (empty) | No CVC/CVV/CVV2/CID Response Data Available | ### Bank Account Tokenization In order to process ACH transactions in the Alviere platform, you need to, first, create an account, and then refer to the account through its unique token, moving forward. **Note**: ACH Credit transactions are only supported when tokenized with Alviere's partner Plaid; for this purpose, a Bank Account needs to be added through the bank tokenization process. Bank Accounts could have the following statuses: | Status | Description | |--------|-------------| | **CREATED** | The Bank Account was created in the system and is currently being validated. This status occurs only when a Plaid Token has been provided. | **ACTIVE** | The Bank Account is active and can be used for transactions. | | **REJECTED** | The Bank Account has been rejected. This usually happens because an account did not pass the identity match process through Plaid. | | **FAILED** | This is the status when a Bank Account is failed in the system. | **DELETED** | This is the status when a Bank Account is deleted in the system. |