prhost/bling-v3-sdk

SDK PHP de integração com o Bling v3

dev-main 2024-04-26 02:08 UTC

This package is auto-updated.

Last update: 2024-04-26 14:06:40 UTC


README

Latest Version on Packagist Total Downloads

Integração com a API do Bling ERP v3

Instalação

Você pode instalar o pacote via composer:

composer require prhost/bling-v3-sdk

Autenticação

Solicitar autorização

use Prhost\Bling\Bling;

// Instancia o objeto
$bling = new Bling(
    "CLIENT ID",
    "SECRET KEY",
);

// Adiciona a url de callback caso seja diferente da cadastrada no Bling
$bling->setCallbackURL("URL PARA RETORNO");

// Solicita a autenticação
// O usuário será redirecionado para uma página de autenticação do Bling
$bling->requestAuthorization();

Obter token de acesso

$retorno = $bling->requestToken($_GET["code"]);

Dados do $retorno

[
    "access_token" => "TOKEN PARA REQUISIÇÕES",
    "refresh_token" => "TOKEN PARA RENOVAÇÂO DO accessToken",
    "token_validate" => "Data de validade do token em segundos"
]

Renovar token de acesso

// Solicita a atualizacao
$retorno = $bling->refreshToken($refreshToken);

Definindo o token de acesso

// A partir daqui, informe o token toda vez que for utilizar a API
$bling->setAccessToken("Access Token");

Produtos

Listar produtos

//Retorna um array com todos os produtos
$bling->produtos()->get();

//Retorna um array com todos os produtos na pagina 2 com 10 itens por pagina
$bling->produtos()->get(2, 10);

Criando um produto

//Criando um produto simples
$response = $this->bling
    ->produtos()
    ->create([
        'nome'     => 'Bolacha recheada (e não biscoito)',
        'codigo'   => '123456789',
        'tipo'     => 'P', //P - Produto
        'situacao' => 'A', //A - Ativo
        'formato'  => 'S', //S - Simples
    ]);

Atualizando um produto

//Atualizando um produto simples
$response = $this->bling
    ->produtos()
    ->update($id, [
        'nome'     => 'Agora sim biscoito recheado',
        'codigo'   => '123456789',
        'tipo'     => 'P', //P - Produto
        'situacao' => 'A', //A - Ativo
        'formato'  => 'S', //S - Simples
    ]);

Deletando um produto

//Deletando um produto
$this->bling
    ->produtos()
    ->deleteById($id);

Buscando um produto

//Buscando um produto
$this->bling
    ->produtos()
    ->getById($id);

Testando

Para rodar os testes, baixe as dependências de desenvolvimento e execute:

php vendor/bin/codecept run

Lista de rotas

  • - Contatos
  • - Depositos
  • - Produtos
  • - Produtos Categorias
  • - Estoques
  • - Pedidos Vendas
  • - Nfce

Créditos

Licença

The MIT License (MIT). Please see License File for more information.