https://github.com/wtx-labs/vies-api-client-java
The VIES API Client for Java provides simple and efficient access to the VAT Information Exchange System (VIES) for validating EU VAT numbers. It enables seamless integration with the VIES service to verify VAT registration status across EU member states using a clean and easy-to-use interface.
https://github.com/wtx-labs/vies-api-client-java
api api-client api-rest european-union european-vat-numbers financial goverment integration integrations java rest rest-api vat vat-information-exchange vat-information-exchange-system vat-number vat-validation vies vies-api
Last synced: 5 months ago
JSON representation
The VIES API Client for Java provides simple and efficient access to the VAT Information Exchange System (VIES) for validating EU VAT numbers. It enables seamless integration with the VIES service to verify VAT registration status across EU member states using a clean and easy-to-use interface.
- Host: GitHub
- URL: https://github.com/wtx-labs/vies-api-client-java
- Owner: wtx-labs
- License: mit
- Created: 2025-11-17T12:37:22.000Z (7 months ago)
- Default Branch: release/1.0.0
- Last Pushed: 2025-11-17T13:52:42.000Z (7 months ago)
- Last Synced: 2025-11-17T15:22:22.383Z (7 months ago)
- Topics: api, api-client, api-rest, european-union, european-vat-numbers, financial, goverment, integration, integrations, java, rest, rest-api, vat, vat-information-exchange, vat-information-exchange-system, vat-number, vat-validation, vies, vies-api
- Language: Java
- Homepage:
- Size: 52.7 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# VIES API Client for Java
[](https://opensource.org/licenses/MIT)
[](https://www.java.com)
[](https://mvnrepository.com/artifact/pl.wtx.vies/vies-api-client)
A lightweight Java client for the public [VIES REST API](https://ec.europa.eu/taxation_customs/vies/) that validates EU VAT numbers and reports the availability of national VAT systems. π
This client gives you type-safe access to the official VIES endpoints so you can:
- Check VAT numbers for any EU member state
- Exercise the builtβin VIES test service
- Monitor the status of individual tax administrations
## β¨ Why choose this client?
- π‘ **Type-safe Java API** β generated models and operations for each VIES REST endpoint
- βοΈ **Zero-auth configuration** β VIES is a public API, so no credentials are required
- π¦ **OkHttp + Gson stack** β customizable HTTP client with optional logging
- β‘ **Compatible with API specification** - based on official [API specification](https://ec.europa.eu/assets/taxud/vow-information/swagger_publicVAT.yaml)
## π― Currently implemented features
- β
`checkVatNumber`
- Validate a VAT number in a selected member state
- Retrieve trader name/address and optional match indicators
- β
`checkVatTestService`
- Hit the official VIES sandbox without touching production data
- Exercise request payloads used in certification
- β
`checkStatus`
- List availability per member state
- Inspect VIES-wide operational status
## π¨ Project status
> β οΈ **Note:** This is the first public release focused on VIES REST endpoints.
> Feedback and contributions are very welcome!
## π¦ Version information
- **Current version**: `1.0.0`
- **Supported API**: VIES REST (`/rest-api`)
- **Java compatibility**: 8+
## π License
**MIT License**
Use, modify, and distribute freely while keeping the original attribution.
## π Quick start guide
### 1οΈβ£ Installation
Clone and build from source:
```bash
git clone https://github.com/wtx-labs/vies-api-client-java.git
cd vies-api-client-java
mvn clean install
```
Add the artifact to your project:
```xml
pl.wtx.vies
vies-api-client
1.0.0
```
### 2οΈβ£ Java integration example
```java
package pl.wtx.vies;
import pl.wtx.vies.api.client.PublicApi;
import pl.wtx.vies.api.client.invoker.ApiException;
import pl.wtx.vies.api.client.model.CheckVatRequest;
import pl.wtx.vies.api.client.model.CheckVatResponse;
/**
* The VIES (VAT Information Exchange System) API Client - Usage Demo
* @author WTX Labs
* @see https://github.com/wtx-labs/vies-api-client-java
* @license MIT
*/
public class ViesApiClientUsageDemo {
private static final String BASE_PATH = "https://ec.europa.eu/taxation_customs/vies/rest-api";
public static void main(String[] args) {
System.out.println(">>> Start running the ViesApiClientUsageDemo...");
ViesApiClient apiClient = new ViesApiClient();
apiClient.setBasePath(BASE_PATH);
PublicApi publicApi = new PublicApi(apiClient);
try {
CheckVatRequest checkVatRequest = new CheckVatRequest();
checkVatRequest.setCountryCode("PL");
checkVatRequest.setVatNumber("1234567890");
CheckVatResponse checkVatResponse = publicApi.checkVatNumber(checkVatRequest);
System.out.println("Is VIES number valid: " + checkVatResponse.getValid());
System.out.println("Name: " + checkVatResponse.getName());
System.out.println("Address: " + checkVatResponse.getAddress());
} catch (ApiException e) {
System.err.println("API Error: " + e.getMessage());
}
System.out.println("<<< The <<< ViesApiClientUsageDemo has been finished.");
}
}
```
## π Get involved
- β¨ Track issues: https://github.com/wtx-labs/vies-api-client-java/issues
- π‘ Have ideas? Open an issue or PR β community contributions are welcome!
- π Star the repo if this saves you time
## π Project statistics
- π Fresh VIES-focused client
- π Continuous improvements driven by OpenAPI updates
- π₯ Maintained by WTX Labs
## π Keywords
vies java client, eu vat validation java, vies rest api java, vat information exchange system java, vat number check java, vies api client library, vies sdk java
π Happy coding! π
**Your WTX Labs Team** π