Magento – E-mail address missing in order

ce-1.7.0.2ordersupgrade

We have 2 stores (a 1.7.0.2 upgrade from 1.5.1 and a 1.6 install) that both have a problem that for some orders has a missing e-mail address (customer_email in sales_flat_order). The stores are two completely different installations and the only thing I found that is the same in both versions is that they both use OneStepCheckout (latest version) and that the problem is only seen for clients (but not all) that already have a customer account. I guess that the problem is in the customer account, but I can't find anything strange with these accounts.

Any ideas on where to check or how to debug this problem?

Thanks.

Best Answer

Ensure you are running OSC 4.0.7.

We had this problem using Magento 1.7.0.2 and OSC 4.0.6 . It turned out to be a bug in OneStepCheckout where it was not handling users being recognized by the persistent shopping cart correctly. We communicated this to OSC and they gave us a hotfix (but I believe it has been fixed in 4.0.7: http://www.onestepcheckout.com/wiki/index.php/Changelogs#OneStepCheckout_4.0.7_changes

Grep for $this->getQuote()->setCustomerId(0); in app\code\local\Idev\OneStepCheckout\Block\Checkout.php (should give 5 matches), since that was basically the hotfix.

Edit: this should've been a comment.. not really an answer.