Esta seção é para provedores fiscais, não para pontos de venda. Se você está
integrando um PDV ou um totem que consome a numeração do FIRE, o seu caminho é o
guia de integração fiscal.
As duas integrações, que não são a mesma coisa
Existem duas conexões distintas e opostas em torno da numeração fiscal:É um contrato canônico
Ele não descreve o que um provedor em particular faz: é o requisito. Qualquer um que se integre ao Fiscal Gateway implementa este mesmo endpoint, com esta mesma forma. Ele não muda por provedor nem por país. Isso tem uma consequência que convém entender antes de ler o detalhe: Por isso o request levaoperation: "INVOICE" e não documentTypeCode: "01"; store.code
e não establishmentCode; device.externalId e não pointOfEmissionCode.
Os nomes dos campos são os mesmos que os eventos do FIRE já usam
(order.completed, order.invoiced).
Quem já consome eventos não aprende vocabulário novo.
O que precisa ser implementado
Um endpoint por país, síncrono:baseUrl, uma credencial. As rotas que existem são os países
que você atende, então um país novo é adicionado sem tocar nos que já funcionam.
Ele recebe uma venda e devolve os identificadores fiscais para imprimi-la. Está no
caminho crítico da venda — o caixa está esperando — então o orçamento de latência
alvo é de menos de 3 segundos.
Este endpoint produz a representação fiscal: os números para imprimir. O envio ao
órgão e a sua autorização acontecem depois, do lado do provedor, e o desfecho chega pelo
callback. São dois ciclos de vida distintos e o contrato não os mistura.
Por onde seguir
Contrato do endpoint
Autenticação, request, resposta, erros e idempotência. O requisito completo.
O que chega ao integrador
Como aquilo que você devolve acaba trafegando nos eventos do pedido.
Exemplos reais
Requisições e respostas capturadas de uma integração em funcionamento.

