e-invoicing

VIES TaxId check

The VIES check validates EU VAT identification numbers using the VAT Information Exchange System (VIES).

It is accessed with TaxIdCheckTargetSystem set to VATInformationExchangeSystem.

Overview

The VAT Information Exchange System (VIES) is an online service that enables suppliers to check whether their buyers are VAT-registered in another EU member state. Cross-border supplies of goods within the EU are generally exempt from VAT in the member state of dispatch; this exemption requires that the buyer hold a valid VAT identification number in another member state. The VIES check allows suppliers to verify this as part of the invoicing process.

Northern Ireland remains within the VIES framework and uses country code XI. The UK Tax ID check follows the same process as the VIES check but queries the HMRC database instead.

Sovos uses the VIES web service method for EU checks.

Scope

The obligation to validate VAT numbers on VIES applies to taxable persons performing intra-EU supplies of goods to taxable persons established or VAT-registered in another EU member state. This requirement applies from January 1, 2020 under Council Directive 2018/1910.

Trading parties established or VAT-registered outside the EU are generally not required to perform VIES checks, as they do not perform intra-Community supplies.

Consultation numbers and caching

A successful VIES check returns a consultation number, which serves as confirmation of the validity of a VAT number at a given point in time. A consultation number is only returned when the VAT numbers of both the requester and the target entity are provided in the request.

To avoid exceeding the VIES limit of five consultation numbers per day per requester-target pair, Sovos caches the consultation number for 12 hours. Subsequent requests with the same requester-target pair within that 12-hour window return the cached consultation number rather than querying VIES again.

The consultation number is forwarded to the relevant national tax authorities and can only be used as proof in the EU member state that issued the consulted VAT number. The EU has not regulated the archive of VIES check evidence; however, storing the consultation number is recommended.

Onboarding

The only step required to get started with VIES or UK Tax ID checks is the exchange of TLS client credentials with Sovos. These credentials authenticate the hub to TWOD over HTTPS. When credentials are approaching expiry, Sovos Support issues new client TLS credentials.

Process flow

The VIES check process follows five steps. The UK Tax ID check process is identical.

  1. Taxable person transmits VAT data. The taxable person provides the VAT data to be validated to the hub.

  2. TaxIdCheck call. The hub sends a TaxIdCheck request to the Storage Service with the following required parameters:

    • TransactionId: A unique identifier for the transaction.

    • RequestTarget.CountryCode: The ISO 3166 alpha-2 country code of the entity being validated.

    • RequestTarget.TaxId: The VAT number of the entity to validate.

    • Requester.CountryCode: The country code of the requesting party.

    • Requester.TaxId: The VAT number of the requesting party.

    • TaxIdCheckTargetSystem: Set to VATInformationExchangeSystem.

    Sovos performs a syntax validation of the VAT number against the member state's specified number structure before forwarding the request. An error is returned if the syntax does not match.

    Example request:

    CODE
    <TaxIdCheckRequest
      xmlns:tac="http://www.trustweaver.com/trustarchive/common/v1"
      xmlns="http://www.trustweaver.com/trustarchive/storage/v1">
      <RequestTarget>
        <CountryCode>CountryCodeofTarget</CountryCode>
        <TaxId>TaxIdofTarget</TaxId>
      </RequestTarget>
      <Requester>
        <CountryCode>CountryCodeofRequester</CountryCode>
        <TaxId>TaxIdofRequester</TaxId>
      </Requester>
      <TaxIdCheckTargetSystem>VATInformationExchangeSystem</TaxIdCheckTargetSystem>
    </TaxIdCheckRequest>
  3. Sovos checks cache. Sovos checks whether the same requester-target validation was submitted within the past 12 hours. If a cached consultation number exists, the cached result is returned without querying VIES.

  4. Sovos forwards request to VIES or HMRC. If no cached result exists, Sovos forwards the request to the VIES web service (EU) or the HMRC platform (UK). VIES returns a unique consultation number together with the VAT validity and company information. Note that company information is not returned from VIES for Spain and Germany.

  5. Sovos returns the result. Sovos returns the consultation number, VAT validity, request information, and company information to the hub. The Status element is either Valid (the VAT number exists and belongs to a registered legal entity) or Invalid (the number is not active or is invalid).

    Example response:

    CODE
    <TaxIdCheckResult
      xmlns="http://www.trustweaver.com/trustarchive/storage/v1">
      <Status>Valid</Status>
      <CompanyInfo>
        <TraderCountryCode>CountryCodeofTarget</TraderCountryCode>
        <TraderTaxID>TaxIdofTarget</TraderTaxID>
        <RequestDate>8/12/2020 8:12:19 AM</RequestDate>
        <TraderName>TradeNameFromResponseDefinition</TraderName>
        <TraderAddress>TradeAddressFromResponseDefinition</TraderAddress>
      </CompanyInfo>
      <AdditionalInfos>
        <AdditionalInfo>
          <Key>ConsultationNumber</Key>
          <Value>AlphanumericalConsultationNumber</Value>
        </AdditionalInfo>
      </AdditionalInfos>
    </TaxIdCheckResult>
Note: The VIES service has scheduled maintenance windows during which requests for certain countries cannot be processed. Check the VIES help page for maintenance schedules by region.

Possible results and actions

The following responses are possible:

Valid

The VAT identification number is valid and belongs to a registered legal entity in the specified member state. A consultation number is returned. Treat this as one element of evidence for the VAT exemption — do not rely on it as the sole basis for applying a tax exemption.

Invalid

The VAT identification number is not active or is invalid. Contact the trading party to resolve before performing an exempt supply or claiming input VAT.

Archiving check evidence

Sovos recommends archiving the consultation number returned in the response as evidence of the check. Archiving evidence with TrustWeaver must be contracted separately.