Периодически и, казалось бы, случайная ошибка влияет на проверку Magento по крайней мере на трех разных сайтах. В этой теме на форумах Magento есть несколько тем, с некоторыми плохими советами (проглотите исключение). Этот вопрос вызывает упущенные продажи и приводит к большому разочарованию для владельцев сайтов. Эта проблема была зарегистрирована с Magento с марта 2011 года (http://www.magentocommerce.com/bug-tracking/issue/?issue=11081).
В способе оплаты, браузере, версии Magento или других факторах, которые мы пытались сопоставить, нет шаблона. Первичный симптом - это Исключение, записанное в var/log/exception.log, в котором говорится, что "Котировки котировок должны быть собраны", которые попадают в Mage_Sales_Model_Quote::prepareRecurringPaymentProfiles()
.
Мы выполнили регистрацию параметров запроса при возникновении исключения и обнаружили, что параметр payment
пуст. Мы полагаем, что Magento повторно отправляет элементы формы с шага "Оплата" во время клика, нажимая "Разместить заказ" (чтобы данные о кредитной карте не сохранялись на сайте между запросами AJAX), и сериализация формы не выполняется и возвращает нулевое значение /empty, который затем выводит код opcheckout.js на PHP, запускающий Исключение.
Можете ли вы предложить, какие условия или данные могут привести к тому, что метод прототипа Form.serialize
завершится неудачно и/или как продолжить атаку на проблему?