karen_he/avataxclient
最新稳定版本:20.14
Composer 安装命令:
composer require karen_he/avataxclient
包简介
Client library for Avalara's AvaTax suite of business tax calculation and processing services. Uses the REST v2 API. Updated to use Guzzle 7 for Laravel compatibility.
README 文档
README
This GitHub repository is the PHP SDK for Avalara's world-class tax service, AvaTax. It uses the AvaTax REST v2 API, which is a fully REST implementation and provides a single client for all AvaTax functionality. For more information about AvaTax REST v2, please visit Avalara's Developer Network or view the online Swagger documentation.
Build Status
Packagist
Travis-CI
Installing the PHP SDK
The AvaTax PHP SDK is available as a Composer package.
To use the AvaTax PHP SDK from Composer:
- Add a
composer.jsonfile to your project and link to AvaTax:
{
"require": {
"avalara/avataxclient": "*"
}
}
- Run
composer installto download the latest version.
Using the PHP SDK
The PHP SDK uses a fluent interface to define a connection to AvaTax and to make API calls to calculate tax on transactions. Here's an example of connecting to the API.
<?php // Include the AvaTaxClient library require __DIR__ . '/vendor/autoload.php'; use Avalara\AvaTaxClient; // Create a new client $client = new Avalara\AvaTaxClient('phpTestApp', '1.0', 'localhost', 'sandbox'); $client->withSecurity('myUsername', 'myPassword'); // If I am debugging, I can call 'Ping' to see if I am connected to the server $p = $client->ping(); echo('<h2>Ping</h2>'); echo('<pre>' . json_encode($p, JSON_PRETTY_PRINT) . '</pre>'); if ($p->authenticated == true) { echo '<p>Authenticated!</p>'; } // Create a simple transaction for $100 using the fluent transaction builder $tb = new Avalara\TransactionBuilder($client, "DEFAULT", Avalara\DocumentType::C_SALESINVOICE, 'ABC'); $t = $tb->withAddress('SingleLocation', '123 Main Street', null, null, 'Irvine', 'CA', '92615', 'US') ->withLine(100.0, 1, null, "P0000000") ->create(); echo('<h2>Transaction #1</h2>'); echo('<pre>' . json_encode($t, JSON_PRETTY_PRINT) . '</pre>'); // Now, let's create a more complex transaction! $tb = new Avalara\TransactionBuilder($client, "DEFAULT", Avalara\DocumentType::C_SALESINVOICE, 'ABC'); $t = $tb->withAddress('ShipFrom', '123 Main Street', null, null, 'Irvine', 'CA', '92615', 'US') ->withAddress('ShipTo', '100 Ravine Lane', null, null, 'Bainbridge Island', 'WA', '98110', 'US') ->withLine(100.0, 1, null, "P0000000") ->withLine(1234.56, 1, null, "P0000000") ->withExemptLine(50.0, null, "NT") ->withLine(2000.0, 1, null, "P0000000") ->withLineAddress(Avalara\TransactionAddressType::C_SHIPFROM, "123 Main Street", null, null, "Irvine", "CA", "92615", "US") ->withLineAddress(Avalara\TransactionAddressType::C_SHIPTO, "1500 Broadway", null, null, "New York", "NY", "10019", "US") ->withLine(50.0, 1, null, "FR010000") ->create(); echo('<h2>Transaction #2</h2>'); echo('<pre>' . json_encode($t, JSON_PRETTY_PRINT) . '</pre>'); ?>
统计信息
- 总下载量: 2.87k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 1
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: Apache-2.0
- 更新时间: 2021-05-11