Med programmeringsbibliotek kan du söka efter företagardata baserat på det angivna EU-momsnumret. För närvarande finns API-bibliotek tillgängliga för följande programmeringsspråk:

  • .NET (C#, Visual Basic)
  • Java
  • JavaScript (Node.js)
  • PHP
  • Pytonorm
  • C/C++

API tillhandahåller följande funktioner:

  • getVIESData – funktion för att bekräfta aktiviteten för det EU-momsnummer som tilldelats av någon av Europeiska unionens medlemsstater,
  • getAccountStatus –funktion för att hämta aktuell information om användarkontot.

Integration

Alla bibliotek med källkoder är tillgängliga för nedladdning på Ladda ner sida. Dessutom finns källkoden för biblioteken också tillgänglig i vårt officiella arkiv på Github.

Sättet att integrera biblioteket beror på det valda programmeringsspråket. För de språk som stöder bibliotekshantering baserat på ett centralt arkiv är det möjligt att använda det.

// 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

Autentisering

För att utföra korrekt autentisering, de korrekta värdena för id och key parametrar bör tillhandahållas under konstruktionen av klientobjektet. De id parametern bör innehålla en giltig nyckelidentifierare som används för auktorisering. De key parametern bör innehålla ett giltigt värde för nyckeln som används för auktorisering. Nyckelidentifieraren och nyckeln genereras av användaren efter att ha loggat in på sitt konto på viesapi.eu portal. Processen att generera nycklar och identifierare har beskrivits i detalj ovan.

Följande exempel illustrerar hur du använder biblioteksfunktionerna:

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"

Uppmärksamhet! Den aktuella tiden för klientens dator används under autentiseringsprocessen. I händelse av autentiseringsproblem när du försöker ansluta till viesapi.eu-systemet, se därför först till att datorn eller servern från vilken anslutningen upprättas har rätt aktuell tid och tidszon. Mer information om metoden som används av viesapi.eu-systemet för att autentisera förfrågningar finns här.

Kontrollera EU-momsnummer

EU-momsnumret bekräftas genom att ringa till getVIESData() funktion, vars parameter är det EU-momsnummer som vi vill verifiera. Funktionen möjliggör verifiering av EU-momsnummer utfärdade av alla EU-medlemsstater.

Följande exempel illustrerar hur funktioner används i bibliotek:

// 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

Attributen för det returnerade objektet

Detaljerad beskrivning av returnerade attribut:

  • uid – unik frågeidentifierare genererad av viesapi.eu,
  • countryCode – landskod där det företag som är kopplat till det EU-momsnummer som anges i förfrågan är registrerat,
  • vatNumber – EU-momsnummer för det verifierade företaget som anges i förfrågan,
  • valid – svar från VIES-tjänsten, som informerar om den kontrollerade enhetens aktuella EU-momsstatus:
    • true – EU-momsnummer som anges i förfrågan är giltigt,
    • false – EU-momsnumret som anges i förfrågan är inte giltigt,
  • traderName – företagets handelsnamn,
  • traderCompanyType – returnerade alltid en sträng med "-"-tecken,
  • traderAddress – företagsadress där företaget är registrerat,
  • id – unik frågeidentifierare genererad av VIES-systemet
  • date – datum för utförande av frågan
  • source – datakälla, alltid: http://ec.europa.eu

Hämtar information om användarens kontostatus

Funktionen låter dig ladda ner all grundläggande information om användarkontot, som visas efter att du loggat in på kontot på viesapi.eu-portalen. Funktionen returnerar också information om det maximala antalet förfrågningar som är tillgängliga under den valda planen (t.ex. 5 000 för affärsplanen) och det totala antalet förfrågningar gjorda under den aktuella månaden på användarens konto.

Uppmärksamhet! Att anropa funktionen gör det inte öka antalet gjorda frågor.

Följande exempel illustrerar hur du använder biblioteksfunktionerna.

// 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

Registrera ett .NET-bibliotek som ett COM-objekt

De viesapiLibrary.dll bibliotek kan registreras i Windows-systemet som den sk COM objekt. Då kan bibliotekets funktioner refereras från många olika programmeringsspråk och färdiga applikationer, inkl. Microsoft Excel, Access, SQL Server, Dynamics eller Visual FoxPro.

För att registrera ett bibliotek som ett COM-objekt, följ dessa steg:

  1. Ladda ner .NET-bibliotek arkivera och packa upp den på en lokal disk till valfri plats.
  2. Gå till katalogen med uppackade biblioteksfiler och hitta com-register.bat fil.
  3. Välj com-register.bat fil med musen och välj Run as administrator kommandot från snabbmenyn.

Använda .NET-biblioteket i MS Excel

Funktionerna i biblioteket viesapiLibrary.dll kan användas i MS Excel-applikationen för att skriva dina egna funktioner och procedurer i Visual Basic språk. För att göra det möjligt är det nödvändigt att:

  1. Registrera de viesapiLibrary.dll bibliotek som en COM objekt på Windows.
  2. Starta Excel-applikationen. Välj DEVELOPER fliken på menyfliksområdet och klicka sedan på Visual Basic knapp.
  3. I den Visual Basic for Application fönster, välj Tools och då References från menyn. I den Available References lista, hitta och välj VIESAPI Service Client for .NET Framework (C#). Bekräfta ditt val med OK knapp.
  4. Från Insert meny, välj Module och klistra in funktionskoden som presenteras i exemplen för Visual Basic i det nya fönstret.
  5. Slutligen, lämpliga värden på w för viesapi.ID och viesapi.Key bör ställas in. Metoden för att erhålla nyckeln och åtkomstnyckeln beskrivs i kapitlet Genererar identifierare och åtkomstnyckel