Entendendo o fluxo dos status de pedidos no Magento

Se tem uma coisa no Magento que nos deixa realmente com dúvida é o fluxo de Status de pedidos no Magento.

Primeiramente, para conseguirmos entender como tudo funciona no Magento, precisaremos compreender por que existem dois campos: Status e State. Qual a diferença? O que significam? Estou ferrado?

Calma, tentarei explicar e deixar isso claro de uma vez por todas.

State:

Os States no Magento são basicamente os status do processo de cada pedido, porém ele é utilizado apenas pelo sistema interno do Magento, ou seja, esta informação não fica disponível para o cliente no front-end da loja. Serve para indicar ao Magento qual o real Status do pedido. No Magento existem 8 (oito) States que não podem ser modificados e não é possível criar novos sem modularização:

  • New (new): Este state é aplicado para todos os pedidos que entram na loja e ainda não foram revisados, ou seja, pedidos que acabaram de entrar;
  • Pending Payment (pending_payment): Quando utilizamos um gateway como forma de pagamento, o pedido passa de new para pending_payment;
  • Processing (processing): Este state é aplicado para qualquer pedido que venha a ter uma fatura ou um envio gerado. Todo pedido que seja faturado ou seja criado uma nota de entrega fica com este state no Magento;
  • Complete (complete): Quando um pedido é faturado e também entregue ele passa a ficar com o state complete, que significa que o pedido está completo e não há mais o que fazer com ele;
  • Closed (closed): O pedido entra com o state closed quando uma nota de crédito é criada no valor integral do pedido. Basicamente quando o pedido for estornado;
  • Canceled (canceled): Como o próprio nome diz os pedidos cancelados passam a ter o state canceled no Magento;
  • On Hold (holded): Pedidos que devem ser segurados (congelados) por um tempo ficam com este state. Um exemplo prático é quando o mesmo é pago com boleto bancário.
  • Payment Review (payment_review): O pagamento do pedido está sendo revisado.

Bom, após entender o que é e qual o fluxo dos States no Magento, precisamos entender o por que existem também os Status:

Os Status dos pedidos no Magento, nada mais são do que as labels ou etiquetas dos States dos pedidos no Magento, ou seja, é o que será mostrado para o cliente no front-end da loja.

Vamos tomar como exemplo o State New. Por padrão no Magento o State New tem o Status Pending associado á ele, ou seja, para o Magento o importante é saber que o state do pedido está como New, mas o cliente vai visualizar o status do pedido, neste caso Pending (Pendente).

Basicamente os Status são filhos dos States os quais podemos ter vários Status associados á um mesmo State. Vamos supor que você não queira que quando um pedido entre em sua loja Magento o cliente visualize Pending (Pendente) no painel de cliente, mas sim Recebido e Sendo Analisado. Bastaria você criar um novo Status no Magento chamado Recebido e Sendo Analisado e associar ele ao State New. Feito isso, você pode ir no método de pagamentos que você utiliza em sua loja e configurar que o Status de novos pedidos seja este novo que acaba de ser criado e não mais Pending (Pendente).

Abaixo coloquei uma imagem retirada do site do próprio Magento para vocês entenderem melhor o fluxo de States de um pedido no Magento. Pra mim foi auto-explicativo, espero que também ajudem vocês á entender definitivamente o fluxo e a diferença entre os dois.

Fluxo de Status/States de Pedidos no Magento

Bom galera, espero que este artigo tenha sido de bom proveito para vocês. Ao menos de minha parte tentei deixar o mais claro possível.

Qualquer dúvida que pairem sobre suas mentes, não hesitem em comentar, ok?

Um abraço e até a próxima!

Tiago Sampaio

17 Comments

  1. Olá,
    tem como eu fazer esse status com imagens?
    tipo ao invés de aparecer a mensagem lá “em andamento”,
    aparece uma imagem qualquer que eu queira?

    • Olá Nany,

      Sim, existe como fazer essa implementação, porém você tem um ponto negativo nesta implementação:

      Você perderia a flexibilidade dos status;

      Abraços,

      Tiago Sampaio

  2. melhor dizendo, é algo como o andamento de pedido do submarino

    • Kauê Morelli Reply

      Fiz uma validação com a resposta do status enviado pelo Magento (pending_payment, processing, complete, etc), com essa resposta, altero o ID da div, que contem imagem de background referente ao status do pedido.

      • Olá Kauê, você faz esse tipo de serviço como freelancer? se sim tenho interesse em contratar

  3. Boa tarde Tiago, muito esclarecedor o artigo parabéns!
    Gostaria de tirar uma dúvida, em que State é dado baixa do produto no estoque do magento?

    Para te explicar melhor, se o cliente escolher pagar por boleto, é dado baixa no estoque desse produto em quanto fica aguardando a confirmação do pagamento?

    É uma faca de dois gomes mas já imaginou se isso não é feito e outras pessoas compram e acaba o estoque deste produto e o boleto é pago? Acredito que os órgãos de defesa do consumidor deve sair em defesa do consumidor neste caso.. Tens algo a acrescentar nisto?

    Abraços!

  4. Tiago, como posso verificar quanto eu vendi no dia e o acumulado do mês pelo Magento? Eu tenho dois relatórios e os dois me dão resultados distintos.

    Vou agradecer muito a sua ajuda.

  5. Olá Tiago, tenho com configurar um e-mail para cada status filho que é criado?

  6. Como eu faço pra deixar configurado a alteração de status em massa disparar automaticamente e-mail para o cliente?

  7. Estou com uma enorme dúvida sobre a qual não encontrei nenhuma referência na internet, nem em fóruns gringos. Uso o módulo dos Correios desenvolvido pelo Pedro Teixeira, e o que acontece: não existe um status no Magento para “pedido entregue” ou “shipped” por exemplo. Quando um pedido é tido como entregue pelos correios (isto é, quando vemos no rastreamento que a remessa já foi entregue ao destinatário), precisaríamos “dar baixa” nesse pedido no magento marcando-o como “entregue” ou “Entrega efetuada” etc. Haveria a possibilidade de implementar isso? Seria muito complexo? É fundamental na rotina de vendas que se saiba quais foram entregues ou não, porque aí temos um parâmetro pra investigar o motivo que bloqueou a entrega.

    • Olá João,

      Sim, é possível fazer isso simplesmente criando um novo Status de Pedido no Magento. No momento que você receber a notificação que o pedido foi entregue, basta alterar o status do pedido para o status que você criou.

      Abraços,

      Tiago

  8. Olá Tiago, estou trabalhando no marketing para um ecommerce: amadeusautopecas.com.br. Tenho uma dúvida. O status dos pedidos devem ser feitos manualmente? Digo, pelo funcionário da loja que vai conferir os pedidos entregues ou não e alterar no sistema da loja (admin)?

    • Olá Valdir, tudo bem?

      O status de pedido no Magento pode ser alterado tanto manual quanto automaticamente. Isso vai depender das integrações que existem entre a loja e outros serviços ou módulos personalizados para a mesma.

      Abraços,

      – Tiago

  9. Olá Tiago, então se o state do pedido esteja igual processing, posso considerar que ele está com pagamento confirmado?

    • Olá Douglas,

      Normalmente sim. Por configuração padrão do Magento, quando uma fatura é criada para um pedido, significa que ele foi pago, mas é preciso ver se a regra de negócio da loja na qual está trabalhando está utilizando dessa prática.

      Abraços,

      – Tiago

Leave A Reply

Navigate