VIES programozási könyvtárak
A programkönyvtárak lehetővé teszik a vállalkozók adatainak keresését a megadott ÁFA EU-szám alapján. Jelenleg az API-könyvtárak a következő programozási nyelvekhez érhetők el:
- .NET (C#, Visual Basic)
- Jáva
- JavaScript (Node.js)
- PHP
- Piton
- C/C++
Az API a következő szolgáltatásokat nyújtja:
getVIESData
– az Európai Unió bármely tagállama által kiadott EU adószám tevékenységének megerősítésére szolgáló funkció,getVIESDataParsed
– function to confirm the activity of the EU VAT number assigned by any of the European Union Member States and return the parsed trader address,getVIESDataAsync
– asynchronous function, which, based on the sent batch of VAT numbers, allows you to obtain the current EU VAT status and trader data,getVIESDataAsyncResult
– the function allows you to retrieve batch results based on the token returned by the getVIESDataAsync function,getAccountStatus
– function for retrieving up-to-date information about the user account,getVIESStatus
– function for retrieving up-to-date information about reference VIES system itself.
Integráció
Minden forráskóddal rendelkező könyvtár letölthető a webhelyről Letöltés oldalon. Ezen kívül a könyvtárak forráskódja is elérhető hivatalos tárhelyünkben a következő címen: Github.
A könyvtár integrálásának módja a kiválasztott programozási nyelvtől függ. Azokon a nyelveken, amelyek támogatják a központi tárhelyen alapuló könyvtárkezelést, lehetséges a használata.
- C#
- C/C++
- Jáva
- JavaScript
- PHP
- Piton
- 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.3.0</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.3.0.zip
' No central repository support
Hitelesítés
A helyes hitelesítés végrehajtásához a megfelelő értékeket a id
és key
paramétereket kell megadni az ügyfélobjektum felépítése során. Az id
paraméternek tartalmaznia kell az engedélyezéshez használt érvényes kulcsazonosítót. Az key
paraméternek tartalmaznia kell az engedélyezéshez használt kulcs érvényes értékét. A kulcsazonosítót és a kulcsot a felhasználó állítja elő, miután bejelentkezett a fiókjába viesapi.eu
portál. A kulcsok és azonosítók létrehozásának folyamatát fentebb részleteztük.
A következő példa bemutatja a könyvtári függvények használatát:
- C#
- C/C++
- Jáva
- JavaScript
- PHP
- Piton
- 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"
Figyelem! A hitelesítési folyamat során az ügyfél számítógépének aktuális ideje kerül felhasználásra. Ezért ha a viesapi.eu rendszerhez való csatlakozáskor hitelesítési problémák lépnek fel, először győződjön meg arról, hogy a számítógép vagy a szerver, amelyről a kapcsolat létrejön, a megfelelő aktuális idővel és időzónával rendelkezik. A viesapi.eu rendszer által a megkeresések hitelesítésére használt módszerről bővebb információ található itt.
EU adószámok ellenőrzése
Az EU-s adószám visszaigazolása a telefonszámon történik getVIESData
függvényt, melynek paramétere az ellenőrizni kívánt EU-s áfaszám. A funkció lehetővé teszi az Európai Unió összes tagállama által kibocsátott EU adószámok ellenőrzését.
A következő példa bemutatja a függvények használatát a könyvtárakban:
- C#
- C/C++
- Jáva
- JavaScript
- PHP
- Piton
- 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 + " (code: " + viesapi.LastErrorCode + ")");
}
// 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 (code: %d)\n", viesapi_get_last_err(viesapi), viesapi_get_last_err_code(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() + " (code: " + viesapi.getLastErrorCode() + ")");
}
// 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('Error: ' + viesapi.get_last_error() + ' (code: ' + str(viesapi.get_last_error_code()) + ')')
' 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
A visszaadott attribútumok részletes leírása:
uid
– a viesapi.eu által generált egyedi lekérdezési azonosító,countryCode
– országkód, amelyben a megkeresésben megadott EU-adószámmal összefüggő céget bejegyezték,vatNumber
– a megkeresésben megadott ellenőrzött cég EU adószáma,valid
– a VIES szolgáltatás válasza, amely tájékoztat az ellenőrzött entitás aktuális EU ÁFA státuszáról:true
– a megkeresésben megadott EU adószám érvényes,false
– a megkeresésben megadott EU adószám nem érvényes,
traderName
- a cég kereskedelmi neve,traderCompanyType
– mindig egy „-” karakterláncot adott vissza,traderAddress
- a cég címe, ahol a cég be van jegyezve,id
– a VIES rendszer által generált egyedi lekérdezési azonosító (Konzultációs szám)date
– a lekérdezés végrehajtásának dátumasource
– adatforrás, mindig: http://ec.europa.eu
EU-s áfaszámok ellenőrzése elemzett kereskedői cím és jogi forma alapján
Az EU adószámát a telefonszámon is megerősítheti getVIESDataParsed
függvényt, melynek paramétere az ellenőrizni kívánt EU-s áfaszám. Ennek a funkciónak a meghívásával az áfa-adózói státuszra vonatkozó információk mellett az elemzett kereskedői címet is megkapja.
Jegyzet! A VIES által a németországi és spanyolországi kereskedőkről visszaküldött adatok hiánya miatt a funkció igen nem tér vissza egy elemzett kereskedő cím (traderAddressComponent
) ezen országok esetében.
Fontos Jogi nyilatkozat
Az elemző funkció külső mesterséges intelligencia algoritmusokat és API-kat használ az olyan attribútumok automatikus kinyerésére, mint: város, irányítószám, utca utcaszámmal (épületszám) és házszám, így nem tudjuk garantálni az 100% megfelelő működését.
A következő példa bemutatja a függvények használatát a könyvtárakban:
- C#
- C/C++
- Jáva
- JavaScript
- PHP
- Piton
- Visual Basic
// A call to a method that returns data from a VIES system
VIESData vies = viesapi.GetVIESDataParsed("PL1234567890");
if (vies != null) {
Console.WriteLine(vies);
}
else {
Console.WriteLine("Error: " + viesapi.LastError + " (code: " + viesapi.LastErrorCode + ")");
}
// A call to a method that returns data from a VIES system
VIESData* vies = viesapi_get_vies_data_parsed(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 (code: %d)\n", viesapi_get_last_err(viesapi), viesapi_get_last_err_code(viesapi));
}
// A call to a method that returns data from a VIES system
VIESData vies = viesapi.getVIESDataParsed("PL1234567890");
if (vies != null) {
System.out.println(vies);
}
else {
System.out.println("Error: " + viesapi.getLastError() + " (code: " + viesapi.getLastErrorCode() + ")");
}
// A call to a method that returns data from a VIES system
viesapi.getVIESDataParsed('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_parsed('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_parsed('PL1234567890')
if vies:
pprint(vars(vies))
else:
print('Error: ' + viesapi.get_last_error() + ' (code: ' + str(viesapi.get_last_error_code()) + ')')
' A call to a method that returns data from a VIES system
Dim vies As VIESData
Set vies = viesapi.GetVIESDataParsed("PL1234567890")
If vies Is Nothing Then
Console.WriteLine("Error: {0}", viesapi.LastError)
Else
Console.WriteLine(vies.ToString())
End If
A visszaadott attribútumok részletes leírása:
uid
– a viesapi.eu által generált egyedi lekérdezési azonosító,countryCode
– országkód, amelyben a megkeresésben megadott EU-adószámmal összefüggő céget bejegyezték,vatNumber
– a megkeresésben megadott ellenőrzött cég EU adószáma,valid
– a VIES szolgáltatás válasza, amely tájékoztat az ellenőrzött entitás aktuális EU ÁFA státuszáról:true
– a megkeresésben megadott EU adószám érvényes,false
– a megkeresésben megadott EU adószám nem érvényes,
traderName
– cégbejegyzési név (eredeti formátum),
traderNameComponents
– az alkotóelem-csoportosulás társasági formája:name
– cégnév a kereskedőNevéből (jogi forma nélkül),legalForm
– a kereskedő neve alapján kinyert jogi forma neve (cégnév nélkül),legalFormCanonicalId
– a jogi forma szótári azonosítója,legalFromCanonicalName
– a jogi forma szótári neve,
traderCompanyType
– mindig egy „-” karakterláncot adott vissza,traderAddress
– a cég címe, ahol a céget bejegyezték (eredeti formátum),traderAddressComponent
– az alkatrészcsoport címének részletei,country
– a kereskedő országának neve a nemzeti nyelvén,postalCode
– a kereskedő címének irányítószáma,city
– a kereskedő címének városa,street
- a kereskedő címének utcaneve,streetNumber
– a kereskedő címének utcaneve, házszám,houseNumber
– a kereskedő címének megfelelő lakás-/irodai szám,other
– egyéb címadatok (körzet neve, épület neve, emeletszám stb.),id
– a VIES rendszer által generált egyedi lekérdezési azonosító (Konzultációs szám),date
- a lekérdezés végrehajtásának dátuma,source
– adatforrás, mindig: http://ec.europa.eu
jogi űrlap Kanonikus azonosító | jogi űrlap Kanonikus név | könyvtár enum neve |
0 | Ismeretlen | ISMERETLEN |
1 | Egyéni vállalkozás | EGYÉNI TULAJDONOS |
2 | Korlátolt felelősségű társaság | KORLÁTOLT FELELŐSSÉGŰ_TÁRSASÁG |
3 | Közkereseti társaság | ÁLTALÁNOS PARTNERSÉG |
4 | Részvénytársaság | KÖZÖS_RÉSZVÁLLALAT |
5 | Betéti társaság | KORLÁTOZOTT PARTNERSÉG |
6 | Korlátolt felelősségű társaság | KORLÁTOZOTT FELELŐSSÉGŰ MAGÁNSZEMÉLYES VÁLLALAT |
7 | Egyszemélyes részvénytársaság | EGYTAGOS_KÖZÖS_RÉSZVÉNYTÁRSASÁG |
8 | Egyszerű korlátolt felelősségű társaság | EGYSZERŰ_KORLÁTOZOTT_FELELŐSSÉGŰ_VÁLLALAT |
9 | Egyszemélyes korlátolt felelősségű társaság | EGYTAGÚ_KORLÁTOZOTT_FELELŐSSÉGŰ_VÁLLALAT |
10 | Egyszerűsített részvénytársaság | EGYSZERŰSÍTETT_KÖZÖS_RÉSZVÉNYTÁRSASÁG |
11 | Kisvállalat | KIS_VÁLLALAT |
12 | Korlátolt felelősségű társaság | KORLÁTOLT_RÉSZVÉNY_PARTNERSÉG |
13 | Szakmai partnerség | SZAKMAI_PARTNERSÉG |
14 | Korlátolt felelősségű társaság | KORLÁTOZOTT_FELELŐSSÉGŰ_TÁRSASÁG |
15 | Magánpartnerség | MAGÁN_PARTNERSÉG |
16 | Korlátolt felelősségű társaság Betéti társaság | KORLÁTOZOTT_FELELŐSSÉGŰ_TÁRSASÁG_KORLÁTOZOTT_PARTNERSÉG |
17 | Korlátolt felelősségű társaság Korlátolt felelősségű társaság | KORLÁTOLT_FELELŐSSÉGŰ_TÁRSASÁG_KORLÁTOLT_FELMÉRÉSŰ_KÖZÖS_RÉSZVÉNYTÁRSASÁG |
18 | Közintézmény | KÖZINTÉZMÉNY |
EU ÁFA számok kötegelt (aszinkron) ellenőrzése
getVIESDataAsync
– aszinkron funkció, amely az elküldött áfaszám köteg alapján lehetővé teszi az aktuális EU ÁFA státusz és kereskedő adatok lekérését.
Paraméterként adjon meg egy olyan EU-s áfaszámokat tartalmazó string tömböt, amelyre vonatkozóan ellenőrizni kell az EU-s áfa-adózó státuszt, és le kell tölteni a taposó adatait.
Az elküldött EU-s adószámok minimális száma 3, a maximális pedig 99.
A helyesen meghívott függvény egy tokent ad vissza, amely szükséges a kérés eredményeinek lekéréséhez. A következő példa bemutatja a függvények használatát a könyvtárakban:
- C#
- C/C++
- Jáva
- JavaScript
- PHP
- Piton
- Visual Basic
// Upload batch of VAT numbers and get their current VAT statuses and traders data
List numbers = new List {
"PL1234567890,
"DK64839576",
"CZ8475630234"
};
string token = viesapi.GetVIESDataAsync(numbers);
if (token != null) {
Console.WriteLine("Batch token: " + token);
} else {
Console.WriteLine("Error: " + viesapi.LastError + " (code: " + viesapi.LastErrorCode + ")");
}
// Upload batch of VAT numbers and get their current VAT statuses and traders data
char* numbers[] = {
"PL1234567890,
"DK64839576",
"CZ8475630234"
};
token = viesapi_get_vies_data_async(viesapi, numbers, 3);
if (token != NULL) {
printf("Batch token: %s\n", token);
} else {
printf("Error: %s (code: %d)\n", viesapi_get_last_err(viesapi), viesapi_get_last_err_code(viesapi));
}
// Upload batch of VAT numbers and get their current VAT statuses and traders data
List numbers = new ArrayList<>();
numbers.add("PL1234567890");
numbers.add("DK64839576");
numbers.add("CZ8475630234");
String token = viesapi.getVIESDataAsync(numbers);
if (token != null) {
System.out.println("Batch token: " + token);
} else {
System.out.println("Error: " + viesapi.getLastError() + " (code: " + viesapi.getLastErrorCode() + ")");
}
// Upload batch of VAT numbers and get their current VAT statuses and traders data
const numbers = [
'PL1234567890',
'DK64839576',
'CZ8475630234'
];
viesapi.getVIESDataAsync(numbers).then((token) => {
console.log('Batch token: ' + token);
}).catch((e) => {
console.log(e.message);
});
// Upload batch of VAT numbers and get their current VAT statuses and traders data
$numbers = array(
'PL1234567890',
'DK64839576',
'CZ7710043187'
);
$token = $viesapi->get_vies_data_async($numbers);
if ($token) {
echo '<pre>Batch token: ' . $token . '</pre>';
} else {
echo '<p>Error: ' . $viesapi->get_last_error() . ' (code: ' . $viesapi->get_last_error_code() . ')</p>';
}
# Upload batch of VAT numbers and get their current VAT statuses and traders data
numbers = [
'PL1234567890',
'DK64839576',
'CZ7710043187'
]
token = viesapi.get_vies_data_async(numbers)
if token:
print('Batch token: ' + token)
else:
print('Error: ' + viesapi.get_last_error() + ' (code: ' + str(viesapi.get_last_error_code()) + ')')
' Not supported yet
A függvény aszinkron jellege miatt az eredmények körülbelül 2-3 perc után lekérdezhetők. Nem számít, hogy 3 vagy 99 EU-s adószámot küldtek a kérésben.
Ha legalább egy, a kérelemben átadott EU-s adószám formátuma nem megfelelő, a rendszer „Az adószám érvénytelen” hibát ad vissza.
Az elküldött kérés eredményeinek lekéréséhez hívja a getVIESDataAsyncResult
függvényt, megadva a token értékét bemeneti paraméterként.
Fontos megjegyzés!
- A függvény a VIES rendszer által visszaadott hiba megoldásaként készült: "
The maximum number of concurrent requests has been reached
” (MS_MAX_CONCURRENT_REQ
). Javasoljuk, hogy használja kérések küldésekor Németország (DE) és Franciaország (FR), amely visszaadta a fent említett hibát. - Amíg a kérelemben elküldött összes EU-s áfaszám ellenőrzése be nem fejeződik, minden további próbálkozást elutasítunk, és a hibát kijavítjuk.
The maximum number of batch request has been reached, please re-submit your request later
“.
getVIESDataAsyncResult
– a funkció lehetővé teszi a kötegelt eredmények lekérését a által visszaadott token alapján getVIESDataAsync
funkció.
A következő példa bemutatja a függvények használatát a könyvtárakban:
- C#
- C/C++
- Jáva
- JavaScript
- PHP
- Piton
- Visual Basic
// Check batch result and download data (at production it usually takes 2-3 min for result to be ready)
BatchResult result;
while ((result = viesapi.GetVIESDataAsyncResult(token)) == null) {
if (viesapi.LastErrorCode != Error.BATCH_PROCESSING) {
Console.WriteLine("Error: " + viesapi.LastError + " (code: " + viesapi.LastErrorCode + ")");
return;
}
Console.WriteLine("Batch is still processing, waiting...");
Thread.Sleep(30000);
}
// Batch result is ready
Console.WriteLine(result);
// Check batch result and download data (at production it usually takes 2-3 min for result to be ready)
while ((result = viesapi_get_vies_data_async_result(viesapi, token)) == NULL) {
if (viesapi_get_last_err_code(viesapi) != VIESAPI_ERR_BATCH_PROCESSING) {
printf("Error: %s (code: %d)\n", viesapi_get_last_err(viesapi), viesapi_get_last_err_code(viesapi));
return;
}
printf("Batch is still processing, waiting...\n");
Sleep(30000);
}
// Batch result is ready
for (i = 0; i < result->NumbersCount; i++) {
printf("Country: %s\n", result->Numbers[i]->CountryCode);
printf("VAT ID: %s\n", result->Numbers[i]->VATNumber);
printf("Is valid: %d\n", result->Numbers[i]->Valid);
printf("\n");
}
for (i = 0; i < result->ErrorsCount; i++) {
printf("Country: %s\n", result->Errors[i]->CountryCode);
printf("VAT ID: %s\n", result->Errors[i]->VATNumber);
printf("Error: %s\n", result->Errors[i]->Error);
printf("\n");
}
// Check batch result and download data (at production it usually takes 2-3 min for result to be ready)
BatchResult result;
while ((result = viesapi.getVIESDataAsyncResult(token)) == null) {
if (viesapi.getLastErrorCode() != eu.viesapi.client.Error.BATCH_PROCESSING) {
System.out.println("Error: " + viesapi.getLastError() + " (code: " + viesapi.getLastErrorCode() + ")");
return;
}
System.out.println("Batch is still processing, waiting...");
Thread.sleep(30000);
}
// Batch result is ready
System.out.println(result);
// Check batch result and download data (at production it usually takes 2-3 min for result to be ready)
const looper = setInterval(() => {
viesapi.getVIESDataAsyncResult(token).then((result) => {
// Batch result is ready
console.log(result);
clearInterval(looper);
}).catch((e) => {
console.log(e.message);
});
}, 30000);
// Check batch result and download data (at production it usually takes 2-3 min for result to be ready)
while (($result = $viesapi->get_vies_data_async_result($token)) === false) {
if ($viesapi->get_last_error_code() !== \VIESAPI\Error::BATCH_PROCESSING) {
echo '<p>Error: ' . $viesapi->get_last_error() . ' (code: ' . $viesapi->get_last_error_code() . ')</p>';
die();
}
echo '<p>Batch is still processing, waiting...</p>';
sleep(30);
}
// Batch result is ready
echo '<pre>' . print_r($result, true) . '</pre>';
# Upload batch of VAT numbers and get their current VAT statuses and traders data
numbers = [
'PL1234567890',
'DK64839576',
'CZ7710043187'
]
token = viesapi.get_vies_data_async(numbers)
if token:
print('Batch token: ' + token)
else:
print('Error: ' + viesapi.get_last_error() + ' (code: ' + str(viesapi.get_last_error_code()) + ')')
' Not supported yet
A köteghívásban átadott minden EU-s áfaszámhoz a következőre adott válasznak megfelelő attribútumok getVIESData
függvényt adják vissza.
Információk lekérése a felhasználói fiók állapotáról
A funkció lehetővé teszi a felhasználói fiókkal kapcsolatos összes alapvető információ letöltését, amely a fiókba való bejelentkezés után jelenik meg a viesapi.eu portálon. A függvény információkat ad vissza a kiválasztott terv keretében elérhető lekérdezések maximális számáról (pl. 5000 az Üzleti tervnél), valamint az aktuális hónapban a felhasználói fiókban végrehajtott összes lekérdezés számáról.
Figyelem! Calling the function does nem növeli a lekérdezések száma.
A következő példa bemutatja a könyvtári függvények használatát.
- C#
- C/C++
- Jáva
- JavaScript
- PHP
- Piton
- 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
Retrieving information about the VIES system status
This function allows you to verify the current status of the VIES system. It returns an overall status indicating availability, as well as a list of individual member countries together with the current availability status of their national systems.
Figyelem! Calling the function does nem növeli a lekérdezések száma.
The following examples illustrates how to use the library function.
- C#
- C/C++
- Jáva
- JavaScript
- PHP
- Piton
- Visual Basic
// Get current EU VIES system status
VIESStatus viesStatus = viesapi.GetVIESStatus();
if (viesStatus != null)
{
Console.WriteLine(viesStatus);
} else {
Console.WriteLine("Error: " + viesapi.LastError + " (code: " + viesapi.LastErrorCode + ")");
}
// Get current EU VIES system status
vies_status = viesapi_get_vies_status(viesapi);
if (vies_status != NULL) {
printf("VIES is available: %s\n", vies_status->Available ? "Yes" : "No");
printf("\n");
for (i = 0; i < vies_status->CountriesCount; i++) {
printf("Country code: %s\n", vies_status->Countries[i]->CountryCode);
printf("Status: %s\n", vies_status->Countries[i]->Status);
printf("\n");
}
} else {
printf("Error: %s (code: %d)\n", viesapi_get_last_err(viesapi), viesapi_get_last_err_code(viesapi));
}
// Get current EU VIES system status
VIESStatus viesStatus = viesapi.getVIESStatus();
if (viesStatus != null) {
System.out.println(viesStatus);
} else {
System.out.println("Error: " + viesapi.getLastError() + " (code: " + viesapi.getLastErrorCode() + ")");
}
// Get current EU VIES system status
viesapi.getVIESStatus().then((vies) => {
console.log(vies.toString());
}).catch((e) => {
console.log(e.message);
});
// Get current EU VIES system status
$vies_system = $viesapi->get_vies_status();
if ($vies_system) {
echo '<pre>' . print_r($vies_system, true) . '</pre>';
} else {
echo '<p>Error: ' . $viesapi->get_last_error() . ' (code: ' . $viesapi->get_last_error_code() . ')</p>';
}
# Get current EU VIES system status
vies_status = viesapi.get_vies_status()
if vies_status:
print(vies_status)
else:
print('Error: ' + viesapi.get_last_error() + ' (code: ' + str(viesapi.get_last_error_code()) + ')')
'Get current EU VIES system status
Dim status As VIESStatus
Set status = viesapi.GetVIESStatus()
If status Is Nothing Then
Console.WriteLine("Error: {0}", viesapi.LastError)
Else
Console.WriteLine(status.ToString())
End If
.NET-könyvtár regisztrálása COM-objektumként
Az viesapiLibrary.dll
könyvtár regisztrálható a Windows rendszerben ún COM
tárgy. Ekkor számos programozási nyelvből és kész alkalmazásból hivatkozhatunk a könyvtár funkcióira, pl. Microsoft Excel, Access, SQL Server, Dynamics vagy Visual FoxPro.
Egy könyvtár COM-objektumként történő regisztrálásához kövesse az alábbi lépéseket:
- Töltse le a .NET könyvtár archiválja és csomagolja ki egy helyi lemezre tetszőleges helyre.
- Lépjen a kicsomagolt könyvtári fájlokat tartalmazó könyvtárba, és keresse meg a
com-register.bat
fájlt. - Válaszd ki a
com-register.bat
fájlt az egérrel, és válassza ki aRun as administrator
parancsot a helyi menüből.
A .NET könyvtár használata MS Excelben
A viesapiLibrary.dll könyvtár funkciói az MS Excel alkalmazásban használhatók saját függvények és eljárások írására a Visual Basic
nyelv. Ahhoz, hogy ez lehetséges legyen, szükséges:
- Regisztráció az
viesapiLibrary.dll
könyvtár, mint aCOM
tárgy beWindows
. - Indítsa el az Excel alkalmazást. Válaszd ki a
DEVELOPER
fület a szalagon, majd kattintson a gombraVisual Basic
gomb. - Ban,-ben
Visual Basic for Application
ablakban válassza kiTools
és akkorReferences
menüből. Ban,-benAvailable References
listázza, keresse meg és válassza kiVIESAPI Service Client for .NET Framework (C#)
. Erősítse meg választását a gombbalOK
gomb. - Tól
Insert
menüből válassza kiModule
és illessze be a Visual Basic példáiban bemutatott függvénykódot az új ablakba. - Végül a megfelelő w értékei
viesapi.ID
ésviesapi.Key
be kell állítani. A kulcs és a hozzáférési kulcs megszerzésének módját a fejezet ismerteti Az azonosító és a hozzáférési kulcs generálása