Существует ли идеальная система оформления заказа в интернет-магазине
Идеальная система заказа:
1. кладу все в корзину
2. в корзине меняю количество, смотрю общую цену
3. перехожу в оформление заказа. Тут четыре опции:
3.а. телефон по которому я могу позвонить менеджеру, и сказать номер заказа (выведен тут же), и все с менеджером решить. Оплата наличными при получении.
3.б. вбить номер телефона, по которому мне позвонит менеджер и мы с ним все решим. Оплата наличными при получении.
3.в. вбить минимально необходимые параметры заказа:
 — один текст бокс для имени\фамилии
 — один текст бокс для мыла
 — один для телефона 
 — одна текст ареа для адреса. Без этих убогих полей «улица, дом, корпус, строение». А если у меня нет улицы? Или куда я должен вписать примечание для курьера? Или приложить ссылку на «карту проезда» с сайта нашей организации? Текст ареа практичнее. 
 — опционально «поставить точку или нарисовать маршрут от метро на яндекс карте». Это же так просто и облегчает всем жизнь. Но должно быть опционально.
Обязательные только адрес, имя и телефон.
3.г. регистрация. Тоже самое что и 3.в, только может чуть больше полей, и с предоставлением логина и пароля, для повторных покупок.
4. если выбрана оплата электронными деньгами, то оплата.

Я джва года хочу такую игру. Но почему-то все делают какие-то дикие сложные формы. Если вам очень важна именно регистрация пользователей, повесьте над 3.г. плашку «зарегистрированным 0.5% скидки». А лучше«100500 бонусных баллов на следующую покупку (1 бонусный бал = 0.003коп)».
Как вариант подключить себе функцию «быстрого заказа», с 2-3 полями для заполнения и кнопкой рядом с «положить в корзину». Главное, чтобы можно было как-то связаться с клиентом потом или по почте или по телефону менеджеру, а дальше менеджер может предложить еще что-нибудь «полезное» в придачу. Во многих CMS это реализовано, в нашей точно есть. 

Еще можно функцию быстрого заказа от Яндекса реализовать, чтобы не заполнять кучу полей по доставке, они все будут браться из профиля почты Яндекса.