wigleypay / sdk-php
Wigley SDK para PHP
Requires
- php: >=5.6
- guzzlehttp/guzzle: ^6.3.0
- psr/log: ^1.0
Requires (Dev)
- monolog/monolog: ^2.2
- phpunit/phpunit: ^5.7
This package is auto-updated.
Last update: 2024-08-29 05:07:19 UTC
README
WigleyPay 是一个支付方式库。它的目标是简化支付方式的集成,通过解耦与支付方式的集成复杂性来简化使用。
要求
为了运行 SDK,您的系统必须安装 PHP >= 5.6 并编译了 openssl 模块。
第一步
安装
通过 Composer 安装 SDK。
$ composer require wigleypay/sdk-php
证书
客户端可以开发并注册自己的证书存储类。这个类必须实现接口 Wigley\Sdk\Certificate\CertificateStoreInterface。
这样就可以避免向 API 发出额外的请求,同时给客户端提供选择最合适的存储方式和位置的灵活性(数据库、文件系统、API 等)。
WigleyPay\Sdk\Certificate\Certificate 类
代表一个证书,包含其指纹、公钥和/或私钥。
- fingerprint (字符串) SHA1 的十六进制。
- cert (字符串) Base 64 编码的公钥,包含 "-----BEGIN CERTIFICATE-----" 和 "-----END CERTIFICATE-----" 的声明。
- pkey (字符串) Base 64 编码的私钥,包含 "-----BEGIN PRIVATE KEY-----" 和 "END PRIVATE KEY" 的声明。
凭据
通过用户名和签名验证进行身份验证。所有请求都使用由 WigleyPay 发出的私钥进行签名。
用户名
用户名可以通过设置环境变量 WIGLEYPAY_CREDENTIALS_CLIENT 或在实例化 WigleyPay\Sdk\Client 类时通过选项 client 指定。
私钥
私钥的配置可以通过以下三种方式之一实现,无论是作为环境变量还是实例化 WigleyPay\Sdk\Client 类时的代码
选项 1. 指纹:如果您已注册自己的证书存储类,SDK 将调用 getByFingerprint 方法,传递指纹作为参数,以获取存储的私钥。您的类必须返回一个包含从 pfx 文件中提取的私钥的 WigleyPay\Sdk\Certificate\Certificate 类型的对象。
- 环境变量
- WIGLEYPAY_CREDENTIALS_PRIVKEY_FINGERPRINT
- 构造函数选项
- privkey_fingerprint
选项 2. PEM/指纹:如果私钥已从 pfx 文件提取到 pem 文件中,请添加文件路径,SDK 将使用该密钥。
- 环境变量
- WIGLEYPAY_CREDENTIALS_PEM_FILENAME
- WIGLEYPAY_CREDENTIALS_PRIVKEY_FINGERPRINT
- 构造函数选项
- pem_filename
- privkey_fingerprint
选项 3. PFX/密码短语(较慢):如果尚未从 pfx 文件提取数据,可以指定文件路径和安装密码。
- 环境变量
- WIGLEYPAY_CREDENTIALS_PFX_FILENAME
- WIGLEYPAY_CREDENTIALS_PFX_PASSPHRASE
- 构造函数选项
- pfx_filename
- pfx_passphrase
示例:使用环境变量。
<?php // Require the Composer autoloader. require_once 'vendor/autoload.php'; use WigleyPay\Sdk; $client = new Sdk\Client();
示例:在实例化 Client 时指定凭据。
<?php // Require the Composer autoloader. require_once 'vendor/autoload.php'; use WigleyPay\Sdk; $client = new Sdk\Client([ 'client' => $client_name, 'pem_filename' => $pem_filename, 'privkey_fingerprint' => $fingerprint, ]);