brookside/avalara-tax-rates-api

Avalara的Tax Rates API的简单PHP封装

1.1.0 2017-06-15 17:50 UTC

This package is not auto-updated.

Last update: 2024-09-28 19:20:35 UTC


README

这是一个用于Avalara免费销售税率API的简单PHP封装。

AvaTax开发者账户要求

您需要注册Avalara开发者账户和API密钥。更多信息可以在developer.avalara.com/avatax/signup找到。

截至2017年6月15日,Avalara已退役了基于此API的免费税率API。为了使用(或继续使用)此API,您需要注册一个免费试用账户,这将为您提供持续访问免费税率API的权限。

Avalara的更多详细信息

“试用版提供30天在Sandbox(测试)环境中的完整AvaTax产品功能。这包括继续支持API访问税率。30天后,产品试用功能将仅限于免费税率API功能。”

安装

使用 Composer

composer require brookside/avalara-tax-rates-api:dev-master

或直接require TaxRates.php 文件

require 'path/to/TaxRates.php';

用法

use Brookside\TaxRates\TaxRates;

$tr = new TaxRates([
    'username' => 'YOUR_AVALARA_USERNAME',
    'password' => 'YOUR_AVALARA_PASSWORD',
]);

可以通过邮政编码检索税率

$rates = $tr->getRates(74114);

为了更准确的税率,您可以传递尽可能多的地址信息。下面使用所有可用字段

$rates = $tr->getRates(array(
    'street'  => '4145 E. 21st St',
    'city'    => 'Tulsa',
    'state'   => 'OK',
    'country' => 'USA',
    'postal'  => 74114,
));

结果

结果将根据位置而变化,但您将始终返回一个包含两个键的数组:totalRateratesrates 键将包含最多三个税率——城市、州和县。

示例结果

请注意,新的API不包括像旧API那样的实际州、县或市名称。

Array
(
    [totalRate] => 8.517
    [rates] => Array
        (
            [0] => Array
                (
                    [rate] => 4.5
                    [name] => OK STATE TAX
                    [type] => State
                )

            [1] => Array
                (
                    [rate] => 0.367
                    [name] => OK COUNTY TAX
                    [type] => County
                )

            [2] => Array
                (
                    [rate] => 3.65
                    [name] => OK CITY TAX
                    [type] => City
                )

        )

)