laulamanapps / izettle-api
PayPal API 的 Zettle PHP 客户端
v0.9.4
2020-07-21 18:04 UTC
Requires
- php: >=7.3
- ext-json: *
- guzzlehttp/guzzle: ^6.3
- moneyphp/money: ^3.0
- ramsey/uuid: ^3.7
- werkspot/enum: ^3.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.7
- mockery/mockery: ^1.0
- phpunit/phpunit: ^6.3
This package is auto-updated.
Last update: 2024-09-17 13:28:52 UTC
README
The Zettle by PayPal API 提供了一个简单的集成,以将 Zettle by PayPal API 集成到您的 PHP 项目中。
安装
使用 composer,添加
$ composer require laulamanapps/izettle-api
运行测试
为了确保一切正常工作,您可以运行测试
$ composer test
使用方法
获取一个访问令牌。您需要一个 clientId
和 clientSecret
(要获取一个,请在此处申请 here)。为了提高性能,将访问令牌存储在缓存中(如 Redis)可能是个明智的选择。
use GuzzleHttp\Client; use LauLamanApps\IzettleApi\GuzzleIzettleClient; use LauLamanApps\IzettleApi\IzettleClientFactory; $izettleClient = new GuzzleIzettleClient(new Client(), 'clientId', 'clientSecret'); $accessToken = $izettleClient->getAccessTokenFromUserLogin('john.doe@example.com', 'password'); //-- store $accessToken in cache $productClient = IzettleClientFactory::getProductClient($iZettleClient); $library = $productClient->getLibrary();
使用现有的 AccessToken 进行调用
use GuzzleHttp\Client; use LauLamanApps\IzettleApi\GuzzleIzettleClient; use LauLamanApps\IzettleApi\IzettleClientFactory; $accessToken = ...; //-- Get from cache $izettleClient = new GuzzleIzettleClient(new Client(), 'clientId', 'clientSecret'); $izettleClient->setAccessToken($accessToken); $purchaseClient = IzettleClientFactory::getPurchaseClient($iZettleClient); $library = $purchaseClient->getPurchaseHistory();
升级
从 v0.9 升级到 v1.0
版本 1.0 需要 PHP 8.1 并使用一等枚举。这是一个破坏性变更。
如果您正在使用枚举,请确保将 get
调用替换为实例引用
-if ($payout->getPeriodicity() === Periodicity::get(Periodicity::DAILY)) { +if ($payout->getPeriodicity() === Periodicity::DAILY) {
鸣谢
iZettle Api 已由 LauLaman 开发。