Tema
Persistência do pedido no ERP
Recomendações genéricas para o sistema parceiro após obter o pedido via GET /mpm/pedidos.
O que gravar
- Cabeçalho do pedido — id mPm+, cliente, vendedor, emissão, totais, troco, etc.
- Itens — produto resolvido, quantidade, valores, descontos, unidade, vendedor do item.
- Pagamentos / finalizadoras — finalizadora, plano, valor líquido (após regra de troco).
Idempotência
Use o id do pedido mPm+ como chave de idempotência no ERP (por empresa/loja, se o modelo local exigir escopo).
- Se o
idjá existir → não gravar de novo (ignorar ou retornar “já importado”). - Se não existir → gravar uma única vez.
Transação
Recomendação
Execute cabeçalho + itens + pagamentos em uma transação. Em falha parcial, faça rollback completo para evitar pedido incompleto.
Mapeamento de ids
Antes de gravar, resolva via coluna local mpm_integracao:
| Campo no JSON | Entidade local |
|---|---|
cliente_id | Cliente |
produto_id | Produto |
finalizadora_id | Finalizadora |
plano_id | Plano |
vendedor_id / vendedor_prod | Funcionário / usuário |
Sem vínculo → rejeite o pedido com mensagem clara (não invente cadastro).
Status local
O parceiro define o status interno do pedido importado (ex.: pendente, aberto). Não há obrigação, neste contrato, de devolver status ao mPm+.
Checklist rápido
- [ ] Idempotência pelo
idmPm+ - [ ] Transação única
- [ ] Lookups
mpm_integracaook - [ ] Regra de troco aplicada (ver Pagamentos)
- [ ] Log de sucesso/falha por pedido