Files
SDL/VERAG_PROG_ALLGEMEIN/Web References/eu.europa.ec/checkVatTestService.wsdl
2022-03-19 22:52:06 +01:00

155 lines
7.9 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:impl="urn:ec.europa.eu:taxud:vies:services:checkVat" xmlns:tns1="urn:ec.europa.eu:taxud:vies:services:checkVat:types" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:apachesoap="http://xml.apache.org/xml-soap" targetNamespace="urn:ec.europa.eu:taxud:vies:services:checkVat" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<xsd:documentation>
Specific disclaimer for this service -----------------------------------------
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.
</xsd:documentation>
<wsdl:types>
<xsd:schema xmlns="urn:ec.europa.eu:taxud:vies:services:checkVat:types" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="urn:ec.europa.eu:taxud:vies:services:checkVat:types">
<xsd:element name="checkVat">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="countryCode" type="xsd:string" />
<xsd:element name="vatNumber" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="checkVatResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="countryCode" type="xsd:string" />
<xsd:element name="vatNumber" type="xsd:string" />
<xsd:element name="requestDate" type="xsd:date" />
<xsd:element name="valid" type="xsd:boolean" />
<xsd:element minOccurs="0" maxOccurs="1" name="name" nillable="true" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="address" nillable="true" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="checkVatApprox">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="countryCode" type="xsd:string" />
<xsd:element name="vatNumber" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderName" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderCompanyType" type="tns1:companyTypeCode" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderStreet" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderPostcode" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderCity" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="requesterCountryCode" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="requesterVatNumber" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="checkVatApproxResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="countryCode" type="xsd:string" />
<xsd:element name="vatNumber" type="xsd:string" />
<xsd:element name="requestDate" type="xsd:date" />
<xsd:element name="valid" type="xsd:boolean" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderName" nillable="true" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderCompanyType" nillable="true" type="tns1:companyTypeCode" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderAddress" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderStreet" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderPostcode" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderCity" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderNameMatch" type="tns1:matchCode" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderCompanyTypeMatch" type="tns1:matchCode" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderStreetMatch" type="tns1:matchCode" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderPostcodeMatch" type="tns1:matchCode" />
<xsd:element minOccurs="0" maxOccurs="1" name="traderCityMatch" type="tns1:matchCode" />
<xsd:element name="requestIdentifier" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:simpleType name="companyTypeCode">
<xsd:restriction base="xsd:string">
<xsd:pattern value="[A-Z]{2}\-[1-9][0-9]?" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="matchCode">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="1">
<xsd:annotation>
<xsd:documentation>VALID</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="2">
<xsd:annotation>
<xsd:documentation>INVALID</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="3">
<xsd:annotation>
<xsd:documentation>NOT_PROCESSED</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="checkVatRequest">
<wsdl:part name="parameters" element="tns1:checkVat" />
</wsdl:message>
<wsdl:message name="checkVatApproxResponse">
<wsdl:part name="parameters" element="tns1:checkVatApproxResponse" />
</wsdl:message>
<wsdl:message name="checkVatApproxRequest">
<wsdl:part name="parameters" element="tns1:checkVatApprox" />
</wsdl:message>
<wsdl:message name="checkVatResponse">
<wsdl:part name="parameters" element="tns1:checkVatResponse" />
</wsdl:message>
<wsdl:portType name="checkVatPortType">
<wsdl:operation name="checkVat">
<wsdl:input name="checkVatRequest" message="impl:checkVatRequest" />
<wsdl:output name="checkVatResponse" message="impl:checkVatResponse" />
</wsdl:operation>
<wsdl:operation name="checkVatApprox">
<wsdl:input name="checkVatApproxRequest" message="impl:checkVatApproxRequest" />
<wsdl:output name="checkVatApproxResponse" message="impl:checkVatApproxResponse" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="checkVatTestBinding" type="impl:checkVatPortType">
<wsdlsoap:binding transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="checkVat">
<wsdlsoap:operation soapAction="" />
<wsdl:input name="checkVatRequest">
<wsdlsoap:body use="literal" />
</wsdl:input>
<wsdl:output name="checkVatResponse">
<wsdlsoap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="checkVatApprox">
<wsdlsoap:operation soapAction="" />
<wsdl:input name="checkVatApproxRequest">
<wsdlsoap:body use="literal" />
</wsdl:input>
<wsdl:output name="checkVatApproxResponse">
<wsdlsoap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="checkVatTestService">
<wsdl:port name="checkVatPort" binding="impl:checkVatTestBinding">
<wsdlsoap:address location="http://ec.europa.eu/taxation_customs/vies/services/checkVatTestService" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>