[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: Avalara Webservice Get Tax Secirity issue
Ms. Hamway:
You do not want to use the SOAP API for Avalara with HTTPAPI you will need to use the Avalara REST API instead. Here is a sample of what I send:
<GetTaxRequest><CompanyCode>GFPT</CompanyCode><DocType>SalesInvoice</DocType><DocCode>GP213079</DocCode><DocDate>2012-10-17</DocDate><CustomerCode>GFPTDS</CustomerCode><Addresses><Address><AddressCode>O</AddressCode><Line1>3321 E. PRINCESS ANNE RD.</Line1><City>NORFOLK</City><Region>VA</Region><PostalCode>23502-1594</PostalCode><Country>US</Country></Address><Address><AddressCode>D</AddressCode><Line1>1224 TRAILCREEK DR.</Line1><City>IRVING</City><Region>TX</Region><PostalCode>750380000</PostalCode><Country>US</Country></Address></Addresses><Lines><Line><LineNo>1</LineNo><OriginCode>O</OriginCode><DestinationCode>D</DestinationCode><ItemCode>P0000000</ItemCode><Qty>1</Qty><Amount>15.0</Amount><TaxIncluded>false</TaxIncluded></Line><Line><LineNo>2</LineNo><OriginCode>O</OriginCode><DestinationCode>D</DestinationCode><ItemCode>FR020100</ItemCode><Qty>1</Qty><Amount> 10.5</Amount><TaxIncluded>false</TaxIncluded></Line></Lines></GetTaxRequest>
Hope that Helps.
Nick Sonin
-----Original Message-----
From: Laura Hamway (PHOENIX) [mailto:lhamway@xxxxxxxxxxxxxxxx]
Sent: Wednesday, October 17, 2012 8:42 PM
To: ftpapi@xxxxxxxxxxxxxxxxxxxxxx
Subject: Avalara Webservice Get Tax Secirity issue
I am getting a security error when executing my program to consume avalara's GetTax webservice. I have attached the xml and the wsdl. I saw a similar posting from a couple days ago but not any resolution.
The response text is as follows:
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><s:Fault>
<faultcode xmlns:a="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">a:InvalidSecurity</faultcode><faultstring xml:lang="en-US">An error occurred when verifying security for the message.</faultstring></s:Fault></s:Body></s:Envelope>
Is this an error on the iSeries side of not being able to get outside the network or a security error when trying to consume the webservice?
The xml I am sending is below - when I do this in SoapUI the xml is processed and I do receive back the response xml with the tax rates. The only difference in SoapUI I had to enter the user and password.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://avatax.avalara.com/services">
<soapenv:Header> <ser:Profile> <ser:Name>Fiberweb</ser:Name> <ser:Client>FiberwebSOAPHarness,1.1.0.0</ser:Client> <ser:Adapter>FiberwebSoapAdapter</ser:Adapter> <ser:Machine>CORP</ser:Machine> </ser:Profile> <ser:Security> <ser:UsernameToken> <ser:Username>1100085xxx</ser:Username> <ser:Password>9A460B80D5ADDxxx</ser:Password> </ser:UsernameToken> </ser:Security> </soapenv:Header> <soapenv:Body> <ser:GetTax> <ser:GetTaxRequest> <ser:CompanyCode>Fiberweb</ser:CompanyCode> <ser:DocType>SalesOrder</ser:DocType> <ser:DocCode>9202012</ser:DocCode> <ser:DocDate>2012-09-21</ser:DocDate> <ser:Discount>0</ser:Discount> <ser:SalespersonCode>504</ser:SalespersonCode> <ser:CustomerCode>1865</ser:CustomerCode> <ser:Addresses> <ser:BaseAddress> <ser:AddressCode>1</ser:AddressCode> <ser:Line1>603 North Moore Road</ser:Line1> <ser:City>Port Washington</ser:City> <ser:Region>WI</ser:Region> <ser:PostalCode>53074</ser:PostalCode> <ser:TaxRegionId>0</ser:TaxRegionId> </ser:BaseAddress> </ser:Addresses> <ser:Lines> <ser:Line> <ser:No>1</ser:No> <ser:OriginCode>1</ser:OriginCode> <ser:DestinationCode>1</ser:DestinationCode> <ser:ItemCode>2055W-029 </ser:ItemCode> <ser:TaxCode> </ser:TaxCode> <ser:Qty>630000.000</ser:Qty> <ser:Amount>47079.90000</ser:Amount> <ser:Discounted>false</ser:Discounted> <ser:RevAcct/> <ser:Ref1/> <ser:Ref2/> <ser:ExemptionNo/> <ser:CustomerUsageType/> <ser:Description/> <ser:TaxOverride> <ser:TaxOverrideType>None</ser:TaxOverrideType> <ser:TaxAmount>0</ser:TaxAmount> <ser:TaxDate>1900-01-01</ser:TaxDate> <ser:Reason/> </ser:TaxOverride> <ser:TaxIncluded>false</ser:TaxIncluded> </ser:Line> </ser:Lines> <ser:DetailLevel>Tax</ser:DetailLevel> <ser:ReferenceCode/> <ser:HashCode>0</ser:HashCode> <ser:LocationCode/> <ser:Commit>false</ser:Commit> <ser:BatchCode/> <ser:TaxOverride> <ser:TaxOverrideType>None</ser:TaxOverrideType> <ser:TaxAmount>0</ser:TaxAmount> <ser:TaxDate>1900-01-01</ser:TaxDate> <ser:Reason/> </ser:TaxOverride> <ser:CurrencyCode>USD</ser:CurrencyCode> <ser:ServiceMode>Remote</ser:ServiceMode> <ser:PaymentDate>1900-01-01</ser:PaymentDate> <ser:ExchangeRate>0</ser:ExchangeRate> <ser:ExchangeRateEffDate>1900-01-01</ser:ExchangeRateEffDate> </ser:GetTaxRequest> </ser:GetTax> </soapenv:Body> </soapenv:Envelope>
The wsdl:
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://avatax.avalara.com/services" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://avatax.avalara.com/services" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<s:schema elementFormDefault="qualified" targetNamespace="http://avatax.avalara.com/services">
<s:element name="GetTax">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="GetTaxRequest" type="tns:GetTaxRequest" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="GetTaxRequest">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="DocType" type="tns:DocumentType" />
<s:element minOccurs="0" maxOccurs="1" name="DocCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="DocDate" type="s:date" />
<s:element minOccurs="0" maxOccurs="1" name="SalespersonCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="CustomerCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="CustomerUsageType" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="Discount" type="s:decimal" />
<s:element minOccurs="0" maxOccurs="1" name="PurchaseOrderNo" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="ExemptionNo" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="OriginCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="DestinationCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Addresses" type="tns:ArrayOfBaseAddress" />
<s:element minOccurs="0" maxOccurs="1" name="Lines" type="tns:ArrayOfLine" />
<s:element minOccurs="1" maxOccurs="1" name="DetailLevel" type="tns:DetailLevel" />
<s:element minOccurs="0" maxOccurs="1" name="ReferenceCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="HashCode" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="LocationCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="Commit" type="s:boolean" />
<s:element minOccurs="0" maxOccurs="1" name="BatchCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="TaxOverride" type="tns:TaxOverride" />
<s:element minOccurs="0" maxOccurs="1" name="CurrencyCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="ServiceMode" type="tns:ServiceMode" />
<s:element minOccurs="1" maxOccurs="1" name="PaymentDate" type="s:date" />
<s:element minOccurs="1" maxOccurs="1" name="ExchangeRate" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="ExchangeRateEffDate" type="s:date" />
<s:element minOccurs="0" maxOccurs="1" name="PosLaneCode" type="s:string" />
</s:sequence>
</s:complexType>
<s:simpleType name="DocumentType">
<s:restriction base="s:string">
<s:enumeration value="SalesOrder" />
<s:enumeration value="SalesInvoice" />
<s:enumeration value="PurchaseOrder" />
<s:enumeration value="PurchaseInvoice" />
<s:enumeration value="ReturnOrder" />
<s:enumeration value="ReturnInvoice" />
<s:enumeration value="InventoryTransferOrder" />
<s:enumeration value="InventoryTransferInvoice" />
</s:restriction>
</s:simpleType>
<s:complexType name="ArrayOfBaseAddress">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="BaseAddress" nillable="true" type="tns:BaseAddress" />
</s:sequence>
</s:complexType>
<s:complexType name="BaseAddress">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="AddressCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Line1" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Line2" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Line3" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="City" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Region" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="PostalCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="TaxRegionId" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="Latitude" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Longitude" type="s:string" />
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfLine">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="Line" nillable="true" type="tns:Line" />
</s:sequence>
</s:complexType>
<s:complexType name="Line">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="No" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="OriginCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="DestinationCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="ItemCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="TaxCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="Qty" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="Amount" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="Discounted" type="s:boolean" />
<s:element minOccurs="0" maxOccurs="1" name="RevAcct" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Ref1" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Ref2" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="ExemptionNo" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="CustomerUsageType" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="TaxOverride" type="tns:TaxOverride" />
<s:element minOccurs="0" maxOccurs="1" name="TaxIncluded" type="s:boolean" default="false" />
</s:sequence>
</s:complexType>
<s:complexType name="TaxOverride">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="TaxOverrideType" type="tns:TaxOverrideType" />
<s:element minOccurs="1" maxOccurs="1" name="TaxAmount" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="TaxDate" type="s:date" />
<s:element minOccurs="0" maxOccurs="1" name="Reason" type="s:string" />
</s:sequence>
</s:complexType>
<s:simpleType name="TaxOverrideType">
<s:restriction base="s:string">
<s:enumeration value="None" />
<s:enumeration value="TaxAmount" />
<s:enumeration value="Exemption" />
<s:enumeration value="TaxDate" />
<s:enumeration value="AccruedTaxAmount" />
</s:restriction>
</s:simpleType>
<s:simpleType name="DetailLevel">
<s:restriction base="s:string">
<s:enumeration value="Document" />
<s:enumeration value="Summary" />
<s:enumeration value="Line" />
<s:enumeration value="Tax" />
<s:enumeration value="Diagnostic" />
</s:restriction>
</s:simpleType>
<s:simpleType name="ServiceMode">
<s:restriction base="s:string">
<s:enumeration value="Automatic" />
<s:enumeration value="Local" />
<s:enumeration value="Remote" />
</s:restriction>
</s:simpleType>
<s:element name="GetTaxResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="GetTaxResult" type="tns:GetTaxResult" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="GetTaxResult">
<s:complexContent mixed="false">
<s:extension base="tns:BaseResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="DocId" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="DocType" type="tns:DocumentType" />
<s:element minOccurs="0" maxOccurs="1" name="DocCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="DocDate" type="s:date" />
<s:element minOccurs="1" maxOccurs="1" name="DocStatus" type="tns:DocStatus" />
<s:element minOccurs="1" maxOccurs="1" name="Reconciled" type="s:boolean" />
<s:element minOccurs="1" maxOccurs="1" name="Timestamp" type="s:dateTime" />
<s:element minOccurs="1" maxOccurs="1" name="TotalAmount" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="TotalDiscount" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="TotalExemption" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="TotalTaxable" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="TotalTax" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="TotalTaxCalculated" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="HashCode" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="TaxLines" type="tns:ArrayOfTaxLine" />
<s:element minOccurs="0" maxOccurs="1" name="TaxAddresses" type="tns:ArrayOfTaxAddress" />
<s:element minOccurs="1" maxOccurs="1" name="Locked" type="s:boolean" />
<s:element minOccurs="1" maxOccurs="1" name="AdjustmentReason" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="AdjustmentDescription" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="Version" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="TaxDate" type="s:date" />
<s:element minOccurs="0" maxOccurs="1" name="TaxSummary" type="tns:ArrayOfTaxDetail" />
<s:element minOccurs="0" maxOccurs="1" name="VolatileTaxRates" type="s:boolean" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:complexType name="BaseResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="TransactionId" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="ResultCode" type="tns:SeverityLevel" />
<s:element minOccurs="0" maxOccurs="1" name="Messages" type="tns:ArrayOfMessage" />
</s:sequence>
</s:complexType>
<s:simpleType name="SeverityLevel">
<s:restriction base="s:string">
<s:enumeration value="Success" />
<s:enumeration value="Warning" />
<s:enumeration value="Error" />
<s:enumeration value="Exception" />
</s:restriction>
</s:simpleType>
<s:complexType name="ArrayOfMessage">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="Message" nillable="true" type="tns:Message" />
</s:sequence>
</s:complexType>
<s:complexType name="Message">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Summary" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Details" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="HelpLink" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="RefersTo" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="Severity" type="tns:SeverityLevel" />
<s:element minOccurs="0" maxOccurs="1" name="Source" type="s:string" />
</s:sequence>
<s:attribute name="Name" type="s:string" />
</s:complexType>
<s:simpleType name="DocStatus">
<s:restriction base="s:string">
<s:enumeration value="Temporary" />
<s:enumeration value="Saved" />
<s:enumeration value="Posted" />
<s:enumeration value="Committed" />
<s:enumeration value="Cancelled" />
<s:enumeration value="Adjusted" />
<s:enumeration value="Any" />
</s:restriction>
</s:simpleType>
<s:complexType name="ArrayOfTaxLine">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="TaxLine" nillable="true" type="tns:TaxLine" />
</s:sequence>
</s:complexType>
<s:complexType name="TaxLine">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="No" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="TaxCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="Taxability" type="s:boolean" />
<s:element minOccurs="1" maxOccurs="1" name="BoundaryLevel" type="tns:BoundaryLevel" />
<s:element minOccurs="1" maxOccurs="1" name="Exemption" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="Discount" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="Taxable" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="Rate" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="Tax" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="TaxCalculated" type="s:decimal" />
<s:element minOccurs="0" maxOccurs="1" name="TaxDetails" type="tns:ArrayOfTaxDetail" />
<s:element minOccurs="1" maxOccurs="1" name="ExemptCertId" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="TaxDate" type="s:date" />
<s:element minOccurs="1" maxOccurs="1" name="ReportingDate" type="s:date" />
<s:element minOccurs="1" maxOccurs="1" name="AccountingMethod" type="tns:AccountingMethod" />
<s:element minOccurs="0" maxOccurs="1" name="TaxIncluded" type="s:boolean" default="false" />
</s:sequence>
</s:complexType>
<s:simpleType name="BoundaryLevel">
<s:restriction base="s:string">
<s:enumeration value="Address" />
<s:enumeration value="Zip9" />
<s:enumeration value="Zip5" />
</s:restriction>
</s:simpleType>
<s:complexType name="ArrayOfTaxDetail">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="TaxDetail" nillable="true" type="tns:TaxDetail" />
</s:sequence>
</s:complexType>
<s:complexType name="TaxDetail">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Region" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="JurisType" type="tns:JurisdictionType" />
<s:element minOccurs="0" maxOccurs="1" name="JurisCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="TaxType" type="tns:TaxType" />
<s:element minOccurs="1" maxOccurs="1" name="Base" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="Taxable" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="Rate" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="Tax" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="TaxCalculated" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="NonTaxable" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="Exemption" type="s:decimal" />
<s:element minOccurs="0" maxOccurs="1" name="JurisName" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="TaxName" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="TaxAuthorityType" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="TaxGroup" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="RateType" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="StateAssignedNo" type="s:string" />
</s:sequence>
</s:complexType>
<s:simpleType name="JurisdictionType">
<s:restriction base="s:string">
<s:enumeration value="Country" />
<s:enumeration value="Composite" />
<s:enumeration value="State" />
<s:enumeration value="County" />
<s:enumeration value="City" />
<s:enumeration value="Special" />
</s:restriction>
</s:simpleType>
<s:simpleType name="TaxType">
<s:restriction base="s:string">
<s:enumeration value="Sales" />
<s:enumeration value="Use" />
<s:enumeration value="ConsumerUse" />
<s:enumeration value="Output" />
<s:enumeration value="Input" />
<s:enumeration value="Nonrecoverable" />
<s:enumeration value="Fee" />
<s:enumeration value="Rental" />
</s:restriction>
</s:simpleType>
<s:simpleType name="AccountingMethod">
<s:restriction base="s:string">
<s:enumeration value="Accrual" />
<s:enumeration value="Cash" />
</s:restriction>
</s:simpleType>
<s:complexType name="ArrayOfTaxAddress">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="TaxAddress" nillable="true" type="tns:TaxAddress" />
</s:sequence>
</s:complexType>
<s:complexType name="TaxAddress">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Address" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="AddressCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="BoundaryLevel" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="City" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="PostalCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Region" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="TaxRegionId" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="JurisCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Latitude" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Longitude" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="ValidateStatus" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="GeocodeType" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="DistanceToBoundary" type="s:int" />
</s:sequence>
</s:complexType>
<s:element name="Profile" type="tns:Profile" />
<s:complexType name="Profile">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Client" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Adapter" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Machine" type="s:string" />
</s:sequence>
<s:anyAttribute />
</s:complexType>
<s:element name="GetTaxHistory">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="GetTaxHistoryRequest" type="tns:GetTaxHistoryRequest" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="GetTaxHistoryRequest">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="DocId" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="DocType" type="tns:DocumentType" />
<s:element minOccurs="0" maxOccurs="1" name="DocCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="DetailLevel" type="tns:DetailLevel" />
</s:sequence>
</s:complexType>
<s:element name="GetTaxHistoryResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="GetTaxHistoryResult" type="tns:GetTaxHistoryResult" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="GetTaxHistoryResult">
<s:complexContent mixed="false">
<s:extension base="tns:BaseResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="GetTaxRequest" type="tns:GetTaxRequest" />
<s:element minOccurs="0" maxOccurs="1" name="GetTaxResult" type="tns:GetTaxResult" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:element name="PostTax">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="PostTaxRequest" type="tns:PostTaxRequest" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="PostTaxRequest">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="DocId" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="DocType" type="tns:DocumentType" />
<s:element minOccurs="0" maxOccurs="1" name="DocCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="DocDate" type="s:date" />
<s:element minOccurs="1" maxOccurs="1" name="TotalAmount" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="TotalTax" type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="HashCode" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="Commit" type="s:boolean" />
<s:element minOccurs="0" maxOccurs="1" name="NewDocCode" type="s:string" />
</s:sequence>
</s:complexType>
<s:element name="PostTaxResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="PostTaxResult" type="tns:PostTaxResult" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="PostTaxResult">
<s:complexContent mixed="false">
<s:extension base="tns:BaseResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="DocId" type="s:string" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:element name="CommitTax">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="CommitTaxRequest" type="tns:CommitTaxRequest" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="CommitTaxRequest">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="DocId" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="DocType" type="tns:DocumentType" />
<s:element minOccurs="0" maxOccurs="1" name="DocCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="NewDocCode" type="s:string" />
</s:sequence>
</s:complexType>
<s:element name="CommitTaxResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="CommitTaxResult" type="tns:CommitTaxResult" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="CommitTaxResult">
<s:complexContent mixed="false">
<s:extension base="tns:BaseResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="DocId" type="s:string" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:element name="AuditMessage" type="tns:AuditMessage" />
<s:complexType name="AuditMessage">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string" />
</s:sequence>
<s:anyAttribute />
</s:complexType>
<s:element name="CancelTax">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="CancelTaxRequest" type="tns:CancelTaxRequest" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="CancelTaxRequest">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="DocId" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="DocType" type="tns:DocumentType" />
<s:element minOccurs="0" maxOccurs="1" name="DocCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="CancelCode" type="tns:CancelCode" />
</s:sequence>
</s:complexType>
<s:simpleType name="CancelCode">
<s:restriction base="s:string">
<s:enumeration value="Unspecified" />
<s:enumeration value="PostFailed" />
<s:enumeration value="DocDeleted" />
<s:enumeration value="DocVoided" />
<s:enumeration value="AdjustmentCancelled" />
</s:restriction>
</s:simpleType>
<s:element name="CancelTaxResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="CancelTaxResult" type="tns:CancelTaxResult" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="CancelTaxResult">
<s:complexContent mixed="false">
<s:extension base="tns:BaseResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="DocId" type="s:string" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:element name="ReconcileTaxHistory">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="ReconcileTaxHistoryRequest" type="tns:ReconcileTaxHistoryRequest" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="ReconcileTaxHistoryRequest">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="LastDocId" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="Reconciled" type="s:boolean" />
<s:element minOccurs="1" maxOccurs="1" name="StartDate" type="s:date" />
<s:element minOccurs="1" maxOccurs="1" name="EndDate" type="s:date" />
<s:element minOccurs="1" maxOccurs="1" name="DocStatus" type="tns:DocStatus" />
<s:element minOccurs="1" maxOccurs="1" name="DocType" type="tns:DocumentType"/>
<s:element minOccurs="1" maxOccurs="1" name="LastDocCode" type="s:string"/>
<s:element minOccurs="1" maxOccurs="1" name="PageSize" type="s:int"/>
</s:sequence>
</s:complexType>
<s:element name="ReconcileTaxHistoryResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="ReconcileTaxHistoryResult" type="tns:ReconcileTaxHistoryResult" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="ReconcileTaxHistoryResult">
<s:complexContent mixed="false">
<s:extension base="tns:SearchTaxHistoryResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="RecordCount" type="s:int"></s:element>
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:complexType name="SearchTaxHistoryResult">
<s:complexContent mixed="false">
<s:extension base="tns:BaseResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="GetTaxResults" type="tns:ArrayOfGetTaxResult" />
<s:element minOccurs="0" maxOccurs="1" name="LastDocId" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="LastDocCode" type="s:string" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:complexType name="ArrayOfGetTaxResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="GetTaxResult" nillable="true" type="tns:GetTaxResult" />
</s:sequence>
</s:complexType>
<s:element name="AdjustTax">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="AdjustTaxRequest" type="tns:AdjustTaxRequest" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="AdjustTaxRequest">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="AdjustmentReason" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="AdjustmentDescription" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="GetTaxRequest" type="tns:GetTaxRequest" />
</s:sequence>
</s:complexType>
<s:element name="AdjustTaxResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="AdjustTaxResult" type="tns:AdjustTaxResult" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="AdjustTaxResult">
<s:complexContent mixed="false">
<s:extension base="tns:GetTaxResult" />
</s:complexContent>
</s:complexType>
<s:element name="ApplyPayment">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="ApplyPaymentRequest" type="tns:ApplyPaymentRequest" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="ApplyPaymentRequest">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="DocId" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="DocType" type="tns:DocumentType" />
<s:element minOccurs="0" maxOccurs="1" name="DocCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="PaymentDate" type="s:date" />
</s:sequence>
</s:complexType>
<s:element name="ApplyPaymentResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="ApplyPaymentResult" type="tns:ApplyPaymentResult" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="ApplyPaymentResult">
<s:complexContent mixed="false">
<s:extension base="tns:BaseResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="DocId" type="s:string" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:element name="Ping">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="PingResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="PingResult" type="tns:PingResult" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="PingResult">
<s:complexContent mixed="false">
<s:extension base="tns:BaseResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Version" type="s:string" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:element name="IsAuthorized">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Operations" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="IsAuthorizedResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="IsAuthorizedResult" type="tns:IsAuthorizedResult" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="IsAuthorizedResult">
<s:complexContent mixed="false">
<s:extension base="tns:BaseResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Operations" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="Expires" type="s:dateTime" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:element name="TaxSummaryFetch">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="TaxSummaryFetchRequest" type="tns:TaxSummaryFetchRequest" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="TaxSummaryFetchRequest">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="MerchantCode" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="StartDate" type="s:date" />
<s:element minOccurs="1" maxOccurs="1" name="EndDate" type="s:date" />
</s:sequence>
</s:complexType>
<s:element name="TaxSummaryFetchResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="TaxSummaryFetchResult" type="tns:TaxSummaryFetchResult" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="TaxSummaryFetchResult">
<s:complexContent mixed="false">
<s:extension base="tns:BaseResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="TaxSummaryReport">
<s:complexType>
<s:sequence>
<s:any />
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
</s:schema>
</wsdl:types>
<wsdl:message name="GetTaxSoapIn">
<wsdl:part name="parameters" element="tns:GetTax" />
</wsdl:message>
<wsdl:message name="GetTaxSoapOut">
<wsdl:part name="parameters" element="tns:GetTaxResponse" />
</wsdl:message>
<wsdl:message name="GetTaxProfile">
<wsdl:part name="Profile" element="tns:Profile" />
</wsdl:message>
<wsdl:message name="GetTaxHistorySoapIn">
<wsdl:part name="parameters" element="tns:GetTaxHistory" />
</wsdl:message>
<wsdl:message name="GetTaxHistorySoapOut">
<wsdl:part name="parameters" element="tns:GetTaxHistoryResponse" />
</wsdl:message>
<wsdl:message name="GetTaxHistoryProfile">
<wsdl:part name="Profile" element="tns:Profile" />
</wsdl:message>
<wsdl:message name="PostTaxSoapIn">
<wsdl:part name="parameters" element="tns:PostTax" />
</wsdl:message>
<wsdl:message name="PostTaxSoapOut">
<wsdl:part name="parameters" element="tns:PostTaxResponse" />
</wsdl:message>
<wsdl:message name="PostTaxProfile">
<wsdl:part name="Profile" element="tns:Profile" />
</wsdl:message>
<wsdl:message name="CommitTaxSoapIn">
<wsdl:part name="parameters" element="tns:CommitTax" />
</wsdl:message>
<wsdl:message name="CommitTaxSoapOut">
<wsdl:part name="parameters" element="tns:CommitTaxResponse" />
</wsdl:message>
<wsdl:message name="CommitTaxAuditMessage">
<wsdl:part name="AuditMessage" element="tns:AuditMessage" />
</wsdl:message>
<wsdl:message name="CommitTaxProfile">
<wsdl:part name="Profile" element="tns:Profile" />
</wsdl:message>
<wsdl:message name="CancelTaxSoapIn">
<wsdl:part name="parameters" element="tns:CancelTax" />
</wsdl:message>
<wsdl:message name="CancelTaxSoapOut">
<wsdl:part name="parameters" element="tns:CancelTaxResponse" />
</wsdl:message>
<wsdl:message name="CancelTaxAuditMessage">
<wsdl:part name="AuditMessage" element="tns:AuditMessage" />
</wsdl:message>
<wsdl:message name="CancelTaxProfile">
<wsdl:part name="Profile" element="tns:Profile" />
</wsdl:message>
<wsdl:message name="ReconcileTaxHistorySoapIn">
<wsdl:part name="parameters" element="tns:ReconcileTaxHistory" />
</wsdl:message>
<wsdl:message name="ReconcileTaxHistorySoapOut">
<wsdl:part name="parameters" element="tns:ReconcileTaxHistoryResponse" />
</wsdl:message>
<wsdl:message name="ReconcileTaxHistoryProfile">
<wsdl:part name="Profile" element="tns:Profile" />
</wsdl:message>
<wsdl:message name="AdjustTaxSoapIn">
<wsdl:part name="parameters" element="tns:AdjustTax" />
</wsdl:message>
<wsdl:message name="AdjustTaxSoapOut">
<wsdl:part name="parameters" element="tns:AdjustTaxResponse" />
</wsdl:message>
<wsdl:message name="AdjustTaxProfile">
<wsdl:part name="Profile" element="tns:Profile" />
</wsdl:message>
<wsdl:message name="ApplyPaymentSoapIn">
<wsdl:part name="parameters" element="tns:ApplyPayment" />
</wsdl:message>
<wsdl:message name="ApplyPaymentSoapOut">
<wsdl:part name="parameters" element="tns:ApplyPaymentResponse" />
</wsdl:message>
<wsdl:message name="ApplyPaymentAuditMessage">
<wsdl:part name="AuditMessage" element="tns:AuditMessage" />
</wsdl:message>
<wsdl:message name="ApplyPaymentProfile">
<wsdl:part name="Profile" element="tns:Profile" />
</wsdl:message>
<wsdl:message name="PingSoapIn">
<wsdl:part name="parameters" element="tns:Ping" />
</wsdl:message>
<wsdl:message name="PingSoapOut">
<wsdl:part name="parameters" element="tns:PingResponse" />
</wsdl:message>
<wsdl:message name="PingProfile">
<wsdl:part name="Profile" element="tns:Profile" />
</wsdl:message>
<wsdl:message name="IsAuthorizedSoapIn">
<wsdl:part name="parameters" element="tns:IsAuthorized" />
</wsdl:message>
<wsdl:message name="IsAuthorizedSoapOut">
<wsdl:part name="parameters" element="tns:IsAuthorizedResponse" />
</wsdl:message>
<wsdl:message name="IsAuthorizedProfile">
<wsdl:part name="Profile" element="tns:Profile" />
</wsdl:message>
<wsdl:message name="TaxSummaryFetchSoapIn">
<wsdl:part name="parameters" element="tns:TaxSummaryFetch" />
</wsdl:message>
<wsdl:message name="TaxSummaryFetchSoapOut">
<wsdl:part name="parameters" element="tns:TaxSummaryFetchResponse" />
</wsdl:message>
<wsdl:message name="TaxSummaryFetchProfile">
<wsdl:part name="Profile" element="tns:Profile" />
</wsdl:message>
<wsdl:portType name="TaxSvcSoap">
<wsdl:operation name="GetTax">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Calculates taxes on a document</wsdl:documentation>
<wsdl:input message="tns:GetTaxSoapIn" />
<wsdl:output message="tns:GetTaxSoapOut" />
</wsdl:operation>
<wsdl:operation name="GetTaxHistory">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Retrieves a previously calculated tax document</wsdl:documentation>
<wsdl:input message="tns:GetTaxHistorySoapIn" />
<wsdl:output message="tns:GetTaxHistorySoapOut" />
</wsdl:operation>
<wsdl:operation name="PostTax">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Posts a previously calculated tax</wsdl:documentation>
<wsdl:input message="tns:PostTaxSoapIn" />
<wsdl:output message="tns:PostTaxSoapOut" />
</wsdl:operation>
<wsdl:operation name="CommitTax">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Commits a previously posted tax</wsdl:documentation>
<wsdl:input message="tns:CommitTaxSoapIn" />
<wsdl:output message="tns:CommitTaxSoapOut" />
</wsdl:operation>
<wsdl:operation name="CancelTax">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Cancels a previously calculated tax. This is for use as a compensating action when posting on the client fails to complete.</wsdl:documentation>
<wsdl:input message="tns:CancelTaxSoapIn" />
<wsdl:output message="tns:CancelTaxSoapOut" />
</wsdl:operation>
<wsdl:operation name="ReconcileTaxHistory">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Reconciles tax history to ensure the client data matches the AvaTax history.</wsdl:documentation>
<wsdl:input message="tns:ReconcileTaxHistorySoapIn" />
<wsdl:output message="tns:ReconcileTaxHistorySoapOut" />
</wsdl:operation>
<wsdl:operation name="AdjustTax">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Adjusts taxes on an existing invoice</wsdl:documentation>
<wsdl:input message="tns:AdjustTaxSoapIn" />
<wsdl:output message="tns:AdjustTaxSoapOut" />
</wsdl:operation>
<wsdl:operation name="ApplyPayment">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Applies a payment date to an existing invoice</wsdl:documentation>
<wsdl:input message="tns:ApplyPaymentSoapIn" />
<wsdl:output message="tns:ApplyPaymentSoapOut" />
</wsdl:operation>
<wsdl:operation name="Ping">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Tests connectivity and version of the service</wsdl:documentation>
<wsdl:input message="tns:PingSoapIn" />
<wsdl:output message="tns:PingSoapOut" />
</wsdl:operation>
<wsdl:operation name="IsAuthorized">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Checks authentication and authorization to one or more operations on the service.</wsdl:documentation>
<wsdl:input message="tns:IsAuthorizedSoapIn" />
<wsdl:output message="tns:IsAuthorizedSoapOut" />
</wsdl:operation>
<wsdl:operation name="TaxSummaryFetch">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Fetches TaxSummary Data.</wsdl:documentation>
<wsdl:input message="tns:TaxSummaryFetchSoapIn" />
<wsdl:output message="tns:TaxSummaryFetchSoapOut" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="TaxSvcSoap" type="tns:TaxSvcSoap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="GetTax">
<soap:operation soapAction="http://avatax.avalara.com/services/GetTax" style="document" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:GetTaxProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="GetTaxHistory">
<soap:operation soapAction="http://avatax.avalara.com/services/GetTaxHistory" style="document" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:GetTaxHistoryProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="PostTax">
<soap:operation soapAction="http://avatax.avalara.com/services/PostTax" style="document" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:PostTaxProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="CommitTax">
<soap:operation soapAction="http://avatax.avalara.com/services/CommitTax" style="document" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:CommitTaxAuditMessage" part="AuditMessage" use="literal" />
<soap:header message="tns:CommitTaxProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="CancelTax">
<soap:operation soapAction="http://avatax.avalara.com/services/CancelTax" style="document" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:CancelTaxAuditMessage" part="AuditMessage" use="literal" />
<soap:header message="tns:CancelTaxProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="ReconcileTaxHistory">
<soap:operation soapAction="http://avatax.avalara.com/services/ReconcileTaxHistory" style="document" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:ReconcileTaxHistoryProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="AdjustTax">
<soap:operation soapAction="http://avatax.avalara.com/services/AdjustTax" style="document" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:AdjustTaxProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="ApplyPayment">
<soap:operation soapAction="http://avatax.avalara.com/services/ApplyPayment" style="document" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:ApplyPaymentAuditMessage" part="AuditMessage" use="literal" />
<soap:header message="tns:ApplyPaymentProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="Ping">
<soap:operation soapAction="http://avatax.avalara.com/services/Ping" style="document" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:PingProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="IsAuthorized">
<soap:operation soapAction="http://avatax.avalara.com/services/IsAuthorized" style="document" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:IsAuthorizedProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="TaxSummaryFetch">
<soap:operation soapAction="http://avatax.avalara.com/services/TaxSummaryFetch" style="document" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns:TaxSummaryFetchProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="TaxSvcSoap12" type="tns:TaxSvcSoap">
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="GetTax">
<soap12:operation soapAction="http://avatax.avalara.com/services/GetTax" style="document" />
<wsdl:input>
<soap12:body use="literal" />
<soap12:header message="tns:GetTaxProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="GetTaxHistory">
<soap12:operation soapAction="http://avatax.avalara.com/services/GetTaxHistory" style="document" />
<wsdl:input>
<soap12:body use="literal" />
<soap12:header message="tns:GetTaxHistoryProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="PostTax">
<soap12:operation soapAction="http://avatax.avalara.com/services/PostTax" style="document" />
<wsdl:input>
<soap12:body use="literal" />
<soap12:header message="tns:PostTaxProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="CommitTax">
<soap12:operation soapAction="http://avatax.avalara.com/services/CommitTax" style="document" />
<wsdl:input>
<soap12:body use="literal" />
<soap12:header message="tns:CommitTaxAuditMessage" part="AuditMessage" use="literal" />
<soap12:header message="tns:CommitTaxProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="CancelTax">
<soap12:operation soapAction="http://avatax.avalara.com/services/CancelTax" style="document" />
<wsdl:input>
<soap12:body use="literal" />
<soap12:header message="tns:CancelTaxAuditMessage" part="AuditMessage" use="literal" />
<soap12:header message="tns:CancelTaxProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="ReconcileTaxHistory">
<soap12:operation soapAction="http://avatax.avalara.com/services/ReconcileTaxHistory" style="document" />
<wsdl:input>
<soap12:body use="literal" />
<soap12:header message="tns:ReconcileTaxHistoryProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="AdjustTax">
<soap12:operation soapAction="http://avatax.avalara.com/services/AdjustTax" style="document" />
<wsdl:input>
<soap12:body use="literal" />
<soap12:header message="tns:AdjustTaxProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="ApplyPayment">
<soap12:operation soapAction="http://avatax.avalara.com/services/ApplyPayment" style="document" />
<wsdl:input>
<soap12:body use="literal" />
<soap12:header message="tns:ApplyPaymentAuditMessage" part="AuditMessage" use="literal" />
<soap12:header message="tns:ApplyPaymentProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="Ping">
<soap12:operation soapAction="http://avatax.avalara.com/services/Ping" style="document" />
<wsdl:input>
<soap12:body use="literal" />
<soap12:header message="tns:PingProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="IsAuthorized">
<soap12:operation soapAction="http://avatax.avalara.com/services/IsAuthorized" style="document" />
<wsdl:input>
<soap12:body use="literal" />
<soap12:header message="tns:IsAuthorizedProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="TaxSummaryFetch">
<soap12:operation soapAction="http://avatax.avalara.com/services/TaxSummaryFetch" style="document" />
<wsdl:input>
<soap12:body use="literal" />
<soap12:header message="tns:TaxSummaryFetchProfile" part="Profile" use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="TaxSvc">
<wsdl:port name="TaxSvcSoap" binding="tns:TaxSvcSoap">
<soap:address location="https://development.avalara.net/Tax/TaxSvc.asmx" />
</wsdl:port>
<wsdl:port name="TaxSvcSoap12" binding="tns:TaxSvcSoap12">
<soap12:address location="https://development.avalara.net/Tax/TaxSvc.asmx" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
https://avatax.avalara.net/Tax/taxsvc.wsdl
Thanks,
Laura Hamway
757-754-1334
www.phoenixbcinc.com
-----------------------------------------------------------------------
This is the FTPAPI mailing list. To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------