德国邮政 / sdk-api-oneclickforrefund
德国邮政 INTERNETMARKE 1C4R API SDK
1.2.0
2024-05-02 16:01 UTC
Requires (Dev)
- fig/log-test: ^1.1.0
- phpstan/phpstan: ^1.5.0
- phpunit/phpunit: ^9.5.0
- rector/rector: *
- squizlabs/php_codesniffer: ^3.4
This package is auto-updated.
Last update: 2024-08-27 12:06:53 UTC
README
DP OneClickForRefund API SDK 包提供以下网络服务的接口
- OneClickForRefund
要求
系统要求
- PHP 8.1+ with SOAP 扩展
包要求
psr/log
: PSR-3 日志接口
开发包要求
phpunit/phpunit
: 测试框架
安装
$ composer require deutschepost/sdk-api-oneclickforrefund
卸载
$ composer remove deutschepost/sdk-api-oneclickforrefund
测试
$ ./vendor/bin/phpunit -c test/phpunit.xml
功能
DP OneClickForRefund API SDK 支持以下功能
- 取消代金券
该网络服务需要一个认证令牌。库检索令牌,但在进程终止后丢弃它。为了重用令牌,可以传递持久存储(持久认证令牌)。
取消代金券
提交 INTERNETMARKE 印章的退货。
公共API
库中适合消费的组件包括
- 服务
- 服务工厂
- 退款服务
- 数据传输对象
- 凭证
用法
$shopOrderId = '1234567890'; $voucherIds = ['A0031C630F0000000135', 'A0031C630F0000000398']; $logger = new \Psr\Log\Test\TestLogger(); $tokenStorage = new \DeutschePost\Sdk\OneClickForRefund\Auth\TokenStorage(); $credentials = new \DeutschePost\Sdk\OneClickForRefund\Auth\Credentials( $username = 'max.mustermann@example.com', $password = 'portokasse321', $partnerId = 'PARTNER_ID', $partnerKey = 'SCHLUESSEL_DPWN_MEINMARKTPLATZ', $keyPhase = 1, $tokenStorage ); $serviceFactory = new \DeutschePost\Sdk\OneClickForRefund\Service\ServiceFactory(); $service = $serviceFactory->createRefundService($credentials, $logger); // cancel all the original order's vouchers OR $service->cancelVouchers($shopOrderId); // cancel some of the original order's vouchers $service->cancelVouchers($shopOrderId, $voucherIds);
持久认证令牌
为了在令牌的生命周期内重用它,可以使用自定义令牌存储创建凭证对象。实现数据库、缓存或其他任何合适来源的访问。
用法
// PersistentTokenStorage implements \DeutschePost\Sdk\OneClickForRefund\Api\TokenStorageInterface $tokenStorage = new \My\OneClickForRefund\Auth\PersistentTokenStorage(); $credentials = new \DeutschePost\Sdk\OneClickForRefund\Auth\Credentials( $username = 'max.mustermann@example.com', $password = 'portokasse321', $partnerId = 'PARTNER_ID', $partnerKey = 'SCHLUESSEL_DPWN_MEINMARKTPLATZ', $keyPhase = 1, $tokenStorage );