wisereducacao / vindi-php
PHP Vindi SDK。
dev-master / 1.0.x-dev
2020-03-25 12:18 UTC
Requires
- php: >=5.5.0
- guzzlehttp/guzzle: ^6.0
Requires (Dev)
- phpunit/phpunit: 4.*
- scrutinizer/ocular: ~1.1
- squizlabs/php_codesniffer: 3.*
This package is not auto-updated.
Last update: 2021-09-24 14:03:09 UTC
README
Vindi - SDK PHP
描述
本包包含一个用于循环API的PHP SDK,该API由Vindi提供。
要求
- PHP >=5.5.19;
- 由证书颁发机构签名的数字证书HTTPS;
- 在Vindi上有活动账户。
安装
通过Composer
composer require vindi/vindi-php
测试
composer test
示例
require __DIR__.'/vendor/autoload.php';
// Coloca a chave da Vindi (VINDI_API_KEY) no environment do PHP.
putenv('VINDI_API_KEY=SUA_CHAVE_DA_API');
// Instancia o serviço de Customers (Clientes)
$customerService = new Vindi\Customer;
// Cria um novo cliente:
$customer = $customerService->create([
'name' => 'Teste da Silva',
'email' => 'contato@vindi.com.br',
]);
echo "Novo cliente criado com o id '{$customer->id}'.<br />";
// Busca todos os clientes, ordenando pelo campo 'created_at' descendente.
$customers = $customerService->all([
'sort_by' => 'created_at',
'sort_order' => 'desc'
]);
// Para cada cliente da array de clientes
foreach ($customers as $customer) {
$customerService->update($customer->id, [
'notes' => 'Este cliente foi atualizado pelo SDK PHP.',
]);
echo "O cliente '{$customer->name}' foi atualizado!<br />";
}
有关现有服务、要发送的字段和其他信息的更多详细信息,请查看我们的API交互页面。
响应:如需了解每个请求的响应的更多详细信息,请使用getLastResponse
方法。如果没有执行任何请求,则此方法将返回NULL
。
// Retorna os dados da última resposta recebida dos servidores da Vindi
$lastResponse = $customerService->getLastResponse();
// Retorna o corpo da requisição
$body = (string) $customerService->getLastResponse()->getBody();
// Retorna o HTTP Status Code
$lastResponse->getStatusCode();
// Retorna o todos os headers
$lastResponse->getHeaders();
// Retorna um único header
$lastResponse->getHeader('Header-Name');
Webhooks
本包使得解析Vindi发送的webhooks成为可能。为此,提供一个可由网络访问的URL/路由,并在其中使用Vindi\WebhookHandler
类来解析事件。
require __DIR__.'/vendor/autoload.php';
// Instancia o objeto que irá lidar com os Webhooks.
$webhookHandler = new Vindi\WebhookHandler();
// Pega o evento interpretado pelo objeto.
$event = $webhookHandler->handle();
// Decide a ação com base no evento
switch ($event->type) {
case 'subscription_canceled':
// Lidar com o evento de Assinatura cancelada.
break;
case 'subscription_created':
// Lidar com o evento de Assinatura efetuada
break;
case 'charge_rejected':
// Lidar com o evento de Cobrança rejeitada
break;
case 'bill_created':
// Lidar com o evento de Fatura emitida
break;
case 'bill_paid':
// Lidar com o evento de Fatura paga
break;
case 'period_created':
// Lidar com o evento de Período criado
break;
case 'test':
// Lidar com o evento de Teste da URL
break;
default:
// Lidar com falhas e eventos novos ou desconhecidos
break;
}
疑问
如需有关平台或API的信息,请访问Vindi客服。
贡献
请阅读CONTRIBUTING.md文件。如果您有任何建议或需要报告bug,请通过issues与我们联系。
安全
如果您发现任何与安全相关的问题,请通过发送电子邮件至seguranca@vindi.com.br,而不是使用issues。
变更日志
有关每个版本的详细信息可以在CHANGELOG.md中找到。
致谢
许可证
GNU GPLv3。有关更多信息,请参阅许可证文件。