Olá @vipjorge,
É assim por design e não tem a ver com o plugin mas sim pela forma como o WooCommerce trata encomendas com métodos de pagamentos imediatos ou síncronos. O plugin não tem qualquer intervenção no envio de emails para além de adicionar as instruções de pagamento nos mesmos.
Existem dois tipos de gateways de pagamentos:
– Imediatos / síncronos
– À posteriori / assíncronos
Nos primeiros, onde se incluem cartões de crédito, paypal e MBWAY a encomenda fica temporariamente em “Pending payment” e deve ser paga imediatamente após a colocação da encomenda, ou não é sequer considerada. Estes métodos não necessitam instruções de pagamento porque o mesmo é efectuado no seguimento da encomenda, seja por ir ao site do pagamento (crédito ou paypal) ou por push notification no telemóvel. O estado “Pending payment” não gera email para cliente ou para dono do site, por design do WooCommerce.
Nos segundos, onde se incluem transferências bancárias, à cobrança, na loja, Multibanco ou PayShop, a encomenda fica em “On hold”. Estes métodos necessitam de instruções de pagamento para o cliente e validação manual por parte do dono da loja (apesar de no Multibanco nós termos implementado a notificação automática por callback) e é por isso que o WooCommerce envia email para este estado “On hold”.
É possível mudar o comportamento do MBWAY para que a encomenda fique em “On hold” em vez de “Pending payment”, apesar de não o aconselharmos por poder ter efeitos imprevistos em alguma situação. Não damos suporte a esta funcionalidade, e a mesma pode ser activada devolvendo false no filtro mbway_ifthen_order_initial_status_pending conforme documentação no PDF disponível em https://www.webdados.pt/2018/12/hooks-no-plugin-multibanco-e-mbway-ifthenpay-for-woocommerce-slides/
Thread Starter
vipvip
(@vipjorge)
Olá @webdados!
Tentei o truque que deu mas não funcionou.
Existe mais alguma solução?
Tem de adicionar isto no functions.php do (child) theme:
add_filter( 'mbway_ifthen_order_initial_status_pending', '__return_false' );
Depois fazer uma encomenda MB WAY e ela deve ficar em “On hold” e gerar emails.
Foi isso que fez e não funciona?
Thread Starter
vipvip
(@vipjorge)
Sim, coloquei exactamente assim e não funciona.
Não altera o estado, nem o cliente ou a loja recebem email de confirmação.
Acabei de fazer isso na nossa instalação de desenvolvimento, inseri uma nova encomenda, ficou On Hold e gerou ambos os emails:
https://snipboard.io/ocFbHX.jpg
https://snipboard.io/n6LWja.jpg
Thread Starter
vipvip
(@vipjorge)
Já consegui!
Muito Obrigado!