This is a PHP sample demonstrating the AvaTax REST API methods: tax/get POST, tax/get GET, tax/cancel POST, and address/validate GET.
For more information on the use of these methods and the AvaTax product, please visit our developer site or homepage
| Sample Files | |
|---|---|
| CancelTaxTest.php | Demonstrates the CancelTax method used to void a document. |
| EstimateTaxTest.php | Demonstrates the EstimateTax method used for product- and line- indifferent tax estimates. |
| GetTaxTest.php | Demonstrates the GetTax method used for product- and line- specific calculation. |
| PingTest.php | Uses a hardcoded EstimateTax call to test connectivity and credential information. |
| ValidateAddressTest.php | Demonstrates the ValidateAddress method to normalize an address. |
| Other Files | |
| AvaTaxClasses/ | Contains the core classes that make the service calls. |
| .gitattributes | - |
| .gitignore | - |
| LICENSE.md | - |
| README.md | - |
- PHP 5.0 or later
-
Authentication requires an valid Account Number and License Key, which should be entered in the test file (e.g. GetTaxTest.php) you would like to run.
-
If you do not have an AvaTax account, a free trial account can be acquired through our developer site
-
Some Windows users have had trouble with cURL automatically using our SSL certificate. The sample code offers two workarounds (both in /AvaTaxClasses/classes/TaxServiceRest.php.class). If this is something that presents a challenge for your system, uncomment ONE of the following two options in that file:
//Some Windows users have had trouble with our SSL Certificates. Uncomment the following line to NOT use SSL. //curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); //Other Windows users may prefer to download the certificate from our site (detail here: ) and manually set the cert path. // To set the path manually, uncomment the following two lines. If you choose to manually set the path, make sure you have commented out the line above // that tells curl to NOT use SSL. //$ca = "C:/curl/curl-ca-bundle.crt"; //curl_setopt($curl, CURLOPT_CAINFO, $ca);