Download the PHP package risetechapps/orchestrator-link-for-laravel without Composer
On this page you can find all versions of the php package risetechapps/orchestrator-link-for-laravel. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package orchestrator-link-for-laravel
Orchestrator Link for Laravel
Package Laravel para comunicação com a API Orchestrator da RiseTech. Fornece acesso a dados de CPF, CNPJ, CEP, bancos, países, estados, cidades, clima, feriados, calendário, WHOIS, FIPE, câmbio, ações B3, NCM e envio de encomendas via Melhor Envio.
Instalação
Configuração
Token de acesso
Adicione ao seu .env:
Publicar config (opcional)
Isso cria config/orchestrator-link.php:
Migration (Shipping)
A migration é carregada automaticamente. Para rodar:
Para publicar e personalizar:
Rotas proxy (opcional)
Para expor os endpoints como proxy na sua aplicação:
Isso registra as rotas abaixo no seu app:
| Método | Rota | Serviço |
|---|---|---|
| GET | /services/cpf/{cpf}/{date?} |
CPF |
| GET | /services/cnpj/{cnpj} |
CNPJ |
| GET | /services/zip_code/{zip_code} |
CEP |
| GET | /services/banks |
Bancos |
| GET | /services/countries |
Países |
| GET | /services/country/{country} |
Info de país |
| GET | /services/states/{country} |
Estados |
| GET | /services/states/{country}/{state} |
Info de estado |
| GET | /services/cities/{country}/{state} |
Cidades |
| GET | /services/holidays/{year}/{state} |
Feriados |
| GET | /services/weather/{city}/{country}/{state?} |
Clima |
| GET | /services/domain/{domain} |
WHOIS |
| POST | /services/calendar |
Calendário |
| GET | /services/fipe/{type}/brands |
Marcas FIPE |
| GET | /services/fipe/{type}/{brand}/models |
Modelos FIPE |
| GET | /services/fipe/{type}/{brand}/{model}/years |
Anos FIPE |
| GET | /services/fipe/{type}/{brand}/{model}/{year} |
Preço FIPE |
| GET | /services/exchange/{from}/{to} |
Câmbio |
| GET | /services/stocks/{symbol} |
Ações B3 |
| GET | /services/ncm/search |
NCM por descrição |
| GET | /services/ncm/{code} |
NCM por código |
| GET | /services/shipping/carriers |
Transportadoras |
| POST | /services/shipping/calculate |
Calcular frete |
| POST | /services/shipping/cart |
Adicionar ao carrinho |
| DELETE | /services/shipping/cart/{id} |
Remover do carrinho |
| POST | /services/shipping/checkout |
Checkout |
| POST | /services/shipping/labels/generate |
Gerar etiquetas |
| POST | /services/shipping/labels/print |
Imprimir etiquetas |
| POST | /services/shipping/labels/cancel |
Cancelar etiqueta |
| GET | /services/shipping/orders |
Listar pedidos |
| GET | /services/shipping/orders/search |
Pesquisar pedido |
| GET | /services/shipping/orders/{id} |
Detalhes do pedido |
| POST | /services/shipping/track |
Rastrear envio |
Macros de resposta
Movidas a partir da v2.0.0. As macros
jsonSuccess,jsonError,jsonGoneejsonNotValidatednão são mais registradas por este package — passaram a ser providas por outro package risetechapps/risetools.
Formato de retorno
Todos os métodos do helper orchestrator() retornam:
success => false com data => [] é o retorno de qualquer falha — os métodos nunca lançam exceção para não derrubar a request (degradação graciosa). Cai nesse retorno quando:
| Situação | Comportamento | Log |
|---|---|---|
| Timeout / DNS / conexão recusada | errorResponse (não vira HTTP 500) |
warning |
| HTTP 5xx (orchestrator quebrado) | errorResponse |
error |
| HTTP 4xx (401/404/429...) | errorResponse |
warning (com status + corpo) |
ORCHESTRATOR_TOKEN não configurado |
errorResponse sem sair pra rede |
error |
| Corpo não-JSON / shape inesperado | success:false, data:[] (não quebra) |
— |
Sempre confira success antes de usar data.
Resiliência (timeouts / retry)
connectTimeout5s +timeout15s por tentativa — a chamada roda dentro da request web e não prende o worker.- Retry só em GET (idempotente): 2 re-tentativas em falha de rede. POST/PUT/PATCH/DELETE não repetem (evita duplicar checkout/etiqueta).
Cache
Respostas de GET com sucesso são cacheadas por tipo de volatilidade. POST e falhas nunca são cacheados. Invalidação é por TTL (sem flush manual).
| TTL | Endpoints |
|---|---|
| 30 dias | bancos, países, estados, cidades, feriados, FIPE (marcas/modelos/anos/preço), NCM, CEP |
| 1 dia | CNPJ, transportadoras (getCarriers) |
| 1 hora | domínio (WHOIS) |
| sem cache | CPF, clima, câmbio, ações B3, calendário e todas as operações de shipping (carrinho/checkout/etiquetas/pedidos/rastreio) |
Em ambiente multi-tenant, o cache é isolado por tenant — cada tenant busca o dado uma vez por TTL. Com os TTLs longos, a redundância é desprezível.
CPF
CNPJ
CEP
Bancos
Países / Estados / Cidades
Feriados
Clima
Domínio (WHOIS)
Calendário
Combina feriados + previsão do tempo por período.
FIPE (Tabela de Veículos)
Tipos disponíveis: cars, motorcycles, trucks
Sufixo do ano:
-1Gasolina ·-2Álcool ·-3Diesel
Câmbio
Ações B3
NCM (Nomenclatura Comum do Mercosul)
Shipping — Melhor Envio
Transportadoras disponíveis
Calcular Frete (Builder)
Adicionar ao Carrinho (Builder)
Remover do Carrinho
Checkout (Pagar com saldo da carteira ME)
Requer saldo na carteira do Melhor Envio. No sandbox há R$10.000 de saldo virtual.
Gerar Etiqueta
Imprimir / Obter URL do PDF
Cancelar Etiqueta
Etiquetas já postadas na transportadora não podem ser canceladas.
Listar Pedidos
Status disponíveis: pending · released · posted · delivered · canceled · Not Delivered
Detalhes de um Pedido
Pesquisar Pedido
Rastrear Envio
Model Shipment
Ao usar ->save() no builder, o envio é persistido na tabela orchestrator_shipments.
Fluxo Completo de Envio
Referência de Métodos
| Método | Descrição |
|---|---|
getCPF($cpf, $date?) |
Consulta CPF |
getCNPJ($cnpj) |
Consulta CNPJ |
getZipCode($cep) |
Consulta CEP |
getBanks() |
Lista bancos |
getCountries() |
Lista países |
getCountryInfo($country) |
Info de um país (nome, ISO2 ou ISO3) |
getStates($country) |
Estados de um país |
getStateInfo($country, $state) |
Info de um estado |
getCities($country, $state) |
Cidades de um estado |
getHolidays($state, $year) |
Feriados estaduais e nacionais |
getWeather($city, $country, $state?) |
Previsão do tempo |
getDomain($domain) |
WHOIS de domínio |
getCalendar($country, $state, $city, $start, $end) |
Calendário (feriados + clima) |
getFipeBrands($type) |
Marcas FIPE (cars/motorcycles/trucks) |
getFipeModels($type, $brand) |
Modelos FIPE de uma marca |
getFipeYears($type, $brand, $model) |
Anos disponíveis para um modelo |
getFipePrice($type, $brand, $model, $year) |
Preço FIPE |
getExchange($from, $to) |
Cotação de câmbio |
getStock($symbol) |
Cotação de ação B3 ou índice |
getNcm($code) |
NCM por código (8 dígitos) |
searchNcm($term) |
NCM por descrição |
getCarriers() |
Transportadoras disponíveis no Melhor Envio |
buildCalculate() |
Builder fluente para cálculo de frete |
buildOrder() |
Builder fluente para criação de pedido |
addToCart($data) |
Adicionar ao carrinho (raw, sem builder) |
removeFromCart($id) |
Remover do carrinho |
checkout($orderIds) |
Pagar fretes (string ou array) |
generateLabels($orderIds) |
Gerar etiquetas (string ou array) |
printLabels($orderIds, $mode?) |
URL do PDF da etiqueta (public/private) |
cancelLabel($id, $description?) |
Cancelar etiqueta |
listOrders($status?, $page?) |
Listar pedidos com filtro e paginação |
getOrder($id) |
Detalhes de um pedido |
searchOrder($query) |
Pesquisar pedido por rastreio, protocolo, CPF/CNPJ ou ID |
trackShipment($orderIds) |
Rastrear envio (string ou array) |
Requisitos
- PHP >= 8.3
- Laravel >= 12
💡 Desenvolvido por Rise Tech