Fechar o pedido na loja (Shopify)
O que o ERP envia à loja na entrega e no pagamento, como ligar, e como fechar os pedidos antigos.
O que acontece sozinho
- Entrega registrada (Logística → Rotas → Entregar): o ERP cria o processamento (fulfillment) do pedido na Shopify. O cliente não recebe e-mail da loja — o aviso de entrega é o do ERP.
- Pagamento confirmado (baixa da conta a receber ou pedido marcado pago): o ERP marca o pedido como pago na loja.
- Pedido cancelado: o cancelamento vai para a loja (já existia, mas não saía; corrigido nesta versão).
Cada envio fica registrado com o número que a loja devolveu. Se a loja não confirmar (token sem permissão, pedido apagado na loja), nada é registrado e o ERP tenta de novo pela fila de trabalho.
Como ligar
- Na Shopify, em Apps → o app do ERP → Configuration → Admin API access scopes, marque
write_merchant_managed_fulfillment_ordersewrite_orderse salve. - No
.envdo ERP:SHOPIFY_FECHAR=true.
Enquanto estiver desligado, nada é enviado nem registrado.
Fechar os pedidos antigos
No servidor:
php bin/fechar-pedidos-na-loja.php (só conta) php bin/fechar-pedidos-na-loja.php --executar --confirmar (envia 200 de cada tipo) php bin/fechar-pedidos-na-loja.php --executar --confirmar --limite=500
Rode quantas vezes precisar: o que já foi registrado não vai de novo. O script para um tipo depois de 5 recusas seguidas e mostra o motivo.
O que entra
- Processar: pedidos da loja entregues, faturados ou finalizados, ainda sem processamento registrado.
- Marcar pago: pedidos da loja pagos e não cancelados, ainda sem a marca registrada.
Pedido que a loja já tinha processado ou já estava pago conta como feito.