Programmierbibliotheken ermöglichen es Ihnen, anhand der eingegebenen EU-Umsatzsteuernummer nach Unternehmerdaten zu suchen. Derzeit sind API-Bibliotheken für die folgenden Programmiersprachen verfügbar:

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

API bietet die folgenden Funktionen:

  • getVIESData – Funktion zur Bestätigung der Aktivität der EU-Umsatzsteuernummer, die von einem der Mitgliedstaaten der Europäischen Union vergeben wurde,
  • getAccountStatus –Funktion zum Abrufen aktueller Informationen über das Benutzerkonto.

Integration

Alle Bibliotheken mit Quellcodes stehen zum Download auf der zur Verfügung Download Seite. Darüber hinaus ist der Quellcode für die Bibliotheken auch in unserem offiziellen Repository verfügbar GitHub.

Die Art der Einbindung der Bibliothek hängt von der gewählten Programmiersprache ab. Für die Sprachen, die die Bibliotheksverwaltung auf der Grundlage eines zentralen Repositorys unterstützen, ist es möglich, sie zu verwenden.

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

Authentifizierung

Um die korrekte Authentifizierung durchzuführen, müssen die korrekten Werte der id und key Parameter sollten während der Erstellung des Client-Objekts bereitgestellt werden. Das id -Parameter sollte eine gültige Schlüsselkennung enthalten, die für die Autorisierung verwendet wird. Das key Der Parameter sollte einen gültigen Wert des für die Autorisierung verwendeten Schlüssels enthalten. Die Schlüsselkennung und der Schlüssel werden vom Benutzer nach dem Einloggen in sein Konto auf der generiert viesapi.eu Portal. Der Prozess zum Generieren der Schlüssel und Identifikatoren wurde oben detailliert beschrieben.

Das folgende Beispiel veranschaulicht die Verwendung der Bibliotheksfunktionen:

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"

Aufmerksamkeit! Während des Authentifizierungsprozesses wird die aktuelle Uhrzeit des Computers des Clients verwendet. Stellen Sie daher im Falle von Authentifizierungsproblemen beim Versuch, sich mit dem viesapi.eu-System zu verbinden, zunächst sicher, dass der Computer oder Server, von dem aus die Verbindung hergestellt wird, die richtige aktuelle Uhrzeit und Zeitzone hat. Weitere Informationen über die vom viesapi.eu-System verwendete Methode zur Authentifizierung von Anfragen finden Sie hier hier.

Überprüfung der EU-Umsatzsteuernummern

Die Bestätigung der EU-Umsatzsteuer-Identifikationsnummer erfolgt durch einen Anruf bei der getVIESData() Funktion, deren Parameter die EU-Umsatzsteuernummer ist, die wir überprüfen möchten. Die Funktion ermöglicht die Überprüfung von EU-Umsatzsteuernummern, die von allen Mitgliedsstaaten der Europäischen Union ausgestellt wurden.

Das folgende Beispiel veranschaulicht, wie Funktionen in Bibliotheken verwendet werden:

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

Die Attribute des zurückgegebenen Objekts

Detaillierte Beschreibung der zurückgegebenen Attribute:

  • uid – eindeutige Abfrage-ID, generiert von viesapi.eu,
  • countryCode – Ländercode, in dem das Unternehmen registriert ist, das mit der in der Anfrage angegebenen EU-Umsatzsteuernummer verknüpft ist,
  • vatNumber – EU-Umsatzsteuernummer des in der Anfrage angegebenen verifizierten Unternehmens,
  • valid – Antwort des MIAS-Dienstes, die über den aktuellen EU-Mehrwertsteuerstatus des überprüften Unternehmens informiert:
    • true – die in der Anfrage angegebene EU-Umsatzsteuernummer ist gültig,
    • false – die in der Anfrage angegebene EU-Umsatzsteuer-Identifikationsnummer ist ungültig,
  • traderName – Handelsname des Unternehmens,
  • traderCompanyType – gab immer eine Zeichenfolge mit „-“-Zeichen zurück,
  • traderAddress – Firmenadresse, an der das Unternehmen eingetragen ist,
  • id – eindeutige Abfrage-ID, die vom VIES-System generiert wird
  • date – Ausführungsdatum abfragen
  • source – Datenquelle, immer: http://ec.europa.eu

Abrufen von Informationen über den Kontostatus des Benutzers

Die Funktion ermöglicht es Ihnen, alle grundlegenden Informationen zum Benutzerkonto herunterzuladen, die nach dem Einloggen in das Konto auf dem Portal viesapi.eu angezeigt werden. Die Funktion liefert auch Informationen über die maximale Anzahl der Abfragen, die im ausgewählten Tarif verfügbar sind (z. B. 5.000 für den Business-Tarif) und die Gesamtzahl aller Abfragen, die im aktuellen Monat auf dem Konto des Benutzers getätigt wurden.

Aufmerksamkeit! Der Aufruf der Funktion tut es nicht erhöhen die Anzahl der gestellten Anfragen.

Das folgende Beispiel veranschaulicht die Verwendung der Bibliotheksfunktionen.

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

Registrieren einer .NET-Bibliothek als COM-Objekt

Die viesapiLibrary.dll Bibliothek kann im Windows-System als sog. registriert werden COM Objekt. Dann können die Funktionen der Bibliothek aus vielen verschiedenen Programmiersprachen und vorgefertigten Anwendungen referenziert werden, inkl. Microsoft Excel, Access, SQL Server, Dynamics oder Visual FoxPro.

Gehen Sie folgendermaßen vor, um eine Bibliothek als COM-Objekt zu registrieren:

  1. Laden Sie die herunter .NET-Bibliothek archivieren und auf einer lokalen Festplatte an einem beliebigen Ort entpacken.
  2. Gehen Sie in das Verzeichnis mit den entpackten Bibliotheksdateien und suchen Sie die com-register.bat Datei.
  3. Wähle aus com-register.bat Datei mit der Maus und wählen Sie die Run as administrator Befehl aus dem Kontextmenü.

Verwendung der .NET-Bibliothek in MS Excel

Die Funktionen der Bibliothek viesapiLibrary.dll können in der MS Excel-Anwendung verwendet werden, um eigene Funktionen und Prozeduren in die zu schreiben Visual Basic Sprache. Um dies zu ermöglichen, ist Folgendes erforderlich:

  1. Registrieren das viesapiLibrary.dll Bibliothek als COM Objekt an Windows.
  2. Starten Sie die Excel-Anwendung. Wähle aus DEVELOPER Registerkarte in der Multifunktionsleiste und klicken Sie dann auf Visual Basic Taste.
  3. In dem Visual Basic for Application Fenster auswählen Tools und dann References aus dem Menü. In dem Available References auflisten, suchen und auswählen VIESAPI Service Client for .NET Framework (C#). Bestätigen Sie Ihre Auswahl mit OK Taste.
  4. Von dem Insert Menü, wählen Module und fügen Sie den in den Beispielen für Visual Basic vorgestellten Funktionscode in das neue Fenster ein.
  5. Schließlich geeignete Werte von w für viesapi.ID und viesapi.Key sollte eingestellt werden. Die Methode zum Erhalt des Schlüssels und des Zugangsschlüssels ist im Kapitel beschrieben Generieren der Kennung und des Zugangsschlüssels