O que o ERP precisa ter para a rebaixa
Os endpoints de promoção que o seu ERP expõe para o BIX publicar a rebaixa direto no PDV e encerrá-la no fim da vigência.
A rebaixa pode chegar ao PDV de duas formas:
| Forma | Quem chama | Quando usar |
|---|---|---|
| O ERP busca | O seu ERP lê as rebaixas na API pública e confirma (Rebaixa de preço por validade) | O ERP já tem uma rotina de integração que roda de tempos em tempos |
| O BIX publica | O BIX chama os endpoints de promoção do ERP, descritos nesta página | O ERP tem API de promoção e o cliente quer o preço no caixa logo depois da etiqueta |
Na segunda forma, o BIX cria a promoção assim que a etiqueta é impressa e a encerra quando a rebaixa acaba. O ERP precisa expor três coisas: criar, consultar e encerrar uma promoção.
sequenceDiagram
participant Loja as Loja (app)
participant BIX as BIX
participant ERP as Seu ERP
participant PDV as Caixa
BIX->>BIX: rebaixa calculada e aprovada
Loja->>BIX: etiqueta impressa
BIX->>ERP: 1. criar a promoção (preço, loja, vigência)
ERP-->>BIX: id da promoção
ERP->>PDV: carga de preço
Note over BIX: rebaixa ativa
BIX->>ERP: 2. consultar a promoção (opcional)
BIX->>ERP: 3. encerrar a promoção
Note over BIX: vendeu tudo, venceu ou mudou de cor
Os endereços abaixo são o padrão do BIX. Se o seu ERP já tem uma API de promoção com outros nomes, o conector do BIX é ajustado a ela na implantação.
1. Criar a promoção
POST https://seu-erp/promotions
O corpo é o mesmo contrato bix.markdown.publication/v1 que a GET/markdowns devolve, com
uma reference para o ERP reconhecer uma chamada repetida:
{
"reference": "BIX-MKD-4410",
"schema": "bix.markdown.publication/v1",
"markdown": {"percent": 30.0, "full_price": 7.49, "reduced_price": 5.24, "quantity": 18.0,
"measurement": "UN", "starts_on": "2026-11-10", "ends_on": "2026-11-16",
"expiry_date": "2026-11-20"},
"store": {"code": "0012", "cnpj": "12345678000190"},
"product": {"internal_code": "1001", "ean": "7891234567890", "description": "IOGURTE NATURAL 170G"},
"external": {"code": "5000000010015"}
}
| Campo | O que o ERP faz com ele |
|---|---|
reference |
Identifica a rebaixa. A mesma reference de novo devolve a promoção que já existe, sem criar outra |
markdown.reduced_price |
O preço "por" que o caixa cobra |
markdown.starts_on / ends_on |
A vigência. O ERP encerra a promoção sozinho no fim dela |
markdown.quantity |
Quantas unidades estão perto do vencimento. Use como limite, se o ERP permitir |
store.code |
A loja onde a promoção vale. Só nela, nunca na rede inteira |
external.code |
O código de barras de vencimento, quando existe (veja abaixo) |
Resposta esperada:
{"promotion_id": "PROMO-77812", "status": "active"}
O código de barras de vencimento
O ponto delicado da rebaixa é cobrar o preço rebaixado só das unidades perto do vencimento, não do produto inteiro na loja. A forma mais segura é o produto ter um código de barras de vencimento: um segundo código, cadastrado no ERP, que só vai na etiqueta da rebaixa.
- O ERP aplica a promoção só nesse código. O caixa cobra o preço cheio de quem bipa o código normal e o rebaixado de quem bipa o da etiqueta.
- O BIX conhece o código pelo cadastro de produtos (POST
/products, como mais um EAN do produto) e o envia emexternal.code. A etiqueta sai com ele. - Sem esse código, a promoção vale para o produto inteiro naquela loja durante a vigência. Combine isso com o cliente antes de ligar a publicação.
2. Consultar a promoção (opcional)
GET https://seu-erp/promotions/PROMO-77812
{"promotion_id": "PROMO-77812", "status": "active", "starts_on": "2026-11-10", "ends_on": "2026-11-16"}
O BIX usa a consulta para confirmar que a promoção entrou e para descobrir uma promoção criada numa chamada cuja resposta se perdeu.
3. Encerrar a promoção
A rebaixa pode acabar antes do fim da vigência: o produto vendeu tudo, venceu ou mudou de cor (e ganhou outro percentual). Nesses casos o BIX encerra a promoção:
POST https://seu-erp/promotions/PROMO-77812/deactivate
{"promotion_id": "PROMO-77812", "status": "inactive"}
Quando a rebaixa muda de cor, o BIX encerra a promoção da cor anterior e cria uma nova, com o novo preço.
Regras
- O ERP nunca trava a loja. Se a publicação falhar, a rebaixa fica com o erro no Painel de Rebaixas do BIX, e a pessoa responsável vê o motivo e decide o que fazer.
- Uma promoção por rebaixa, por loja. Nada de promoção em rede a partir de uma rebaixa.
- Criar é seguro de repetir por causa da
reference. Se o ERP não aceita uma referência, ele precisa permitir consultar as promoções do produto na loja, e o BIX procura antes de criar. - Autenticação: o BIX chama o ERP com a credencial que o ERP fornecer e sai de um endereço IP fixo, que pode ser liberado no firewall.
Pronto para produção
- [ ] O ERP cria a promoção por loja, com preço e vigência, sem duplicar quando a chamada é repetida.
- [ ] O ERP encerra a promoção pelo id.
- [ ] Os produtos com rebaixa têm o código de barras de vencimento, ou o cliente aceitou a promoção no produto inteiro.
- [ ] Uma rebaixa de teste foi publicada e encerrada numa loja piloto, conferida no caixa.