Как оказалось, пользователь может оформить заказ поставив в конце email квадратную скобку “]”. Ну и наверное еще какие-нибудь символы, детально не тестировал.
В результате в CS-Cart никак это сразу не обрабатывает, позволяет ввести такой имейл. И позволяет оформить заказ, хоть и выдав пользователю зачем-то сообщение об ошибке, после оформления заказа(зачем это пользователю? А вот меня бы предупредили - не потратил бы может целый час на поиск проблемы).
И главное! Это ломает стандартный обмен с 1С! Причем не только выгрузку этого заказа, а вообще! 1С не предполагает что ей отдаются не корректные данные и выдает ошибку, не создавая вообще какие-либо заказы после.
Я думаю, если пользователь может введя не корректный email сломать обмен магазина с другими системами(а email передается в 1С/CRM/сервисы рассылки и т.д.) - это всё-таки баг, причем серьезный.
Не переживайте, этот баг конечно исправят. Только чтобы признать это багом осталось найти еще сотню заинтересованных юзеров и не пройдет пары лет, как все будет хорошо.
Название поля профиля покупателя, которое выгружается через CommerceML в систему учета, не должно содержать никаких символов. Поэтому наличие скобок в названии поля, например: Паспорт(ДляФиз.Лиц)СерияНомер или в email вызывает ошибку:
ValueError
Message
XMLWriter::writeElement(): Argument #2 ($content) must be a valid element name, "Паспорт(ДляФиз.Лиц)СерияНомер"
Это происходит, потому что согласно стандартам XML, имя ноды должно состоять из разрешённого списка символов: #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF]
Регулярку для email вряд ли будут писать, но проблему с символами при выгрузке решить нужно. Запостил как баг.