Biblioteca base utilizada bubbstore/iugu-php-sdk
Biblioteca que realiza integração com a API da Iugu
$ composer require gabrieljperez/iugu-extensionEste SDK extende os seguintes serviços:
Referência da API
Documentação bubbstore/iugu-php-sdk
Para utilizar este SDK, será necessário inserir em seu .env
IUGU_API_KEY=CHAVE_API_IUGU
IUGU_API_TEST_KEY=CHAVE_DE_TEST_API_IUGU
IUGU_ACCOUNT_ID=ID_DA_CONTA_MASTERE em config/services.php
'iugu' => [
'account_id' => env('IUGU_ACCOUNT_ID', ''),
'api_test_key' => env('IUGU_API_TEST_KEY', ''),
'api_key' => env('IUGU_API_KEY', ''),
]Ao realizar use das classes, será necessario fazer o seguinte e instaciar a classe 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');$response = $iugu->marketplace()->list();
// Imprime uma lista de subcontas
echo $response;$response = $iugu->marketplace()->create([
'parametros'
]);
// Imprime o ID da subconta
dd($response);$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); $iugu->master()->createBankVerificantion(['parametros']); $iugu->master()->showBankVerificantion();
Além deste documento é necessário enviar (CNH ou RG) ou CPF caso não possua CNH.
$iugu->master()->requestCreditCardVerification(['parametros']); $iugu->master()->checkCreditCardVerification();Habilita ou Desabilita o 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);Consts
// 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';Biblioteca que realiza integração com a API da Iugu
$ composer require bubbstore/iugu-php-sdkEste SDK suporta os seguintes serviços:
Para utilizar este SDK, será necessário utilizar seu token de acesso de sua conta 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 testConsulte CHANGELOG para obter mais informações sobre o que mudou recentemente.
Consulte CONTRIBUTING para obter mais detalhes.
Se você descobrir quaisquer problemas relacionados à segurança, envie um e-mail para contato@bubbstore.com.br em vez de usar as issues.