grafeno-sa / grafeno-pagamentos-sdk-php
用于与 grafeno.digital API 集成的 PHP SDK。
Requires
- php: >=6.0.0
- guzzlehttp/guzzle: ^7.0
Requires (Dev)
- pestphp/pest: 1.x-dev
- phpunit/phpunit: ^9.5.5
- squizlabs/php_codesniffer: ^3.3
- symfony/var-dumper: ^3.3
This package is not auto-updated.
Last update: 2024-08-11 01:15:05 UTC
README
统计信息
版本
安装
执行以下命令通过 Composer 安装
> composer require grafeno-sa/grafeno-pagamentos-sdk-php
或者,在克隆此存储库后,只需执行
> composer install
认证和设置环境
通过您的访问令牌和账户号进行 API Grafeno 的认证,点击此处 获取有关认证的信息。
require 'vendor/autoload.php'; use Grafeno\Grafeno; $token = "11111111-2222-3333-4444-555555555555.9aaBBB_CCCCC12345678"; $account_number = "0000000-1"; $grafeno = new Grafeno($token, $account_number, Grafeno::STAGING);
账户
账户功能允许列出与您的 Grafeno 账户关联的所有账户,并允许查询这些账户的所有流水,使您的对账更加简单和动态。
有关此功能的更多信息,请访问我们的文档:账户
列出银行账户
$bank_accounts = $grafeno->bankAccounts()->listAccounts(); print_r($bank_accounts);
列出账户流水
$bank_accounts_transactions = $grafeno->bankAccounts()->listTransactions(); print_r($bank_accounts_transactions);
账单
通过 Grafeno API 发出账单,可以发出具有银行汇票和电汇付款方式的账单,还可以编辑创建的账单并将未付款的账单发送到抗辩。
有关此功能的更多信息,请访问我们的文档:账单
创建账单
$new_charge = $grafeno->charges()->create( [ 'boleto'=> [ 'yourNumber'=> '000001', 'registrationMethod'=> 'online' ], 'paymentMethod'=> 'boleto', 'value'=> '251.11', 'payer'=> [ 'name'=> 'Dwight Schrute', 'address'=> [ 'number'=> '1355', 'zipCode'=> '01452011', 'city'=> 'São Paulo', 'street'=> 'Av Brigadeiro Faria Lima', 'neighborhood'=> 'Jardim Paulistano', 'state'=> 'SP', 'complement'=> 'Schrute Farms' ], 'documentNumber'=> '12345679891', 'email'=> 'dwight@dundermifflin.com' ], 'dueDate'=> '2022-10-12' ]); print_r($new_charge);
查询账单
$charge = $grafeno->charges()->get("3806513a-ab67-4314-ad4f-45d293d6851b"); print_r($charge);
列出所有账单
$page = 1; $per_page = 50; $charges = $grafeno->charges()->list($page, $per_page); print_r($charges);
更新账单
$charge = $grafeno->charges()->update("3806513a-ab67-4314-ad4f-45d293d6851b", [ 'dueDate'=> '2023-12-31', ] ]); print_r($charge);
销账
$charge_paid = $grafeno->charges()->writeOff("3806513a-ab67-4314-ad4f-45d293d6851b"); print_r($charge_paid);
取消账单
$charge_cancelled = $grafeno->charges()->delete("3806513a-ab67-4314-ad4f-45d293d6851b"); print_r($charge_cancelled);
抗议账单
$charge_protest = $grafeno->charges()->protest("3806513a-ab67-4314-ad4f-45d293d6851b"); print_r($charge_protest);
取消抗议
$charge_protest = $grafeno->charges()->cancelProtest("3806513a-ab67-4314-ad4f-45d293d6851b"); print_r($charge_protest);
列出 CNAB
$cnab = $grafeno->charges()->listCNAB("2022-04-12"); print_r($cnab);
受益人
受益人功能允许在您的 Grafeno 账户中注册和查看银行受益人账户。
有关此功能的更多信息,请访问我们的文档:受益人
添加受益人
$beneficiario = $grafeno->beneficiaries()->create( [ "beneficiary" => [ "uuid" => "d81e6f9e-eb26-4b1d-a898-c8f4b3568f9d", "name" => "Teste", "document_number" => "12345679891", "agency" => "1234", "account" => "1234-5", "bank_code" => "341" ] ]); print_r($beneficiario);
列出受益人
$page = 1; $per_page = 50; $beneficiarios = $grafeno->beneficiaries()->list($page, $per_page); print_r($beneficiarios);
转账
转账 API 允许创建、列出和批准或拒绝转账。
有关此功能的更多信息,请访问我们的文档:转账
创建转账
$nova_transferência = $grafeno->transfers()->create( [ "transfer_request" => [ "value" => "300.00", "api_partner_transaction_uuid" => "f3ec33ab-0d82-4e1a-a7e8-e759d6ae98df", "callback_url" => "http://www.my-url-to-callback.com/callback" ], "beneficiary"=> [ "uuid" => "dad91a7a-6bc7-4be1-92c5-d7caf96453e0", "name"=> "Jim Halpert", "document_number" => "123.456.798-91", "bank_code" => "341", "agency" => "0199", "account" => "888888" ] ]); print_r($nova_transferência);
列出待处理转账
$page = 1; $per_page = 50; $transferências = $grafeno->transfers()->list($page, $per_page); print_r($transferências);
批准或拒绝转账
$transfer_uuid = "50d39ac7-bf44-408e-9358-19c2e9ea08f4"; $state = "approve"; $reject_reason = null; $transfer_to_approve = $grafeno->transfers()->update($transfer_uuid, $state, $reject_reason); print_r($transfer_to_approve);
CCB
CCB 是一种金融资产,代表一种只能由金融机构发行的债务,即获得中央银行(BCB)授权发行此类文件的机构。
通过 Grafeno API 可以轻松创建 CCB,并对已执行付款和获得的收据有完全控制。
要获取更多关于此功能的信息,请访问我们的文档: CCB
列出债权人
$creditors = $grafeno->ccb()->listCreditors(); print_r($creditors);
模拟 CCB
$net_value = "200000"; $monthly_interest = "5"; $installments = 36; $first_due_date = "2022-12-05"; $simulate_ccb_values = $grafeno->ccb()->simulate($net_value, $monthly_interest, $installments, $first_due_date); print_r($simulate_ccb_values);
创建 CCB
$ccb = $grafeno->ccb()->create( [ "credorId" => "2fdc0f06-b424-4c79-91b4-965aadb11313", "valorLiquido" => "200000", "jurosMensal" => "5", "parcelas" => 36, "primeiraParcela" => "2022-12-05", "garantiaRecebiveis" => true ]); print_r($ccb);
查看 CCB
$ccb = $grafeno->ccb()->get("ab2de14f-d372-4988-b73f-0ee483dcd096"); print_r($ccb);
列出 CCB
$ccbs = $grafeno->ccb()->list(); print_r($ccbs);
更新 CCB
$ccb_update = $grafeno->ccb()->update("ab2de14f-d372-4988-b73f-0ee483dcd096", [ "parcelas" => 24 ] ); print_r($ccb_update);
创建或更新 CCB 的债务人
$debtor = $grafeno->ccb()->createDebtor("ab2de14f-d372-4988-b73f-0ee483dcd096", [ "name" => "Andy Bernard", "documentNumber" => "55.054.861/0001-44", "phone" => "11999999999", "email" => "the-nard-dog@dcornell.edu", "address" => [ "street" => "Rua", "number" => "42", "state" => "SP", "city" => "São Paulo", "zipCode" => "57035-556" ], "bankAccount" => [ "bankCode" => "341", "agency" => "0196", "account" => "87766-5", "name" => "Andy Bernard", "documentNumber" => "55.054.861/0001-44" ], "signer" => [ "name" => "Andy Bernard", "documentNumber" => "884.850.443-47", "phone" => "11999999999", "email" => "the-nard-dog@dcornell.edu" ] ] ); print_r($debtor);
创建或更新 CCB 的担保人
$guarantor = $grafeno->ccb()->createGuarantor("ab2de14f-d372-4988-b73f-0ee483dcd096", [ "name" => "Dwight Schrute", "documentNumber" => "12345679891", "phone" => "11999999999", "email" => "dwight@dundermifflin.com", "maritalStatus" => "single", "address" => [ "street" => "Rua", "number" => "42", "state" => "SP", "city" => "São Paulo", "zipCode" => "57035-556" ] ]); print_r($guarantor);
发送 CCB 债务人文件
$debtor_file = $grafeno->ccb()->uploadDebtorFiles("ab2de14f-d372-4988-b73f-0ee483dcd096", [ "type" => "social_contract_file", "fileName" => "social_contract_file.pdf", "file" => "JVBERi0xLjMKJcTl8uXrp/Og0MTGCjMgMCBvYmoKPDwgL0ZpbHRlciAvRmxhdGVEZWNvZGUgL0xlbmd0aCAxNzQgPj4Kc3RyZWFtCngBjZA7D8IwDI T3/IrjUSkZSBsnKekKYmGr5A0xVWJA6lDl/0ukL6AsVBkcW9Z95+tQo0N+jgZNRDG82KRRocmNff8xAT5YXRGaFieGHzdTIfLwpgK3ImcmGPADcqP AT1x4UF8t5SptS0+9nuAWH70b5FYlSw5yp3AotIHcz5NM4Q6+/qGJX+PWlfpIYXa/pL3FF7gJI/rI1h7l0lHelmYK6QsjMyXmkOoXXsBPNgplbm RzdHJlYW0KZW5kb2JqCjEgMCBvYmoKPDwgL1R5cGUgL1BhZ2UgL1BhcmVudCAyIDAgUiAvUmVzb3VyY2VzIDQgMCBSIC9Db250ZW50cyAzIDAgUiAvTWVka WFCb3ggWzAgMCA2MTIgNzky==" ]); print_r($debtor_file);
发送 CCB 担保人文件
$guarantor_file = $grafeno->ccb()->uploadGuarantorFiles("ab2de14f-d372-4988-b73f-0ee483dcd096", [ "guarantorId" => "71d2a275-9ac7-43c0-b35a-73722d05f38f", "type" => "identification_document_file", "fileName" => "identification_document_file.pdf", "file" => "JVBERi0xLjMKJcTl8uXrp/Og0MTGCjMgMCBvYmoKPDwgL0ZpbHRlciAvRmxhdGVEZWNvZGUgL0xlbmd0aCAxNzQgPj4Kc3RyZWFtCngBjZA7D8IwDI T3/IrjUSkZSBsnKekKYmGr5A0xVWJA6lDl/0ukL6AsVBkcW9Z95+tQo0N+jgZNRDG82KRRocmNff8xAT5YXRGaFieGHzdTIfLwpgK3ImcmGPADcqP AT1x4UF8t5SptS0+9nuAWH70b5FYlSw5yp3AotIHcz5NM4Q6+/qGJX+PWlfpIYXa/pL3FF7gJI/rI1h7l0lHelmYK6QsjMyXmkOoXXsBPNgplbm RzdHJlYW0KZW5kb2JqCjEgMCBvYmoKPDwgL1R5cGUgL1BhZ2UgL1BhcmVudCAyIDAgUiAvUmVzb3VyY2VzIDQgMCBSIC9Db250ZW50cyAzIDAgUiAvTWVka WFCb3ggWzAgMCA2MTIgNzky==" ]); print_r($guarantor_file);
发送 CCB 进行分析
$ccb = $grafeno->ccb()->sendToAnalysis("ab2de14f-d372-4988-b73f-0ee483dcd096"); print_r($ccb);
取消 CCB
$ccb = $grafeno->ccb()->delete("ab2de14f-d372-4988-b73f-0ee483dcd096"); print_r($ccb);
过滤器
Graphene API 具有多种过滤器,用于确定应返回哪些类型的数据,并简化信息过滤。
可用过滤器
应用过滤器
use Grafeno\Helpers\Filters; $filters = new Filters(); $filter = $filters->applyFilter(Filters::CREATED_AT_GT_EQ, '2022-05-17'); $charges = $grafeno->charges()->list(null, null, $filter); print_r($charges);
支持
在 Grafeno,我们希望为所有与我们联系的客户和合作伙伴提供令人难以置信的体验。鉴于解决集成问题的技术支持需求,我们通过我们的开发者体验团队(DevX)提供支持,您可以通过电子邮件 integracao@grafeno.digital 联系我们,在那里您可以解决与我们的 API 相关的任何疑问。
贡献
此项目得益于所有贡献者。🚀 🚀 🚀 🚀 🚀 🚀
点击此处 访问我们的贡献指南。