Incluir produto na cesta
Um produto entra na cesta de dois jeitos: o vendedor o lança no ERP, ou clica nele no
Siprinho. Nos dois casos, o que inclui é o código exato do produto (productCode) — ao
contrário da busca por texto, que só mostra candidatos.
Inclusão pelo ERP
O produto que o vendedor lança no próprio ERP entra na cesta pelo caminho de sempre do ERP. Quem controla esse lançamento é o ERP: o preço, o estoque e as regras são os do ERP.
Para o Sipru acompanhar, o ERP chama o endpoint product do canal com o código exato e a
quantidade:
curl -X POST $SIPRU_BASE_URL/api/erp/channel/$CHANNEL_ID/product \
-sS --fail-with-body --max-time 5 --retry 1 --retry-connrefused \
-H "Authorization: Bearer $SIPRU_SECRET" \
-H "X-Sipru-Partner-Id: $SIPRU_PARTNER_ID" \
-H "X-ERP-Name: $ERP_NAME" \
-H "X-ERP-Version: $ERP_VERSION" \
-H "X-Local-MAC-Address: $DEVICE_MAC_ADDRESS" \
-H "X-Local-Machine-Name: $LOCAL_MACHINE_NAME" \
-H "X-CNPJ: $CNPJ_LOJA" \
-H "X-Codigo-Externo-Rede: $CODIGO_DA_REDE" \
-H "X-Codigo-Externo-Loja: $CODIGO_DA_LOJA" \
-H "Content-Type: application/json" \
-d '{"productCode":"000105","quantity":1}'
Na tela do Siprinho, o produto aparece como produto confirmado, entra na cesta com a quantidade informada e vem acompanhado de substitutos, cross-sell e upsell.
| Campo | Tipo | Descrição |
|---|---|---|
productCode | string | Código do produto no ERP. Até 120 caracteres. |
ean | string | Código de barras. Usado quando productCode não vem. |
quantity | número | Quantidade da linha da cesta. Opcional: ausente ou inválida vira 1, e acima de 9999 é truncada. |
A resposta:
{
"seq": 7,
"product": { "sku": "000105", "name": "Alicate universal 8\"", "price": 34.9, "coinsReward": 12 },
"recommendations": { "substitutes": 3, "crossSell": 5, "upsell": 1 }
}
seq— a ordem do evento no canal.product— o produto que o Sipru encontrou e mostrou ao vendedor.recommendations— quantas sugestões foram publicadas em cada coluna.
Os erros são os mesmos da busca.
A ordem entre lançar no ERP e chamar o Sipru fica a critério do ERP. O que importa é que a chamada nunca bloqueie nem desfaça o lançamento: se a Sipru estiver fora do ar, a cesta do ERP segue funcionando.
Inclusão pelo Siprinho
Clicar num produto no Siprinho — da vitrine ou de uma sugestão — manda o código exato
(productCode): na tela ele aparece como produto confirmado e entra na cesta com a quantidade
informada.
O item clicado no Siprinho também precisa chegar à cesta do ERP. Como ele chega — deeplink, API do ERP, banco de dados, arquivo ou área de transferência — está em Receber produtos do Siprinho.
O vendedor pode clicar no Siprinho no mesmo produto que acabou de lançar no ERP. Quando esse produto chegar do Siprinho, confira se ele já está na cesta e decida se soma a quantidade ou ignora — o Siprinho não sabe o que o ERP já lançou.