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.
- C#
- C/C++
- Java
- JavaScript
- PHP
- Python
- 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
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:
- C#
- C/C++
- Java
- JavaScript
- PHP
- Python
- 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"
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:
- C#
- C/C++
- Java
- JavaScript
- PHP
- Python
- 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
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 wirddate
– Ausführungsdatum abfragensource
– 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.
- C#
- C/C++
- Java
- JavaScript
- PHP
- Python
- 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
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:
- Laden Sie die herunter .NET-Bibliothek archivieren und auf einer lokalen Festplatte an einem beliebigen Ort entpacken.
- Gehen Sie in das Verzeichnis mit den entpackten Bibliotheksdateien und suchen Sie die
com-register.bat
Datei. - Wähle aus
com-register.bat
Datei mit der Maus und wählen Sie dieRun 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:
- Registrieren das
viesapiLibrary.dll
Bibliothek alsCOM
Objekt anWindows
. - Starten Sie die Excel-Anwendung. Wähle aus
DEVELOPER
Registerkarte in der Multifunktionsleiste und klicken Sie dann aufVisual Basic
Taste. - In dem
Visual Basic for Application
Fenster auswählenTools
und dannReferences
aus dem Menü. In demAvailable References
auflisten, suchen und auswählenVIESAPI Service Client for .NET Framework (C#)
. Bestätigen Sie Ihre Auswahl mitOK
Taste. - Von dem
Insert
Menü, wählenModule
und fügen Sie den in den Beispielen für Visual Basic vorgestellten Funktionscode in das neue Fenster ein. - Schließlich geeignete Werte von w für
viesapi.ID
undviesapi.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