A carteira de clientes da Juno foi comprada pela iugu, e, por isso, este pacote se tornará obsoleto.
juno-sdk-php-laravel foi criado e é mantido pela equipe Jetimob. É um SDK utilizado para interagir com a API da Juno de forma simples e direta. A complexidade de autenticação OAuth2 é abstraída pelo pacote http-php-laravel, também desenvolvido dentro da Jetimob.
Os comandos abaixo devem ser executados dentro da pasta raíz do projeto onde o pacote deve ser instalado.
ATENÇÃO!
A versão
2.x
não é compatível com as versões inferiores!
Utilizando o composer:
composer require jetimob/juno-sdk-php-laravel
Para começar, as configurações do pacote devem ser publicadas através do comando:
php artisan juno:install
Este comando irá criar o arquivo de configuração juno.php
no diretório config
para que você possa modificar conforme
a necessidade do seu projeto.
As únicas configurações obrigatórias que precisam ser especificadas, são:
- resource_token
- oauth_client_id
- oauth_client_secret
Mais informações sobre as demais configurações podem ser encontradas no próprio arquivo.
Muitos dos recursos também necessitam de um token de recurso, X-Resource-Token que identifica a conta digital que deverá ser utilizada durante a execução de uma operação. Cada conta digital tem o seu próprio token de recurso. Contas digitais criadas via API incluem o token de recurso na resposta da requisição. Para obter o token de recurso de uma conta digital já existente ou para redefinir o token de recurso, o cliente precisa acessar o painel do cliente Juno e realizar esta operação na aba Integração, opção Token Privado.
O resource_token
é utilizado como valor padrão para o header 'X-Resource-Token' que identifica uma conta
dentro da API da Juno. Esse valor pode ser sobrescrito programaticamente utilizando o método using
de cada API.
Ex.:
Juno::balance()->using('[Novo X-Resource-Token]')->get();
Instruções para obtenção aqui.
Instruções para obtenção aqui.
Sempre que for chamar qualquer api do pacote *juno-sdk-php-laravel, utilize o namespace Jetimob\Juno\Facades\Juno
ou, simplesmente, Juno
. O namespace Juno
é registrado automaticamente pelo Laravel, ou seja, a importação pode
ser feita apenas com use Juno;
no topo de um arquivo.
Qualquer uma das implementações de API encontradas na configuração api_impl
podem ser acessadas diretamente através
da façade Juno
, invocando um método de mesmo nome da chave de configuração. Em outras palavras, a chave account
, que
representa a classe \Jetimob\Juno\Api\Account\AccountApi::class
, dentro do vetor api_impl
do arquivo de
configurações pode ser invocada com \Juno::account()
. O retorno desta função é uma instância de
\Jetimob\Juno\Api\Account\AccountApi::class
(definido pelo arquivo de configuração).
juno-sdk-php-laravel está licenciado sob The MIT License (MIT).
Mais informações sobre a API da Juno podem ser encontradas aqui e aqui (PDF detalhado).