crowdproperty / modulr-hmac-php-client
0.4.1
2020-11-23 09:38 UTC
Requires
- php: >=5.4.0
- monolog/monolog: 1.*
- nesbot/carbon: ^1.26.3 || ^2.0
Requires (Dev)
- orchestra/testbench: ^v4.0
- phpunit/phpunit: ^8.3
README
一个处理Modulr API HMAC身份验证的PHP客户端
安装
安装通过Composer完成
composer require crowdproperty/modulr-hmac-php-client
Laravel
更新composer后,将服务提供者添加到config/app.php
文件中的providers数组
'providers' => [ ... CrowdProperty\ModulrHmacPhpClient\ModulrServiceProvider::class, ... ];
使用以下Artisan命令将包配置发布到您的应用程序
php artisan vendor:publish --provider="CrowdProperty\ModulrHmacPhpClient\ModulrServiceProvider"
其他框架/无框架
您可以在不使用Laravel的情况下使用CrowdProperty\ModulrHmacPhpClient。例如,您可以直接调用ModulrApi
类
$api = new CrowdProperty\ModulrHmacPhpClient\ModulrApi(); $api->setApiPath('https://api-sandbox.modulrfinance.com/api-sandbox') ->setApiKey('API_KEY') ->setHmacSecret('HMAC_SECRET') ->setDebugMode(true); ... $api->customers()->createCustomer((string) $customer);
配置
发布命令将生成位于您的config
文件夹中的modulr
配置文件。您可以在.env
文件中更改这些值。
可用的配置选项包括
MODULR_API_NAME - 不需要
MODULR_API_KEY - 由Modulr Finance提供的API密钥
MODULR_HMAC_SECRET - 由Modulr Finance提供的HMAC密钥
MODULR_ENVIRONMENT - 使用哪个环境。默认为sandbox
MODULR_DEBUG - 启用调试模式。默认为false
##示例
<?php namespace App\Http\Controllers; use CrowdProperty\ModulrHmacPhpClient\Facades\ModulrApi; use CrowdProperty\ModulrHmacPhpClient\Model\Address; use CrowdProperty\ModulrHmacPhpClient\Model\Associate; use CrowdProperty\ModulrHmacPhpClient\Model\Customer; class DemoController extends BaseController { public function __construct() { $customer = new Customer(); $customer->setTcsVersion(1); $customer->setExpectedMonthlySpend(0); $customer->setType('INDIVIDUAL'); $associate = new Associate(); $associate->setVerificationStatus('EXVERIFIED'); $associate->setEmail('email@emailaddress.com'); $associate->setPhone('07777777777'); $associate->setFirstName('First'); $associate->setLastName('Last'); $associate->setDateOfBirth('1970-01-18'); $associate->setType('INDIVIDUAL'); $associate->setApplicant(true); $address = new Address(); $address->setAddressLine1('Address1'); $address->setAddressLine2('Address2'); $address->setPostCode('Postcode'); $address->setPostTown('town'); $address->setCountry('GB'); $associate->setHomeAddress($address); $customer->setAssociates([$associate]); $response = ModulrApi::customers()->createCustomer((string) $customer); var_dump($response); } }