Integrated Vertex Validator

You can also use Vertex Validator as part of Vertex Advantage, 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 Advantage but it could also be Vertex Advantage Plus or Taxamo Assure.

The steps are as follows:

  1. A Tax ID is sent to Vertex Advantage 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. See Store transaction.

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

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

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.