gabrieljperez / iugu-extension
2.1
2021-07-19 13:33 UTC
Requires
- php: ~7.4|^8.0
- egcservices/iugu-php-sdk: ^2.0
README
使用的库基础 bubbstore/iugu-php-sdk
与Iugu API集成的库
通过composer安装
$ composer require gabrieljperez/iugu-extension
服务
此SDK扩展以下服务
API参考
bubbstore/iugu-php-sdk文档
配置
要使用此SDK,需要在您的.env文件中添加以下内容
IUGU_API_KEY=CHAVE_API_IUGU IUGU_API_TEST_KEY=CHAVE_DE_TEST_API_IUGU IUGU_ACCOUNT_ID=ID_DA_CONTA_MASTER
并在config/services.php中
'iugu' => [ 'account_id' => env('IUGU_ACCOUNT_ID', ''), 'api_test_key' => env('IUGU_API_TEST_KEY', ''), 'api_key' => env('IUGU_API_KEY', ''), ]
使用类时,需要执行以下操作并实例化iugu类
use gabrieljperez\Iugu\Iugu; use bubbstore\Iugu\Exceptions\IuguException; use bubbstore\Iugu\Exceptions\IuguValidationException; $iugu = new Iugu; // Também possivel setar apitoken na chamada da classe $iugu = new Iugu('apiKey');
MarketPlace
列出子账户
$response = $iugu->marketplace()->list(); // Imprime uma lista de subcontas echo $response;
创建MarketPlace
$response = $iugu->marketplace()->create([ 'parametros' ]); // Imprime o ID da subconta dd($response);
编辑MarketPlace
$response = $iugu->marketplace()->update('SUBCONTA_ID',[ 'parametros' ]); // Imprime a subconta atualizada dd($response);
发送子账户验证
$response = $iugu->marketplace()->requestVerification('SUBCONTA_ID',[ 'parametros' ]); dd($response);
查看子账户
$response = $iugu->marketplace()->show('SUBCONTA_ID'); dd($response);
提款请求
$response = $iugu->marketplace()->requestWithdraw('SUBCONTA_ID'); dd($response);
Master
添加银行账户
$iugu->master()->createBankVerificantion(['parametros']);
验证银行账户发送
$iugu->master()->showBankVerificantion();
申请使用信用卡的验证
⚠️ 社会合同证明文件或活动证明文件是必需的
除此文件外,还需发送(CNH或RG)或 CPF,如果没有CNH。
$iugu->master()->requestCreditCardVerification(['parametros']);
验证信用卡申请
$iugu->master()->checkCreditCardVerification();
配置支付
启用或禁用Pix。
$iugu->master()->settingPix(TRUE or FALSE)
查询收款管理。
$iugu->master()->ConsultManagement()
更改收款管理。
$iugu->master()->updateManagement()
多分割
⚠️ 创建一个新的多分割会覆盖已配置的内容。一个账户的所有已付款账单都将遵守创建的分割规则。
创建分割
$response = $iugu->split()->create(['parametros']); dd($response);
列出分割
$response = $iugu->split()->list(); dd($response);
查看分割
$response = $iugu->split()->search('split_id'); dd($response);
查询分割
$response = $iugu->split()->current('split_id'); dd($response);
计划
列出计划
$response = $iugu->plan->list(); dd($response);
创建计划
$response = $iugu->plan->create(['paramentros']); dd($response);
更改计划
$response = $iugu->plan->update('id', ['paramentros']); dd($response);
删除计划
$response = $iugu->plan->destroy('id'); dd($response);
搜索计划
$response = $iugu->plan->get('id'); dd($response);
通过标识符搜索计划
$response = $iugu->plan->getByIdentifier('identifier'); dd($response);
更改计划
帮助
常量
// Obtenha um array com todos os bancos aceitos pela Iugu const BANKS = [ 'Itaú', 'Bradesco', 'Caixa Econômica', ... ] const PERSON_TYPE = [ 'Pessoa Física', 'Pessoa Jurídica' ]; const PERSON_TYPE_PHYSICAL = 'Pessoa Física'; const PERSON_TYPE_LEGAL = 'Pessoa Jurídica'; const INTERVAL_TYPES = [ 'weeks', 'months' ]; const INTERVAL_TYPE_WEEKS = 'weeks'; const INTERVAL_TYPE_MONTHS = 'months'; const PAYABLE_WITHS = [ 'all', 'credit_card', 'bank_slip', 'pix' ]; const PAYABLE_WITH_ALL = 'all'; const PAYABLE_WITH_CREDIT_CARD = 'credit_card'; const PAYABLE_WITH_BANK_SLIP = 'bank_slip'; const PAYABLE_WITH_PIX = 'pix';
iugu-php-sdk
与Iugu API集成的库
通过composer安装
$ composer require bubbstore/iugu-php-sdk
服务
此SDK支持以下服务
配置
要使用此SDK,需要使用Iugu账户的访问令牌。
use bubbstore\Iugu; use bubbstore\Iugu\Exceptions\IuguException; use bubbstore\Iugu\Exceptions\IuguValidationException; $iugu = new Iugu('SEU_TOKEN');
客户
创建客户
$customer = $iugu->customer()->create([ 'name' => 'Lucas Colette', 'email' => 'lucas@bubb.com.br', ]); // Imprime o ID do cliente echo $customer['id'];
更新客户
$customer = $iugu->customer()->update('ID_CLIENTE', [ 'name' => 'John' ]);
搜索客户
$customer = $iugu->customer()->find('ID_CLIENTE'); var_dump($customer);
删除客户
$iugu->customer()->delete('ID_CLIENTE');
直接收费
通过银行汇票创建收费
$charge = $iugu->charge()->create([ 'method' => 'bank_slip', 'email' => 'lucas@bubb.com.br', 'order_id' => uniqid(), 'payer' => [ 'cpf_cnpj' => '65634052076', 'name' => 'Lucas Colette', 'phone_prefix' => '11', 'phone' => '11111111', 'email' => 'lucas@bubb.com.br', 'address' => [ 'street' => 'Foo Bar', 'number' => '123', 'district' => 'Foo', 'city' => 'Foo', 'state' => 'SP', 'zip_code' => '14940000', ], ], 'items' => [ [ 'description' => 'Item 1', 'quantity' => 1, 'price_cents' => 1000 ], [ 'description' => 'Item 2', 'quantity' => 2, 'price_cents' => 2000 ], ], ]);
使用信用卡支付账单
$charge = $iugu->charge()->create([ 'invoice_id' => '12345678', 'token' => '0000000000000000' // Token gerado através da lib iugu.js ]);
账单
创建账单
$invoice = $iugu->invoice()->create([ 'order_id' => uniqid(), 'email' => 'lucas@bubb.com.br', 'due_date' => '2018-07-14', 'notification_url' => 'https://webhook.site/08703bf2-d408-4f4c-b91c-0bc8e14352b2', 'fines' => false, 'per_day_interest' => false, 'discount_cents' => 500, 'ignore_due_email' => true, 'payable_with' => 'bank_slip', 'items' => [ [ 'description' => 'Item 1', 'quantity' => 1, 'price_cents' => 1000 ], [ 'description' => 'Item 2', 'quantity' => 2, 'price_cents' => 2000 ], [ 'description' => 'Frete', 'quantity' => 1, 'price_cents' => 1000 ], ], 'payer' => [ 'cpf_cnpj' => '65634052076', 'name' => 'Lucas Colette', 'phone_prefix' => '11', 'phone' => '11111111', 'email' => 'lucas@bubb.com.br', 'address' => [ 'street' => 'Foo Bar', 'number' => '123', 'district' => 'Foo', 'city' => 'Foo', 'state' => 'SP', 'zip_code' => '14940000', ], ], ]); // Imprime o ID da fatura echo $invoice['id'];
捕获账单
$iugu->invoice()->capture('ID_FATURA');
搜索账单
$iugu->invoice()->find('ID_FATURA');
退款账单
$iugu->invoice()->refund('ID_FATURA');
取消账单
$iugu->invoice()->cancel('ID_FATURA');
支付方式
创建支付方式
$payment = $iugu->paymentMethod()->create('ID_CLIENTE', [ 'description' => 'Cartão de Crédito', 'token' => '123456', ]); // Imprime o ID do pagamento echo $payment['id'];
更新支付方式
$iugu->paymentMethod()->update('ID_CLIENTE', 'ID_METODO_PAGAMENTO', [ 'description' => 'Outra description', ]);
搜索支付方式
$iugu->paymentMethod()->find('ID_CLIENTE', 'ID_METODO_PAGAMENTO');
删除支付方式
$iugu->paymentMethod()->delete('ID_CLIENTE', 'ID_METODO_PAGAMENTO');
测试
$ composer test
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG
贡献
有关更多详细信息,请参阅 CONTRIBUTING
安全性
如果您发现任何与安全性相关的问题,请通过contato@bubbstore.com.br发送电子邮件,而不是使用问题。