As bibliotecas de programação permitem pesquisar dados de empreendedores com base no número de IVA da UE inserido. Atualmente, as bibliotecas de API estão disponíveis para as seguintes linguagens de programação:

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

A API fornece os seguintes recursos:

  • getVIESData – função para confirmar a atividade do número de IVA da UE atribuído por qualquer um dos Estados-Membros da União Europeia,
  • getAccountStatus –função para recuperar informações atualizadas sobre a conta do usuário.

Integração

Todas as bibliotecas com códigos-fonte estão disponíveis para download no site Download página. Além disso, o código fonte das bibliotecas também está disponível em nosso repositório oficial em Github.

A forma de integração da biblioteca depende da linguagem de programação selecionada. Para as linguagens que suportam o gerenciamento de bibliotecas com base em um repositório central, é possível usá-lo.

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

Autenticação

Para realizar a autenticação correta, os valores corretos do id e key parâmetros devem ser fornecidos durante a construção do objeto cliente. o id O parâmetro deve conter um identificador de chave válido usado para autorização. o key O parâmetro deve conter um valor válido da chave usada para autorização. O identificador de chave e a chave são gerados pelo usuário após fazer login em sua conta no viesapi.eu portal. O processo de geração das chaves e identificadores foi detalhado acima.

O exemplo a seguir ilustra como usar as funções da biblioteca:

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"

Atenção! A hora atual do computador do cliente é usada durante o processo de autenticação. Portanto, em caso de problemas de autenticação ao tentar se conectar ao sistema viesapi.eu, primeiro certifique-se de que o computador ou servidor a partir do qual a conexão é estabelecida tenha a hora e o fuso horário atuais corretos. Mais informações sobre o método usado pelo sistema viesapi.eu para autenticar consultas podem ser encontradas aqui.

Verificando os números de IVA da UE

O número de IVA da UE é confirmado ligando para o getVIESData() função, cujo parâmetro é o número de IVA da UE que queremos verificar. A função permite a verificação de números de IVA da UE emitidos por todos os estados membros da União Europeia.

O exemplo a seguir ilustra como as funções são usadas em bibliotecas:

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

Os atributos do objeto retornado

Descrição detalhada dos atributos retornados:

  • uid – identificador de consulta exclusivo gerado por viesapi.eu,
  • countryCode – código do país em que a empresa associada ao número de IVA da UE fornecido na consulta está registrada,
  • vatNumber – Número de IVA da UE da empresa verificada fornecida no inquérito,
  • valid – resposta do serviço VIES, informando sobre o atual status de IVA da UE da entidade verificada:
    • true – o número de IVA da UE fornecido no inquérito é válido,
    • false – o número de IVA da UE fornecido no inquérito não é válido,
  • traderName – nome comercial da empresa,
  • traderCompanyType – sempre retornou uma string de caracteres '-',
  • traderAddress – endereço da empresa onde a empresa está registrada,
  • id – identificador de consulta exclusivo gerado pelo sistema VIES
  • date – data de execução da consulta
  • source – fonte de dados, sempre: http://ec.europa.eu

Recuperando informações sobre o status da conta do usuário

A função permite que você baixe todas as informações básicas sobre a conta do usuário, que são exibidas após o login na conta no portal viesapi.eu. A função também retorna informações sobre o número máximo de consultas disponíveis no plano selecionado (por exemplo, 5.000 para o plano Business) e o número total de todas as consultas feitas no mês atual na conta do usuário.

Atenção! Chamar a função faz não aumentar o número de consultas feitas.

O exemplo a seguir ilustra como usar as funções de biblioteca.

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

Registrando uma biblioteca .NET como um objeto COM

o viesapiLibrary.dll biblioteca pode ser registrada no sistema Windows como o chamado COM objeto. Em seguida, as funções da biblioteca podem ser referenciadas a partir de muitas linguagens de programação diferentes e aplicativos prontos, incl. Microsoft Excel, Access, SQL Server, Dynamics ou Visual FoxPro.

Para registrar uma biblioteca como um objeto COM, siga estas etapas:

  1. Faça o download do biblioteca .NET arquivar e descompactá-lo em um disco local para qualquer local.
  2. Vá para o diretório com arquivos de biblioteca descompactados e encontre o com-register.bat Arquivo.
  3. Selecione os com-register.bat arquivo com o mouse e selecione o Run as administrator comando no menu de contexto.

Usando a biblioteca .NET no MS Excel

As funções da biblioteca viesapiLibrary.dll podem ser usadas no aplicativo MS Excel para escrever suas próprias funções e procedimentos no Visual Basic Língua. Para que isso seja possível, é necessário:

  1. Registro a viesapiLibrary.dll biblioteca como um COM objeto em Windows.
  2. Inicie o aplicativo Excel. Selecione os DEVELOPER guia na faixa de opções e, em seguida, clique no Visual Basic botão.
  3. No Visual Basic for Application janela, selecione Tools e depois References do cardápio. No Available References lista, localize e selecione VIESAPI Service Client for .NET Framework (C#). Confirme sua seleção com o OK botão.
  4. De Insert cardápio, escolha Module e cole o código de função apresentado nos exemplos para Visual Basic na nova janela.
  5. Finalmente, valores apropriados de w para viesapi.ID e viesapi.Key deve ser definido. O método de obtenção da chave e da chave de acesso é descrito no capítulo Gerando o identificador e a chave de acesso