Поделитесь опытом, кто как работает: Товар продаётся в EUR необходимо продать товар по курсу ЦБ со своей фиксированной наценкой, например 20%. Как вывести цену товара в евро, а в заказе в рублях (итоговая сумма по курсу и с наценкой) ?
На странице оформления заказа уже итогового можно сделать ajax запрос на перерасчет цен к товарам по запросу пользователя или автоматом. Предварительно в поле castumers в бд создав отдельную колонку - накрутка(например), туда внести значение. А на выходе его умножать. если группа покупателей ну например оптовики. --- Добавлено, 11 июн 2015 --- И тут опять таки нюанс. Вы показываете все товары в евро, а на странице оформления заказа почему то в рублях. Не правильно все это) Заблуждение пользователя)
Потому что курс меняется ежедневно и между оформлением заказа и выкупом у поставщика проходит некоторое время. К тому же наценка фиксированная и покупателю можно показать начальную и конечную цену с учётом постоянно меняющегося курса ЦБ
Ну, наценку можно сразу прибавить к цене в базе в евро. А в рубли действительно пересчитывать уже на этапе оформления заказа. Но придётся ещё и в системе заказов в адмике покопаться. А если есть необходимость в админке редактировать товары в заказе (добавлять, удалять, менять количество) - это будет жёсткий головняк.
А как вообще работает схема по пересчёту валюты в рамках типового магазина? Например, основная валюта - рубли, а товар в евро. Я так полагаю, что конвертация в цену по курсу происходит только в момет оформления заказа ?
Нет, конвертация происходит во всех местах вывода цены. Там не тупо достаётся число из базы, а всегда проверяется, какая валюта базовая, какую валюту выбрал пользователь, конвертируется и добавляется соответствующий символ. И так же в редактировании заказа в админке: проверяется в какой валюте сделан заказ, какая базовая и при любых изменениях в заказе всё пересчитывается.