roseblade / quickfile-php-sdk
QuickFile会计软件JSON API的PHP SDK
Requires
- php: >=8
- ext-json: *
- guzzlehttp/guzzle: ^7.4
This package is auto-updated.
Last update: 2024-09-12 10:46:15 UTC
README
QuickFile API的包装器。
此库不提供验证。
要求
- PHP 8.0及以后版本
- Guzzle HTTP 7.4及以后版本
- ext-json
Composer
您可以使用Composer安装此库,并使用以下命令:
composer require roseblade/quickfile-php-sdk
然后使用Composer的自动加载库开始使用
require_once('vendor/autoload.php');
手册
如果您不想使用Composer或无法使用,可以下载最新版本并包含init.php文件。
require_once('/path/to/roseblade/quickfile-php-sdk/init.php');
别忘了下载并安装Guzzle。
入门
QuickFile标准API
我们已经在/example/index.php中为您提供了PHP示例文件以开始使用。
要开始,您需要设置API凭证,这些凭证可在您的QuickFile账户中找到。
$creds = [ 'AccountNumber' => 6131400000, 'APIKey' => '000AA000-AAAA-0000-A', 'ApplicationID' => '00000000-AAAA-AAAA-AAAA-00AA00AA00AA' ]; \QuickFile\QuickFile::config($creds);
或单独设置
\QuickFile\QuickFile::setAccountNumber($creds['AccountNumber']); \QuickFile\QuickFile::setAPIKey($creds['APIKey']); \QuickFile\QuickFile::setApplicationID($creds['ApplicationID']);
每个函数都可以通过其自己的类来访问,例如,对于client\search,您将使用
\QuickFile\Client::search([ // Search Data ]);
对于invoice\create
\QuickFile\Invoice::create([ // Invoice Data ]);
这些都与QuickFile API文档中找到的API端点相对应,用下划线替换函数名。
例如
Client_Search>\QuickFile\Client::search();Project_TagCreate>\QuickFile\Project::tagCreate();Supplier_Create>\QuickFile\Supplier::create();
所有头部信息都会为您设置好。您需要根据QuickFile网站上的文档将所有内容作为正文发送。
QuickFile合作伙伴API
QuickFile合作伙伴API允许开发者在QuickFile市场中将他们的工具提供给第三方。这需要在他们的账户中生成一个应用程序,以便您有正确的API端点访问权限。
设置类似于上面的个人API
$creds = [ 'AccountNumber' => 6131400000, 'Token' => 'ABCD1234', 'ProductKey' => '00000000-AAAA-AAAA-AAAA-00AA00AA00AA', 'SecretKey' => '00000000-AAAA-AAAA-AAAA-00AA00AA00AA' ]; \QuickFile\Partner::config($creds);
或单独设置
\QuickFile\Partner::setAccountNumber($creds['AccountNumber']); \QuickFile\Partner::setToken($creds['Token']); \QuickFile\Partner::setProductKey($creds['ProductKey']); \QuickFile\Partner::setSecretKey($creds['SecretKey']);
在Partner类中包含几个静态函数,可以帮助您简化流程
- authenticate():返回一个包含API密钥和ApplicationID的数组。
- setupConfig():自动使用这些变量设置QuickFile库
例如,配置类如上所示
\QuickFile\Partner::authenticate(); // Or, specify the returnArray and verifyProduct // Example below is the default - verify the product and return a bool (rather than array) \QuickFile\Partner::authenticate(true, false); // Or be fancy with names variables \QuickFile\Partner::authenticate(returnArray: true, verifyProduct: false);
这可以与个人API结合使用,快速通过调用setupConfig()设置配置,然后按正常使用API
\QuickFile\Partner::setupConfig(); \QuickFile\Invoice::get([ 'InvoiceID' => 123456 ]);
常见问题解答
此API使用哪个版本?
它使用1.2版本的JSON API
支持哪些方法/端点?
银行
客户
文件
报价
发票
项目(库存项目)
日记
账簿
付款
项目
采购
采购订单
报告
供应商
系统
此库由QuickFile支持吗?
不,这是一个非官方库
数据是如何发送到QuickFile的?
数据始终使用HTTPS通过Guzzle HTTP库发送。Guzzle将使用cURL,但这不是必需的。请参阅Guzzle网站以获取更多信息。
我发现了一个bug,我该在哪里报告它呢?
如果它与API相关的安全漏洞,您可以在QuickFile论坛上发布。如果是库中的bug,请创建一个问题。如果是安全问题,在公开发布之前,请通过我们的网站联系我们。
什么是API合作伙伴?
QuickFile运营一个名为API合作伙伴的计划。
作为API合作伙伴,我们为您提供了一个框架,您可以使用它来告诉其他用户关于您的API产品的信息。
查看他们的用户指南以获取更多信息。
API合作伙伴是如何工作的?
它是通过您获得一个密钥实现的,这个密钥可以与用户的账号编号和令牌(来自QuickFile市场)结合使用。这会生成一个App ID,并提供他们的API密钥,这样您就可以代表他们与他们自己的账户进行交互。