Download the PHP package rocketfellows/vies-vat-validation-php-sdk-rest without Composer
On this page you can find all versions of the php package rocketfellows/vies-vat-validation-php-sdk-rest. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package vies-vat-validation-php-sdk-rest
VIES VAT number validation PHP sdk REST.
An implementation of interface https://github.com/rocketfellows/vies-vat-validation-php-sdk-interface for the VIES service for checking the validity of the VAT number via the REST web services. The implementation is designed to send a request and process a response from the VAT validation service via the REST web services.
For more information about VIES VAT number validation services via the REST web services see https://ec.europa.eu/taxation_customs/vies/#/technical-information.
Installation.
Dependencies.
Current implementation dependencies:
- guzzle client - https://github.com/guzzle/guzzle;
- https://github.com/rocketfellows/vies-vat-validation-php-sdk-interface.
VIES VAT number validation REST service description.
For more information about VIES VAT number validation REST service see: https://ec.europa.eu/taxation_customs/vies/#/technical-information.
For the REST service, next urls are available:
- https://ec.europa.eu/taxation_customs/vies/rest-api/check-vat-number - production;
- https://ec.europa.eu/taxation_customs/vies/rest-api/check-vat-test-service - for test.
Swagger file: https://ec.europa.eu/assets/taxud/vow-information/swagger_publicVAT.yaml
VIES VAT number validation PHP sdk REST component description.
AbstractVatNumberValidationRestService
- is an abstract class that implements the interface https://github.com/rocketfellows/vies-vat-validation-php-sdk-interface and is intended for sending a request for VAT validation using the REST web service, processing response/faults and returning an object of type validation result.
VatNumberValidationRestService
- is an inheritor of the AbstractVatNumberValidationRestService
class, configured to send a request to the production api endpoint by url https://ec.europa.eu/taxation_customs/vies/rest-api/check-vat-number.
VatNumberValidationRestTestService
- is an inheritor of the AbstractVatNumberValidationRestService
class, configured to send a request to the test api endpoint by url https://ec.europa.eu/taxation_customs/vies/rest-api/check-vat-test-service.
VatNumberValidationRestExpansibleService
- is an inheritor of the AbstractVatNumberValidationRestService
class, configured to send a request to the service according to url, passed through the class constructor (customizable service).
For creating vat number validation result this component is using factory rocketfellows\ViesVatValidationInterface\VatNumberValidationResultFactory
from interface package https://github.com/rocketfellows/vies-vat-validation-php-sdk-interface.
According to factory, if any of required response attributes is missing, then validation process will throw special exceptions:
CountryCodeAttributeNotFoundException
- exception thrown if while creating instance ofVatNumberValidationResult
country code attribute not found.RequestDateAttributeNotFoundException
- exception thrown if while creating instance ofVatNumberValidationResult
request date attribute not found.ValidationFlagAttributeNotFoundException
- exception thrown if while creating instance ofVatNumberValidationResult
validation flag attribute not found.VatNumberAttributeNotFoundException
- exception thrown if while creating instance ofVatNumberValidationResult
vat number attribute not found.VatOwnerAddressAttributeNotFoundException
- exception thrown if while creating instance ofVatNumberValidationResult
vat owner address attribute not found.VatOwnerNameAttributeNotFoundException
- exception thrown if while creating instance ofVatNumberValidationResult
vat owner name attribute not found.
Usage examples.
VatNumberValidationRestService usage.
VAT number validation result (VAT is valid):
VAT number validation result (VAT is not valid):
VatNumberValidationRestTestService usage.
Here is the list of VAT Number to use to receive each kind of answer:
- 100 = Valid request with Valid VAT Number
- 200 = Valid request with an Invalid VAT Number
- 201 = Error : INVALID_INPUT
- 202 = Error : INVALID_REQUESTER_INFO
- 300 = Error : SERVICE_UNAVAILABLE
- 301 = Error : MS_UNAVAILABLE
- 302 = Error : TIMEOUT
- 400 = Error : VAT_BLOCKED
- 401 = Error : IP_BLOCKED
- 500 = Error : GLOBAL_MAX_CONCURRENT_REQ
- 501 = Error : GLOBAL_MAX_CONCURRENT_REQ_TIME
- 600 = Error : MS_MAX_CONCURRENT_REQ
- 601 = Error : MS_MAX_CONCURRENT_REQ_TIME
For all the other cases, The web service will responds with a "SERVICE_UNAVAILABLE" error.
Some usage examples below.
VAT number validation result (VAT is valid):
VAT number validation result (VAT is not valid):
VAT number validation resulted with INVALID_INPUT fault:
VAT number validation resulted with IP_BLOCKED fault:
VatNumberValidationRestExpansibleService usage.
VatNumberValidationRestExpansibleService
- is an inheritor of the AbstractVatNumberValidationRestService
class, configured to send a request to the service according to url, passed through the class constructor (customizable service).
For example init service with url - https://ec.europa.eu/taxation_customs/vies/rest-api/check-vat-number.
VAT number validation result (VAT is valid):
VAT number validation result (VAT is not valid):
Contributing.
Welcome to pull requests. If there is a major changes, first please open an issue for discussion.
Please make sure to update tests as appropriate.
All versions of vies-vat-validation-php-sdk-rest with dependencies
rocketfellows/vies-vat-validation-php-sdk-interface Version ~1.2.0
guzzlehttp/guzzle Version ^7.8