| Produto: | |
|---|---|
| Linha de Produto: | |
| Segmento: | |
| Módulo: |
|
| Função: | Integrações Winthor |
| País: | Brasil |
| Requisito/Story/Issue (informe o requisito relacionado) : | DINTVENDAS-52 |
A necessidade central é automatizar o fluxo de vendas originadas no iFood, garantindo que os pedidos B2C cheguem ao sistema Winthor sem a necessidade de intervenção manual.
O objetivo é consumir a API Order do iFood e utilizar o payload (o pacote de dados) recebido para alimentar a API interna do Winthor (api/wholesale/v1/orders/), que já é responsável pelo processamento de pedidos B2C.
Esta entrega inicial foca na importação do pedido base. A funcionalidade de aplicação de descontos e taxas não será contemplada nesta fase, sendo planejada para uma história futura
Foi implementado um mecanismo de integração que atua como uma ponte, buscando o pedido no iFood e convertendo os dados para o formato aceito pelo Winthor.
Fluxo de Transformação de Dados
1. Consumo da API: O sistema Winthor consome a API Order do iFood (utilizando a busca desenvolvida na ISSUE DINTVENDAS-46) para buscar o payload do pedido.
2. Mapeamento e Conversão (DE/PARA): O JSON do iFood é transformado para o layout aceito pelo Winthor.
3. Envio ao Winthor: O pedido transformado é enviado para a API de entrada do Winthor (api/wholesale/v1/orders/).
Regras Especiais de Dados
A importação garante que os pedidos sejam processados utilizando parâmetros fixos pré-configurados, independentemente do payload recebido do iFood:
• Valores Fixos Configuráveis (PCINTEGRAECOMMERCE_PARAMS): Os parâmetros Código do Cliente, Código do Vendedor (RCA), Código da Cobrança e Código do Plano de Pagamento são sempre utilizados conforme configurados pelo usuário na rotina de integração.
• Parâmetros Fixos do HUB (WSH): Campos que não dependem do iFood nem da configuração do usuário, como o Tipo de Venda, são definidos como "1" (fixo) nos Parâmetros WSH. Código da Filial também é um valor fixo definido pelo token.
• Preço do Item: O Valor unitário (sellPrice) é tratado por uma regra especial: o valor recebido (em centavos) é dividido por 100 para ser convertido em valor real.
• Identificação do Item: Para que o produto seja reconhecido no Winthor, o campo de referência do item (listOfOrderItem.productSKUERPReferenceKey) é montado pela concatenação do Código de Barras (EAN) com o Código do Produto (PLU), separados por hífen (e.x., items.EAN || "-" || items.Product.Plu).
Suporte a Layouts
A solução permite a integração utilizando vários layouts. O Layout 1 trabalha com Tabela de Preços, enqquanto o Layout 2 deve ser utilizado se a empresa trabalhar com Precificação por Embalagem/Caixa (quando os parâmetros 1973 e 2291 na Rotina 132 estão marcados como “Sim”)
Descreva a solução.
|
Outras ações/ações relacionadas