How Integration with Vertex Works
For tax calculation, Vertex requires the information about the location of the seller, the location of the buyer, the kind of product or service being sold, and the purchase amount. With each request, CloudBlue Commerce sends the location of the buyer, the amount of transaction, and the product code that informs Vertex about precisely what is being sold. Vertex has information about the seller and their location (in Vertex account properties).
Some buyers are exempt from tax liability (for example, charities and resellers); a seller should not collect taxes from them. Such buyers should provide a so-called "tax exemption certificate" to prove their exemption from taxation to the seller. In CloudBlue Commerce, such accounts are not specially marked as not liable to tax; only Vertex has information which accounts are exempt. The Vertex UI enables administrators to enter the information that an account owner has provided the "tax exemption certificate". For Vertex to be able to match the buyer information that comes in a particular request from CloudBlue Commerce with the buyer marked as exempt in Vertex database, both systems use a common identifier. Therefore, CloudBlue Commerce sends an account identifier, and Vertex looks up the received identifier in its database for the certificate. CloudBlue Commerce can use either an Account ID or a custom account attribute as such an identifier. The latter is required if a provider has to identify the exempt accounts in a separate system using a different identifier. For example, a provider might want to mark all its resellers using some custom attribute.
The tax calculation process consists of the following:
- The connection between CloudBlue Commerce and Vertex is established using an account preliminarily registered in Vertex. Vertex account credentials are stored in Billing database.
- The requests for tax calculations are sent to Vertex during store browsing, order placement, and invoice generation.
- In each request to Vertex, Billing sends the required data for tax calculation as shown in the scheme below. The system generates one request per document (in a request, separate lines are passed separately).
- Vertex performs tax calculation and returns tax amounts to Billing. The failed requests to Vertex are written in a log file.
How Addresses are Validated
Whenever customers enter or change their address, Billing validates it through a special API call to Vertex. If the address is invalid, a warning message is displayed. However, the system allows you to proceed with an invalid address. Customer address fields used in Vertex taxation calls are validated on entry if the corresponding tax zone (regardless of tax category) is taxed through Vertex.
Billing checks if all the required address fields are filled correctly in the online store/PCP/RCP/CCP. The address validation is performed on order placement, customer account creation within a tax zone that is configured to be calculated through Vertex, and editing address information. The required address parameters are:
- Country
- Postal code
- State
- City
- Address line 1