checkout / checkout-sdk-php-beta
此包已被弃用且不再维护。未建议替代包。
Checkout.com PHP SDK
2.0.0-beta2
2022-02-09 16:41 UTC
Requires
- php: >=7.4
- ext-fileinfo: *
- ext-json: *
- guzzlehttp/guzzle: ^7.4.1
- monolog/monolog: ^2.3
- symfony/deprecation-contracts: ^2.5
- symfony/polyfill-php80: ^1.23.1
Requires (Dev)
- mockery/mockery: ^1.4
- phpstan/extension-installer: ^1.1.0
- phpstan/phpstan: ^1.2.0
- phpstan/phpstan-deprecation-rules: ^1.0.0
- phpunit/phpunit: ^9.5.10
- symfony/phpunit-bridge: ^6.0.0
This package is auto-updated.
Last update: 2022-03-09 16:59:10 UTC
README
这是一个临时的Checkout PHP SDK开发项目,已归档并转移到官方仓库。
入门
软件包和源代码可以从Packagist获取。
Composer
"require": { "php": ">=7.4", "checkout/checkout-sdk-php-beta": "version" }
请查看GitHub发行版以获取所有可用版本。
如何使用SDK
此SDK可以使用Checkout提供的两对不同对API密钥进行使用。然而,使用不同的API密钥意味着使用特定的API功能。请参考下表以了解此SDK中可使用的密钥类型。
账户系统 | 公钥(示例) | 私钥(示例) |
---|---|---|
默认 | pk_g650ff27-7c42-4ce1-ae90-5691a188ee7b | sk_gk3517a8-3z01-45fq-b4bd-4282384b0a64 |
四个 | pk_pkhpdtvabcf7hdgpwnbhw7r2uic | sk_m73dzypy7cf3gf5d2xr4k7sxo4e |
注意:沙箱密钥分别具有test_
或sbox_
标识符,分别对应默认和四个账户。
请勿分享或发布您的Checkout凭证。
如果您没有自己的API密钥,可以在此处注册测试账户这里。
默认
默认密钥客户端实例化可以如下进行
$builder = CheckoutDefaultSdk::staticKeys(); $builder->setPublicKey("public_key"); $builder->setSecretKey("secret_key"); $builder->setEnvironment(Environment::sandbox()); // or production() $builder->setHttpClientBuilder(); // optional, for a custom HTTP client $defaultApi = $builder->build(); $paymentsClient = $defaultApi->getPaymentsClient(); $paymentsClient->refundPayment("payment_id");
四个
如果您的密钥对匹配Four类型,以下是SDK的使用方式
$builder = CheckoutFourSdk::staticKeys(); $builder->setPublicKey("public_key"); $builder->setSecretKey("secret_key"); $builder->setEnvironment(Environment::sandbox()); // or production() $builder->setHttpClientBuilder(); // optional, for a custom HTTP client $fourApi = $builder->build(); $paymentsClient = $fourApi->getPaymentsClient(); $paymentsClient->refundPayment("payment_id");
SDK支持客户端凭据OAuth,初始化如下
$builder = CheckoutFourSdk::oAuth(); $builder->clientCredentials("client_id", "client_secret"); $builder->scopes([FourOAuthScope::$Files, FourOAuthScope::$Flow]); // array of scopes $builder->setEnvironment(Environment::sandbox()); // or production() $builder->setHttpClientBuilder(); // optional, for a custom HTTP client $fourApi = $builder->build(); $paymentsClient = $fourApi->getPaymentsClient(); $paymentsClient->refundPayment("payment_id");
PHP设置
对于需要文件上传(争议或市场)的操作,必须在php.ini
中启用extension=fileinfo
配置。
异常处理
所有不符合2**状态代码的API响应都将导致CheckoutApiException
异常。如果可用,异常封装了requestId
、httpStatusCode
和errorDetails
映射。
有关Checkout API和SDK的更多文档可在以下位置获取
从源代码构建
从GitHub检出代码后,可以使用composer构建项目
composer update
执行集成测试需要设置以下环境变量
- 对于默认账户系统:
CHECKOUT_PUBLIC_KEY
和CHECKOUT_SECRET_KEY
- 对于四个账户系统:
CHECKOUT_FOUR_PUBLIC_KEY
和CHECKOUT_FOUR_SECRET_KEY
- 针对四个账户系统(OAuth):
CHECKOUT_FOUR_OAUTH_CLIENT_ID
及CHECKOUT_FOUR_OAUTH_CLIENT_SECRET
行为准则
请参阅 行为准则