Integrated Vertex Validator

You can also use Vertex Validator as part of Vertex for e-Commerce, Vertex Advantage Plus or Taxamo Assure.

For this type of deployment, you use the same API requests that you use for the rest of your integration. To integrate it, you use the buyer_tax_number field.

Process Flow

The following diagram shows a simplified example process flow with the Store transaction and Confirm transaction requests. This example uses Vertex for e-Commerce but it could also be Vertex Advantage Plus or Taxamo Assure by Vertex.

Integrated Validator Processing

Integrated Validator Processing

The steps are as follows:

  1. A Tax ID is sent to Vertex for e-Commerce in the buyer_tax_number field in a Store transaction request.
  2. The Tax ID is vaidated.
  3. The Store Transaction contains a transaction_key field that is later used to confirm the transaction. as well as information about the validation.
  4. The key is returned in Confirm transaction request. The invoice is sent.
  5. The transaction is confirmed and invoice is sent.

API Integration

You can validate a Tax ID as part of a transaction using the Store transaction request.

For example, the following JSON specifies an ID from a business based in the Czech Republic in the "buyer_tax_number": "CZ12345678" field.

{
  "transaction": {
    "buyer_name": "John Smith",
    "currency_code": "EUR",
    "status":"N",
    "transaction_lines": [
      {
        "custom_id": "Test",
        "amount": 100,
        "quantity": 1
      }
    ],
    "buyer_tax_number": "CZ12345678",
    "order_date": null,
    "billing_country_code": "CZ",
    "force_country_code": "CZ"
  }
}

Transaction Processing

If the Tax ID is not valid, the system behavior can differ depending on your country settings and your Tax ID Cache settings. Sometimes, it can reject the transaction. In some cases, it can treat the transaction as a Business-to-Customer (B2C) transaction. See VAT Status Cache

Addresses

If the Tax ID is valid, the service might return the address of the business as per the authority's records. For example:

"invoice_address": {
    "freeform_address": "Prague St. 314",
    "country": "CZ"
}

This value overwrites the value that is used in the following fields:

  • transaction.invoice_address
  • transaction.invoice_address.freeform_address
  • transaction.invoice_address.country
  • transaction.buyer_name

Redacted Responses

In some cases, the tax authority does not reveal this information so it may not be returned. In these responses, the tax authority can redact specific information. See Redacted Responses.