VIES Check Vat: C# Client Example

1. Overview

You can verify the validity of a VAT number issued by any Member State by the European Information Exchange System (VIES) system for validation of VAT numbers. For more information on this service please visit VIES VAT number validation

The VIES has publicly exposed this service through the SOAP protocol. The service is called checkVatService and the WSDL document is located at the following address WSDL checkVatService.

This C# project implements a simple SOAP client to use the VIES services. You can found this project on VIESCheckVatService repository.

 

2. Project details

The project is divided into two sub-projects:

  • VIESCheckVatService : Contains the SOAP proxy class and some interfaces and classes of boundary.
  • VIESCheckVatServiceClient : It contains a simple Windows application that uses the service via the VIES SOAP client.

Figure 1 shows the classes and interfaces created to interact with the service. In detail:

  • IVIESCheckVatService : Generically defines the interface for interaction with the services VIES.
  • VIESCheckVatServicesSOAPImpl : Class that implements the interface defined above. This class is specific to interact via SOAP.
  • VIESCheckServiceFactory : Factory class that returns the correct implementation of the client that interacts with the services VIES. The implementation is supported SOAP.
  • VIESVatModel : This class represents the set of data returned by the service VIES.
Figure 1. Class Diagram of the VIESCheckVatService

Figure 1. Class Diagram of the VIESCheckVatService

 

Please find below an example of C # code that shows the use of the VIES service.

 

Source Code 1. Example C# client code that use VIES service

 

Figure 2. Validation VAT number OK

Figure 2. Validation VAT number OK

 

Figure 3. Validation VAT number FAILED

Figure 3. Validation VAT number FAILED

 

Figure 4. Validation VAT number field required

Figure 4. Validation VAT number field required

 

Figure 5. Validation VAT number

Figure 5. Validation VAT number

 

Figure 6. Validation VAT number FAILED for SOAP Fault

Figure 6. Validation VAT number FAILED for SOAP Fault

 

The following figures show the windows application (available in the project) that interacts with the VIES service.  FAILED for network problems  The project was developed using the SharpDevelop tool (version 4.4). In addition, the project has been tested and run on the platform. NET 4.

 

3. Notes

To use the service you are invited to read the document Specific disclaimer for this service issued by the European Commission.

 

4. Resources

Antonio Musarra

I began my journey into the world of computing from an Olivetti M24 PC (http://it.wikipedia.org/wiki/Olivetti_M24) bought by my father for his work. Day after day, quickly taking control until … Now doing business consulting for projects in the enterprise application development using web-oriented technologies such as J2EE, Web Services, ESB, TIBCO, PHP.

You may also like...

Cos'è il progetto CIE/CNS Apache Docker - Developers Italia

In questo video https://youtu.be/TcAzn1POhsM introdurrò il progetto CIE/CNS Apache Docker di Developers Italia (https://developers.italia.it/it/cie/#resourcecontent-3) nato circa due anni fa.

L'obiettivo di questo progetto è quello di fornire un template pronto all'uso che realizza un sistema di autenticazione tramite la Smart Card TS-CNS (o CNS) e la CIE (Carta d'Identità Elettronica) basato su Apache HTTP. Ognuno può poi modificare o specializzare questo progetto sulla base delle proprie esigenze Si tratta di un progetto docker per la creazione di un container che implementa un sistema di mutua autenticazione o autenticazione bilaterale SSL/TLS.

Questo meccanismo di autenticazione richiede anche il certificato digitale da parte del client, certificato che in questo caso risiede all'interno della TS-CNS o della CIE. La particolarità del sistema implementato (attraverso questo container) è quella di consentire l'autenticazione tramite:

  • La TS-CNS (Tessera Sanitaria - Carta Nazionale Servizi), rilasciata dalla regione di appartenenza;
  • La CIE (Carta d'Identità Elettronica), rilasciata dal comune di residenza.

Nella versione 2.0.0 il progetto è stato aggiornato per essere uniforme alle linee guida di Bootstrap Italia. A seguire alcune risorse che possono essere utili.

  • Cos’è il progetto CIE/CNS Apache Docker (http://bit.ly/3aJ5Gbl)
  • CIE Carta d'Identità Elettronica (https://developers.italia.it/it/cie/)
  • Carta Nazionale dei Servizi (https://www.agid.gov.it/it/piattaforme/carta-nazionale-servizi)
  • Raspberry Pi – Un esempio di applicazione della TS-CNS (https://bit.ly/3hkJ8Aj)
  • Pubblicare il servizio CIE/CNS Apache Docker su Azure Cloud (http://bit.ly/3aPoq8V)
  • Come accedere al portale VETINFO tramite TS-CNS e Mac OS (http://bit.ly/2VFMKq7)