Le biblioteche di programmazione consentono di cercare i dati degli imprenditori in base al numero di partita IVA UE inserito. Attualmente, le librerie API sono disponibili per i seguenti linguaggi di programmazione:
- .NET (C#, Visual Basic)
- Giava
- JavaScript (Node.js)
- PHP
- Pitone
- C/C++
L'API fornisce le seguenti funzionalità:
getVIESData
– funzione per confermare l'attività della partita IVA UE assegnata da uno qualsiasi degli Stati membri dell'Unione Europea,getAccountStatus
–funzione per recuperare informazioni aggiornate sull'account utente.
Integrazione
Tutte le librerie con i codici sorgente sono disponibili per il download su Scarica pagina. Inoltre, il codice sorgente per le librerie è disponibile anche nel nostro repository ufficiale su Github.
La modalità di integrazione della libreria dipende dal linguaggio di programmazione selezionato. Per quei linguaggi che supportano la gestione delle librerie basata su un repository centrale, è possibile utilizzarlo.
- C#
- C/C++
- Giava
- JavaScript
- PHP
- Pitone
- Visual Basic
// NuGet Gallery
// https://www.nuget.org/packages/VIESAPI.VIESAPIClient
PM> Install-Package VIESAPI.VIESAPIClient
// No central repository support
// Maven
// https://viesapi.eu/maven/
<repository>
<id>viesapi</id>
<url>https://viesapi.eu/maven/releases</url>
</repository>
<dependency>
<groupId>eu.viesapi</groupId>
<artifactId>viesapi-client</artifactId>
<version>1.2.6</version>
</dependency>
// NPM
// https://www.npmjs.com/package/viesapi-client
npm install viesapi-client
// Packagist (Composer)
// https://packagist.org/packages/viesapi/client
composer require viesapi/client
# No central repository support
pip install viesapi-python-client-1.2.6.zip
' No central repository support
Autenticazione
Al fine di eseguire la corretta autenticazione, i valori corretti del id
e key
i parametri devono essere forniti durante la costruzione dell'oggetto client. Il id
il parametro deve contenere un identificatore di chiave valido utilizzato per l'autorizzazione. Il key
parametro deve contenere un valore valido della chiave utilizzata per l'autorizzazione. L'identificatore della chiave e la chiave vengono generati dall'utente dopo aver effettuato l'accesso al proprio account su viesapi.eu
portale. Il processo di generazione delle chiavi e degli identificatori è stato dettagliato in precedenza.
L'esempio seguente illustra come utilizzare le funzioni della libreria:
- C#
- C/C++
- Giava
- JavaScript
- PHP
- Pitone
- Visual Basic
using viesapiLibrary.dll;
// Create the service client object
// id - a string representing the API key identifier
// key - a string representing the API key
VIESAPIClient viesapi = new VIESAPIClient("id", "key");
#include "viesapi.h"
// Create the service client object
// id - a string representing the API key identifier
// key - a string representing the API key
VIESAPIClient* viesapi = NULL;
viesapi_new_prod(&viesapi, "id", "key");
import pl.viesapi.client.*;
// Create the service client object
// id - a string representing the API key identifier
// key - a string representing the API key
VIESAPIClient viesapi = new VIESAPIClient("id", "key");
var VIESAPI = require('viesapiclient');
// Create the service client object
// id - a string representing the API key identifier
// key - a string representing the API key
var viesapi = new VIESAPI.VIESAPIClient('id', 'key');
require_once 'VIESAPI/VIESAPIClient.php';
\VIESAPI\VIESAPIClient::registerAutoloader();
// Create the service client object
// id - a string representing the API key identifier
// key - a string representing the API key
$viesapi = new \VIESAPI\VIESAPIClient('id', 'key');
from viesapi import *
from pprint import pprint
// Create the service client object
// id - a string representing the API key identifier
// key - a string representing the API key
viesapi = VIESAPIClient('id', 'key')
' Create the service client object
' id - a string representing the API key identifier
' key - a string representing the API key
Dim viesapi As New VIESAPIClient
viesapi.URL = "https://www.viesapi.eu/api"
viesapi.Id = "id"
viesapi.Key = "key"
Attenzione! L'ora corrente del computer del client viene utilizzata durante il processo di autenticazione. Pertanto, in caso di problemi di autenticazione durante il tentativo di connessione al sistema viesapi.eu, assicurarsi innanzitutto che il computer o il server da cui viene stabilita la connessione abbia l'ora e il fuso orario correnti corretti. Ulteriori informazioni sul metodo utilizzato dal sistema viesapi.eu per autenticare le richieste sono disponibili qui.
Controllo delle partite IVA UE
La partita IVA UE viene confermata chiamando il getVIESData()
funzione, il cui parametro è la partita IVA UE che si vuole verificare. La funzione consente la verifica delle partite IVA UE rilasciate da tutti gli stati membri dell'Unione Europea.
L'esempio seguente illustra come vengono utilizzate le funzioni nelle librerie:
- C#
- C/C++
- Giava
- JavaScript
- PHP
- Pitone
- Visual Basic
// A call to a method that returns data from a VIES system
VIESData vies = viesapi.GetVIESData("PL1234567890");
if (vies != null) {
Console.WriteLine(vies);
}
else {
Console.WriteLine("Error: " + viesapi.LastError);
}
// A call to a method that returns data from a VIES system
VIESData* vies = viesapi_get_vies_data(viesapi, "PL1234567890");
if (vies != NULL) {
printf("Kraj: %s\n", vies->CountryCode);
printf("VAT ID: %s\n", vies->VATNumber);
printf("Aktywny: %d\n", vies->Valid);
}
else {
printf("Error: %s\n", viesapi_get_last_err(viesapi));
}
// A call to a method that returns data from a VIES system
VIESData vies = viesapi.getVIESData("PL1234567890");
if (vies != null) {
System.out.println(vies);
}
else {
System.out.println("Error: " + viesapi.getLastError());
}
// A call to a method that returns data from a VIES system
viesapi.getVIESData('PL1234567890').then((vies) => {
console.log(vies.toString());
}).catch((e) => {
console.log(e.message);
});
// A call to a method that returns data from a VIES system
$vies = $viesapi->get_vies_data('PL1234567890');
if ($vies) {
print_r($vies);
}
else {
echo '<p>Error: ' . $viesapi->get_last_error() . '</p>';
}
# A call to a method that returns data from a VIES system
vies = viesapi.get_vies_data('PL1234567890')
if vies:
pprint(vars(vies))
else:
print u'Error: ' + viesapi.get_last_error()
' A call to a method that returns data from a VIES system
Dim vies As VIESData
Set vies = viesapi.GetVIESData("PL1234567890")
If vies Is Nothing Then
Console.WriteLine("Error: {0}", viesapi.LastError)
Else
Console.WriteLine(vies.ToString())
End If
Gli attributi dell'oggetto restituito
Descrizione dettagliata degli attributi restituiti:
uid
– identificatore di query univoco generato da viesapi.eu,countryCode
– codice paese in cui è registrata la società associata alla partita IVA UE fornita nella richiesta,vatNumber
– Partita IVA UE della società verificata fornita nella richiesta,valid
– risposta dal servizio VIES, che informa sullo stato attuale dell'IVA UE dell'entità controllata:true
– il numero di partita IVA UE fornito nella richiesta è valido,false
– il numero di partita IVA UE fornito nella richiesta non è valido,
traderName
– nome commerciale dell'azienda,traderCompanyType
– restituiva sempre una stringa di caratteri '-',traderAddress
– indirizzo della società in cui è registrata la società,id
– identificatore univoco della query generato dal sistema VIESdate
– data di esecuzione della querysource
– fonte dati, sempre: http://ec.europa.eu
Recupero di informazioni sullo stato dell'account dell'utente
La funzione consente di scaricare tutte le informazioni di base sull'account utente, che vengono visualizzate dopo aver effettuato l'accesso all'account sul portale viesapi.eu. La funzione restituisce anche informazioni sul numero massimo di richieste disponibili nell'ambito del piano selezionato (es. 5.000 per il piano Business) e il numero totale di tutte le richieste effettuate nel mese corrente sull'account dell'utente.
Attenzione! Chiamare la funzione lo fa non aumentare il numero di interrogazioni effettuate.
L'esempio seguente illustra come utilizzare le funzioni della libreria.
- C#
- C/C++
- Giava
- JavaScript
- PHP
- Pitone
- Visual Basic
// Get current account status
AccountStatus account = viesapi.GetAccountStatus();
if (account != null) {
Console.WriteLine(account);
}
else {
Console.WriteLine("Error: " + viesapi.LastError);
}
// Get current account status
AccountStatus* account = viesapi_get_account_status(viesapi);
if (account != NULL) {
printf("Plan name: %s\n", account->BillingPlanName);
printf("Price: %.2f\n", account->SubscriptionPrice);
printf("Number of queries: %d\n", account->TotalCount);
}
else {
printf("Error: %s\n", viesapi_get_last_err(viesapi));
}
// Get current account status
AccountStatus account = viesapi.getAccountStatus();
if (account != null) {
System.out.println(account);
}
else {
System.err.println("Error: " + viesapi.getLastError());
}
// Get current account status
viesapi.getAccountStatus().then((account) => {
console.log(account.toString());
}).catch((e) => {
console.log(e.message);
});
// Get current account status
$account = $viesapi->get_account_status();
if ($account) {
echo '<p>' . print_r($account, true) . '</p>';
}
else {
echo '<p>Error: ' . $viesapi->get_last_error() . '</p>';
}
# Get current account status
account = viesapi.get_account_status()
if account:
pprint(vars(account))
else:
print u'Error: ' + viesapi.get_last_error()
'Get current account status
Dim account As AccountStatus
Set account = viesapi.GetAccountStatus()
If account Is Nothing Then
Console.WriteLine("Error: {0}", viesapi.LastError)
Else
Console.WriteLine(account.ToString())
End If
Registrazione di una libreria .NET come oggetto COM
Il viesapiLibrary.dll
la libreria può essere registrata nel sistema Windows come il cosiddetto COM
oggetto. Quindi è possibile fare riferimento alle funzioni della libreria da molti diversi linguaggi di programmazione e applicazioni già pronte, incl. Microsoft Excel, Access, SQL Server, Dynamics o Visual FoxPro.
Per registrare una libreria come oggetto COM, attenersi alla seguente procedura:
- Scarica il Libreria .NET archiviare e decomprimerlo su un disco locale in qualsiasi posizione.
- Vai alla directory con i file di libreria decompressi e trova il file
com-register.bat
file. - Seleziona il
com-register.bat
file con il mouse e selezionare ilRun as administrator
comando dal menu contestuale.
Utilizzo della libreria .NET in MS Excel
Le funzioni della libreria viesapiLibrary.dll possono essere utilizzate nell'applicazione MS Excel per scrivere le proprie funzioni e procedure nel Visual Basic
linguaggio. Per renderlo possibile è necessario:
- Registrati il
viesapiLibrary.dll
biblioteca comeCOM
oggetto suWindows
. - Avvia l'applicazione Excel. Seleziona il
DEVELOPER
scheda sulla barra multifunzione e quindi fare clic suVisual Basic
pulsante. - Nel
Visual Basic for Application
finestra, selezionaTools
poiReferences
dal menu. NelAvailable References
elenca, trova e selezionaVIESAPI Service Client for .NET Framework (C#)
. Conferma la tua selezione con ilOK
pulsante. - Dal
Insert
menu, scegliModule
e incollare il codice della funzione presentato negli esempi per Visual Basic nella nuova finestra. - Infine, valori appropriati di w per
viesapi.ID
eviesapi.Key
dovrebbe essere impostato. Il metodo per ottenere la chiave e la chiave di accesso è descritto nel capitolo Generazione dell'identificatore e della chiave di accesso