Οι βιβλιοθήκες προγραμματισμού σάς επιτρέπουν να αναζητάτε δεδομένα επιχειρηματιών με βάση τον καταχωρημένο αριθμό ΦΠΑ ΕΕ. Επί του παρόντος, οι βιβλιοθήκες API είναι διαθέσιμες για τις ακόλουθες γλώσσες προγραμματισμού:

  • .NET (C#, Visual Basic)
  • Ιάβα
  • JavaScript (Node.js)
  • PHP
  • Πύθων
  • C/C++

Το API παρέχει τις ακόλουθες δυνατότητες:

  • getVIESData – λειτουργία επιβεβαίωσης της δραστηριότητας του ΑΦΜ ΕΕ που έχει εκχωρηθεί από οποιοδήποτε κράτος μέλος της Ευρωπαϊκής Ένωσης,
  • getAccountStatus –λειτουργία για την ανάκτηση ενημερωμένων πληροφοριών σχετικά με τον λογαριασμό χρήστη.

Ενσωμάτωση

Όλες οι βιβλιοθήκες με πηγαίους κωδικούς είναι διαθέσιμες για λήψη στο Κατεβάστε σελίδα. Επιπλέον, ο πηγαίος κώδικας για τις βιβλιοθήκες είναι επίσης διαθέσιμος στο επίσημο αποθετήριο μας στο Github.

Ο τρόπος ενσωμάτωσης της βιβλιοθήκης εξαρτάται από την επιλεγμένη γλώσσα προγραμματισμού. Για εκείνες τις γλώσσες που υποστηρίζουν τη διαχείριση βιβλιοθήκης με βάση ένα κεντρικό αποθετήριο, είναι δυνατή η χρήση του.

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

Αυθεντικοποίηση

Για να πραγματοποιηθεί ο σωστός έλεγχος ταυτότητας, οι σωστές τιμές του id και key Οι παράμετροι πρέπει να παρέχονται κατά την κατασκευή του αντικειμένου πελάτη. ο id Η παράμετρος πρέπει να περιέχει ένα έγκυρο αναγνωριστικό κλειδιού που χρησιμοποιείται για την εξουσιοδότηση. ο key Η παράμετρος πρέπει να περιέχει μια έγκυρη τιμή του κλειδιού που χρησιμοποιείται για την εξουσιοδότηση. Το αναγνωριστικό κλειδιού και το κλειδί δημιουργούνται από τον χρήστη αφού συνδεθεί στο λογαριασμό του στο viesapi.eu πύλη. Η διαδικασία δημιουργίας των κλειδιών και των αναγνωριστικών περιγράφηκε λεπτομερώς παραπάνω.

Το ακόλουθο παράδειγμα επεξηγεί τον τρόπο χρήσης των συναρτήσεων της βιβλιοθήκης:

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"

Προσοχή! Η τρέχουσα ώρα του υπολογιστή του πελάτη χρησιμοποιείται κατά τη διαδικασία ελέγχου ταυτότητας. Επομένως, σε περίπτωση προβλημάτων ελέγχου ταυτότητας κατά την προσπάθεια σύνδεσης στο σύστημα viesapi.eu, βεβαιωθείτε πρώτα ότι ο υπολογιστής ή ο διακομιστής από τον οποίο πραγματοποιείται η σύνδεση έχει τη σωστή τρέχουσα ώρα και ζώνη ώρας. Μπορείτε να βρείτε περισσότερες πληροφορίες σχετικά με τη μέθοδο που χρησιμοποιεί το σύστημα viesapi.eu για τον έλεγχο ταυτότητας των ερωτήσεων εδώ.

Έλεγχος αριθμών ΦΠΑ ΕΕ

Ο αριθμός ΦΠΑ ΕΕ επιβεβαιώνεται καλώντας το getVIESData() συνάρτηση, η παράμετρος της οποίας είναι ο ΑΦΜ ΕΕ που θέλουμε να επαληθεύσουμε. Η λειτουργία επιτρέπει την επαλήθευση των αριθμών ΦΠΑ ΕΕ που εκδίδονται από όλα τα κράτη μέλη της Ευρωπαϊκής Ένωσης.

Το ακόλουθο παράδειγμα επεξηγεί πώς χρησιμοποιούνται οι συναρτήσεις στις βιβλιοθήκες:

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

Τα χαρακτηριστικά του επιστρεφόμενου αντικειμένου

Λεπτομερής περιγραφή των επιστρεφόμενων χαρακτηριστικών:

  • uid – μοναδικό αναγνωριστικό ερωτήματος που δημιουργείται από το viesapi.eu,
  • countryCode – κωδικός χώρας στην οποία είναι εγγεγραμμένη η εταιρεία που σχετίζεται με τον ΑΦΜ της ΕΕ που παρέχεται στο αίτημα,
  • vatNumber – Αριθμός ΦΠΑ ΕΕ της επαληθευμένης εταιρείας που παρέχεται στο ερώτημα,
  • valid – απάντηση από την υπηρεσία VIES, που ενημερώνει για το τρέχον καθεστώς ΦΠΑ ΕΕ της ελεγχόμενης οντότητας:
    • true – ο ΑΦΜ ΕΕ που παρέχεται στο αίτημα είναι έγκυρος,
    • false – ο αριθμός ΦΠΑ ΕΕ που παρέχεται στο αίτημα δεν είναι έγκυρος,
  • traderName – την εμπορική επωνυμία της εταιρείας,
  • traderCompanyType – επέστρεφε πάντα μια σειρά χαρακτήρων '-',
  • traderAddress – διεύθυνση της εταιρείας στην οποία είναι εγγεγραμμένη η εταιρεία,
  • id – μοναδικό αναγνωριστικό ερωτήματος που δημιουργείται από το σύστημα VIES
  • date – ημερομηνία εκτέλεσης ερωτήματος
  • source – πηγή δεδομένων, πάντα: http://ec.europa.eu

Ανάκτηση πληροφοριών σχετικά με την κατάσταση του λογαριασμού του χρήστη

Η λειτουργία σάς επιτρέπει να κατεβάσετε όλες τις βασικές πληροφορίες σχετικά με τον λογαριασμό χρήστη, οι οποίες εμφανίζονται μετά τη σύνδεση στον λογαριασμό στην πύλη viesapi.eu. Η συνάρτηση επιστρέφει επίσης πληροφορίες σχετικά με τον μέγιστο αριθμό των διαθέσιμων ερωτημάτων στο πλαίσιο του επιλεγμένου προγράμματος (π.χ. 5.000 για το επιχειρηματικό σχέδιο) και τον συνολικό αριθμό όλων των ερωτημάτων που έγιναν τον τρέχοντα μήνα στον λογαριασμό του χρήστη.

Προσοχή! Η κλήση της συνάρτησης γίνεται να μην αυξηθεί τον αριθμό των ερωτημάτων που έγιναν.

Το ακόλουθο παράδειγμα επεξηγεί τον τρόπο χρήσης των συναρτήσεων της βιβλιοθήκης.

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

Καταχώρηση μιας βιβλιοθήκης .NET ως αντικείμενο COM

ο viesapiLibrary.dll βιβλιοθήκη μπορεί να εγγραφεί στο σύστημα των Windows ως το λεγόμενο COM αντικείμενο. Στη συνέχεια, οι λειτουργίες της βιβλιοθήκης μπορούν να αναφερθούν από πολλές διαφορετικές γλώσσες προγραμματισμού και έτοιμες εφαρμογές, συμπεριλαμβανομένων. Microsoft Excel, Access, SQL Server, Dynamics ή Visual FoxPro.

Για να καταχωρήσετε μια βιβλιοθήκη ως αντικείμενο COM, ακολουθήστε τα εξής βήματα:

  1. Κατεβάστε το Βιβλιοθήκη .NET αρχειοθετήστε και αποσυσκευάστε το σε έναν τοπικό δίσκο σε οποιαδήποτε τοποθεσία.
  2. Μεταβείτε στον κατάλογο με μη συσκευασμένα αρχεία βιβλιοθήκης και βρείτε το com-register.bat αρχείο.
  3. Επίλεξε το com-register.bat αρχείο με το ποντίκι και επιλέξτε το Run as administrator εντολή από το μενού περιβάλλοντος.

Χρήση της βιβλιοθήκης .NET στο MS Excel

Οι λειτουργίες της βιβλιοθήκης viesapiLibrary.dll μπορούν να χρησιμοποιηθούν στην εφαρμογή MS Excel για να γράψετε τις δικές σας λειτουργίες και διαδικασίες στο Visual Basic Γλώσσα. Για να καταστεί δυνατό, είναι απαραίτητο:

  1. Κανω ΕΓΓΡΑΦΗ ο viesapiLibrary.dll βιβλιοθήκη ως α COM αντικείμενο επάνω Windows.
  2. Ξεκινήστε την εφαρμογή Excel. Επίλεξε το DEVELOPER καρτέλα στην κορδέλα και, στη συνέχεια, κάντε κλικ στο Visual Basic κουμπί.
  3. Στο Visual Basic for Application παράθυρο, επιλέξτε Tools και μετά References από το μενού. Στο Available References λίστα, βρείτε και επιλέξτε VIESAPI Service Client for .NET Framework (C#). Επιβεβαιώστε την επιλογή σας με το OK κουμπί.
  4. Από το Insert μενού, επιλέξτε Module και επικολλήστε τον κώδικα συνάρτησης που παρουσιάζεται στα παραδείγματα της Visual Basic στο νέο παράθυρο.
  5. Τέλος, κατάλληλες τιμές του w για viesapi.ID και viesapi.Key πρέπει να οριστεί. Η μέθοδος απόκτησης του κλειδιού και του κλειδιού πρόσβασης περιγράφεται στο κεφάλαιο Δημιουργία του αναγνωριστικού και του κλειδιού πρόσβασης