teamzac/zactax-php

ZacTax API 的官方 PHP 客户端

1.0 2017-04-28 14:18 UTC

This package is auto-updated.

Last update: 2024-09-19 10:11:22 UTC


README

这是 ZacTax API 的官方 PHP 客户端。虽然目前处于 1.0 版本,但库中可能存在一些重大(可能是破坏性)的更改。更多信息请参见下方的路线图。

安装

推荐的方法是通过 Composer 安装

composer require teamzac/zactax-php

用法

主要的入口点是 TeamZac\ZacTax\ZacTax 对象。构造函数接受一个选项数组,其中一些选项在实例化后可以流畅地设置

$zactax = new TeamZac\ZacTax\ZacTax([
    'apiToken' => 'YOUR-API-TOKEN-HERE',
    'jurisdictionId' => 'JURISDICTION-ID*',
    'debug' => false, // set to true to debug HTTP calls
]);

注意:* 法域 ID 是推荐的,但并非必需,因为当使用的 API 令牌仅具有对单个法域的访问权限时。然而,一些用户将能够访问多个法域,在这种情况下,强烈建议您设置此选项以确保您获得正确的数据。

流畅设置选项

如果需要,您也可以在实例化后流畅地设置一些选项

$zactax->setApiToken('1234')
    ->setJurisdictionId('jurisdiction-id')
    ->debug();

访问资源

您可以通过 TeamZac\ZacTax\ZacTax 实例的属性来访问这些资源

$zactax->industries;
$zactax->jurisdictions;
$zactax->regions;
$zactax->taxpayers;
$zactax->users;

这些资源提供了类似的接口,尽管它们并不完全相同,因为它们并不都具有相同的信息或详细程度。这些资源的常见端点是

$resource->all(); // fetch all records
$resource->find($id); // fetch a specific record

以下是对每个资源的端点的快速列表。

行业

$zactax->industries->payments($industryId, $options);
$zactax->industries->topTaxpayers($industryId);

地区

$zactax->regions->payments($regionId, $options);
$zactax->regions->outlets($regionId);

纳税人

$zactax->taxpayers->payments($taxpayerId, $options);
$zactax->taxpayers->search($query, $options);

用户

$zactax->industries->me();
$zactax->industries->myJurisdictions();

我们将随着时间的推移不断完善整个 API,因为这里只涵盖 ZacTax 提供的数据的一个子集。

路线图

  • 继续完善所有可用的端点,以提供 100% 的覆盖范围
  • 从 API 调用中返回比当前返回的简单对象和数组更多的资源。例如,taxpayers->find() 调用应返回一个 Taxpayer 实例,该实例可以具有如 ->getPayments() 和 ->updateName() 等方法。
  • 提高测试覆盖率

问题

如果您发现任何问题或问题,请报告它们。对于安全问题,请通过 support[at]zactax.com 发送电子邮件。