Endereço de e-mail ausente em ordem

10

Temos duas lojas (uma atualização 1.7.0.2 da 1.5.1 e uma instalação 1.6) que apresentam um problema que, para alguns pedidos, falta um endereço de email (customer_email em sales_flat_order) . As lojas são duas instalações completamente diferentes e a única coisa que achei igual nas duas versões é que elas usam o OneStepCheckout (versão mais recente) e que o problema é visto apenas para clientes (mas não todos) que já possuem uma conta de cliente . Acho que o problema está na conta do cliente, mas não consigo encontrar nada de estranho nessas contas.

Alguma idéia de onde verificar ou como depurar esse problema?

Obrigado.

Vladimir Kerkhoff
fonte
O método de pagamento do pedido é Paypal, por acaso?
22413 philwinkle
Não, é com métodos de pagamento diferentes.
Vladimir Kerkhoff 12/02
alguma personalização (exceto OneStepCheckout) que interage com os pedidos ou a conta do cliente?
FlorinelChis
Eu tenho o mesmo problema. Estou no OSC 4.0.9 (superior à versão com a correção). Também instalei um Magento 1.7.0.2 novo e fiz dois pedidos com o mesmo email: primeiro como cliente e depois como segundo (no modo de navegação anônima - sem cookies) como convidado. Ambos tinham um endereço de email. Ainda não tenho certeza qual é a causa.
Aaron Pollock

Respostas:

3

Verifique se você está executando o OSC 4.0.7.

Tivemos esse problema ao usar o Magento 1.7.0.2 e o OSC 4.0.6. Acabou sendo um bug no OneStepCheckout, onde não estava manipulando usuários sendo reconhecidos pelo carrinho de compras persistente corretamente. Comunicamos isso ao OSC e eles nos deram um hotfix (mas acredito que ele foi corrigido no 4.0.7: http://www.onestepcheckout.com/wiki/index.php/Changelogs#OneStepCheckout_4.0.7_changes

Grep para $this->getQuote()->setCustomerId(0);em app \ code \ local \ Idev \ OneStepCheckout \ Block \ Checkout.php (deve fornecer 5 correspondências), pois esse era basicamente o hotfix.

Edit: este deveria ter sido um comentário .. não é realmente uma resposta.

Erfan
fonte
7

NOTA: Essa não é uma resposta, por si só, mas eu gostaria de adicionar minhas próprias experiências com esse problema, para poder formatá-lo mais facilmente.

Eu já vi o mesmo problema. É algo que não tive a chance de me aprofundar completamente, mas pelo que vi, é uma combinação dos seguintes fatores:

  1. Um cliente registrado.
  2. Carrinho de compras persistente.

Se um cliente tiver se registrado anteriormente no site, mas não estiver logado , e o carrinho de compras persistente estiver ativado (ou o cookie estiver presente para o cliente após o carrinho de compras persistente ter sido desativado), o problema parece ocorrer.

Eu não vi isso acontecer com clientes que não se registraram, mas isso me faz pensar se há algo a ver com uma conta de computador compartilhada e dois clientes diferentes, um que se registrou e outro que não.

Também continuarei investigando isso, vinculamos automaticamente um cliente a um grupo de clientes, portanto, esse problema significa que o pedido não foi atribuído a um grupo de clientes.

Edit: estamos usando Firecheckout, não OSC

CCBlackburn
fonte
Posso confirmar que isso também acontece: em uma loja sem OSC, um cliente registrado que fez check-out como convidado fez exatamente isso.
benz001
0

Também estamos usando o OSC e esse problema está ocorrendo em nosso site. Acho que isso acontece em extensões de checkout não essenciais. No Magento principal, se você ativar o carrinho persistente, os clientes convidados serão obrigados a se registrar ou entrar, para que o endereço de e-mail sempre exista. Várias extensões de caixa (como OSC) não impõem essa restrição, portanto você entra em um cenário que o código principal não está esperando.

clonetopia
fonte