ricardo-tulio-b4x / b4x-integracao-php-sdk
b4x
Requires
- php: ^7.2 || ^8.0
- ext-json: *
- apimatic/core: ~0.3.13
- apimatic/core-interfaces: ~0.1.5
- apimatic/unirest-php: ^4.0.0
Requires (Dev)
- phan/phan: 5.4.5
- phpunit/phpunit: ^7.5 || ^8.5 || ^9.5
- squizlabs/php_codesniffer: ^3.5
This package is not auto-updated.
Last update: 2025-04-05 10:50:29 UTC
README
Introduction
Api B4C x ERP
Documentação da API Rest para possibilitar a integração completa com a loja.
Versão Atual: [v1.0][dist]
Ambientes (produção e sandbox)
A url de acesso a API é a mesma para os dois ambientes, a identificação do tipo de acesso se dará pelo login e senha.
{{URL_API_B4C}}
Autenticação e Padrões
***Autenticação
A API utiliza o padrão “HTTP Basic Authentication”, que consiste em enviar o cabeçalho Authorization com um valor no form
Importante: O cabeçalho de autenticação deve ser informado em todas as requisições enviadas para a API.
###Padrões
Toda as trocas de informações com a API, deve utilizar o padrão JSON (JavaScript Object Notation). Por isso, cada requisi
#Headers do formato de dados
Accept: application/json
Content-Type: application/json
###Encoding (charset)
Os dados enviados (via POST ou PUT) devem estar de acordo com o charset UTF-8.
Caso seja utilizado um encoding diferente, será retornado um erro de tipo de dados não suportados (HTTP Status 415).
[IMPORTANTE] - Mesmo que o header "Accept" indique o uso do charset UTF-8, se os dados do body não estiverem no encoding
Códigos de Retorno (http status)
A Api utiliza o HTTP status code para a resposta de toda requisição.
Código | Descricao |
---|---|
200 | Sucesso |
201 | Criado |
400 | Requisição inválida |
401 | Credenciais inválidas |
403 | Permissão negada ao recurso |
404 | A URL solicitada ou o recurso não existe |
405 | Método não permitido para o recurso |
409 | O recurso que está sendo criado já existe |
500 | Erro desconhecido. Por favor informe para o email suporte@b4commerce.com.br sobre o problema. |
Install the Package
Run the following command to install the package and automatically add the dependency to your composer.json file:
composer require "ricardo-tulio-b4x/b4x-integracao-php-sdk:1.0.1"
Or add it to the composer.json file manually as given below:
"require": { "ricardo-tulio-b4x/b4x-integracao-php-sdk": "1.0.1" }
You can also view the package at: https://packagist.org/packages/ricardo-tulio-b4x/b4x-integracao-php-sdk#1.0.1
Test the SDK
Unit tests in this SDK can be run using PHPUnit.
- First install the dependencies using composer including the
require-dev
dependencies. - Run
vendor\bin\phpunit --verbose
from commandline to execute tests. If you have installed PHPUnit globally, run tests usingphpunit --verbose
instead.
You can change the PHPUnit test configuration in the phpunit.xml
file.
Initialize the API Client
Note: Documentation for the client can be found here.
The following parameters are configurable for the API Client:
Parameter | Type | Description |
---|---|---|
environment |
Environment |
The API environment. Default: Environment.PRODUCTION |
timeout |
int |
Timeout for API calls in seconds. Default: 0 |
enableRetries |
bool |
Whether to enable retries and backoff feature. Default: false |
numberOfRetries |
int |
The number of retries to make. Default: 0 |
retryInterval |
float |
The retry time interval between the endpoint calls. Default: 1 |
backOffFactor |
float |
Exponential backoff factor to increase interval between retries. Default: 2 |
maximumRetryWaitTime |
int |
The maximum wait time in seconds for overall retrying requests. Default: 0 |
retryOnTimeout |
bool |
Whether to retry on request timeout. Default: true |
httpStatusCodesToRetry |
array |
Http status codes to retry against. Default: 408, 413, 429, 500, 502, 503, 504, 521, 522, 524 |
httpMethodsToRetry |
array |
Http methods to retry against. Default: 'GET', 'PUT' |
basicAuthCredentials |
BasicAuthCredentials |
The Credentials Setter for Basic Authentication |
The API client can be initialized as follows:
$client = ApiB4CClientBuilder::init() ->basicAuthCredentials( BasicAuthCredentialsBuilder::init( 'username', 'password' ) ) ->environment(Environment::PRODUCTION) ->build();
Authorization
This API uses the following authentication schemes.
List of APIs
- Entregasdo Pedido
- Eventosda Entrega
- Eventos Pedidos
- Nf Pedidos
- Filiais Faturamento
- Produtosvinculofiliais
- Observações Pedidos
- Categorias
- Marcas
- Produtos
- Pedidos
- Campanha
- Oferta
- Quantidade
- Preços
- Filiais
- Usuarios
- Endereco
- Descontos
- Clientes
- Boleto
- Pix
- Tickets
- Personalizacao