Есть товары созданные при помощи drupal commerce с фиксированной ценой. Оплата происходит при помощи commerce robokassa. Как можно реализовать оплату услуги/товара чтобы клиент сам указывал сумму? Допустим, у нас нет необходимого товара в наличии, но мы можем его заказать, для этого нам нужна предоплата. Сам товар не создан на сайте, поэтому не получится сделать через высчитывание процента от стоимости.
Есть вариант создать отдельный тип товара с ценой ноль рублей, также способ оплаты аналогичный commerce robokassa где будет подменяться стоимость товара. Но оно как-то странно выглядит. Не будет ли потом проблем с учетом? В смысле в заказе(order) будет сохраняться те 0 рублей, а по факту оплата будет той что указал клиент. И вообще возможно ли это? Или может есть более правильный подход к подобной задаче?
Комментарии
почему бы не добавить все товары, в том числе и те, которых нет в наличии? Есть же commerce_stock, который заточен на наличие/отсутствие товара. Как вы вообще представляете, что клиент сам выбивает какую-то сумму для оплаты? Вы ему по телефону будете говорить куда нажать и какую сумму ввести?
Почему бы и нет? Да человек звонит по телефону спрашивает есть ли у нас такое, мы ему отвечаем что пока нет но для него можем заказать. Есть уникальные позиции на которые спрос единичен и предзаказывать смысла нет как и выставлять на витрину магазина.
Во-первых весь товар сразу нереально забить в базу даже автоматизировав загрузку прайсов.
Во-вторых все равно будут товары которых на сайте нет.
Я понимаю, что самый правильный подход - это работа с существующими товарами и учетом статуса наличия. Но пока, это не для нас.
не, не взлетит
если он не увидит этот товар на сайте - он закроет вкладку в браузере, перейдет на другой сайт и никуда звонить не станет, 146%
странный подход
магазин торгует теми товарами, которые есть у его поставщиков - в наличии или под заказ
кол-во поставщиков и номенклатуры в любом случае ограничено каким-либо значением
если товар может быть продан - его надо вешать на сайте, если нет - то зачем он там нужен
для случаев "а есть ли такой же, но с перламутровыми пуговицами?" - предусмотреть форму обратной связи или сервис онлайн-консультанта
в любом случае, при продаже товара "под заказ" надо добавлять его в счет, прежде чем получить по нему (пред)оплату
как потом будете разруливать ситуации "я заказал у вас iphone 6, сделал предоплату 3р., а вы мне привезли nokia 1100, чоза?"
Есть постоянные клиенты, которые знают о данной возможности. Есть звонки по следующим причинам:
Да, таких людей очень маленький процент, однако они все таки есть.
В форме оформления предоплаты есть текстовое поле куда клиент записывает за что переводит деньги.
Фактически создается тот же заказ где вместо наименования будет значение текстового поля, вместо цены сумма указанная пользователем. ID заказа создает сам коммерц. И если мне не изменяет память, при желании можно отменить оплату в робокассе с помощью обращения в их тех поддержку не уведомляя сам интернет-магазин.
ок, он напишет там "за iphone 6 стоимостью 1000р."
каковы действия менеджера магазина в этом случае?
имхо, эта затея - костыль, время на разработку которого лучше потратить на настройку импорта товаров
Такое случайно не сделаешь. Специально делать будут недалекие люди. Действия - связаться с робокассой и отменить транзакцию. На старом движке ни одной жалобы или проблемы за 2 года не было.
скорее - ушлые, есть такая категория покупателей, занимающихся потребительским терроризмом
звонить в Робокассу и отменять платёж - это как минимум время, а как максимум - после получения оплаты ваш магазин вступил в гражданско-правовые отношения с покупателем, договор публичной оферты и всё такое
покупатели, сознательно троллящие магазин, обычно хорошо разбираются в таких правовых ньюансах, тем и живут
Раз уверены, что так будет лучше для клиентов, можно сделать таким образом:
в line-items (admin/commerce/config/line-items/product/fields) добавить два поля (для ввода цены юзера и указания товара). Что бы эти поля не выскакивали везде, где не надо, ограничить показ через conditional_fields. Далее через Rules менять цену товара.
aa2007, благодарю за совет!
conditional_fields занятный модуль, но для d7 к сожалению в стадии разработки.
admin/commerce/config/line-items/product/fields с данными настройками еще не связывался. Надо поразбираться чего к чему и зачем там. Если не сложно, подскажите где можно почитать о назначении и использовании настроек с вышеупомянутой страницы админки?
https://drupal.org/project/commerce_donate
Вообще, чтобы что-то оплатить, юзер должен что-то добавить в корзину. А раз у вас нет товара на сайте вообще, то как он будет делать предоплату?.
Вам выше правильно сказали, используйте commerce_stock для учета наличия товаров.
Шаражкина контора, а не магазин получается.
http://www.drupal.ru/node/58916 ну или http://bit.ly/16vWu79