Как я это вижу.
Пришел покупатель и говорит - я хочу заказать у вас товар, который придет в мае и будет стоить 1000 рублей. Готов оплатить половину.
Далее 2 пути:
1. Предположим, что товар у нас уже был, тогда мы заполняем карточку, пишем количество и принимаем предоплату. Человеку выдаем напечатанную версию заказа с штрих кодом для быстрой идентификации в дальнейшем и прикалываем к нему чек с предоплатой.
Далее должно быть какое-то оповещение, когда этот товар приходит. Должно сообщаться ответственному лицу, что товар поступил на нужный склад и он для заказа №12345, необходимо сообщить клиенту. Приемщику тоже надо сообщить, что этот товар в резерв и на витрину его ставить не надо. В принципе достаточно сообщения на этапе приема, дальше можно согласовать.
Обычно на 2 этапе происходят косяки. Самые популярные: товар выставили на витрину и продали или клиенту не сообщают, хотя товар давно поступил на склад.
2 путь сложнее. Предположим, что товара такого у нас не было никогда, тогда мы заполняем какой-то виртуальный товар или создаем карточку реальную с предполагаемым названием этого товара. Затем возникает сложность в том, что тот кто заводит документ может немного иначе назвать товар, либо товар на самом деле называется сильно по другому и приемщик просто не обратит внимания на эту карточку товара.
Поэтому такие виртуальные товары списком должны быть у приемщика, чтоб он их знал, помнил и учитывал при приеме товара и в программе должна быть возможность поменять товар в заказе. Так же в заказе должна быть возможность поменять цену. Но тут тоже желательно такую опцию, что можно поставить либо ту цену, которая была изначально в заказе, либо ту, по которой поступил товар.
Затем в мае на приемке обнаруживается, что из пришедших 10 товаров 2 сразу уходят в резерв иванову и петрову. Об этом получает уведомление ответственное лицо и звонит клиентам, сообщить, что товар пришел и его можно забрать обратившись на кассу. Клиент с бумагой своей приходит на кассу, там сканируют его код, доплачивает остаток суммы, если требуется, если нет, то все равно идет на кассу, чтобы заказ закрылся и товар улетел клиенту. Т.к. даже после полной оплаты товар не у клиента, а числится на складе резерва. Вот этот приход на кассу клиента как раз и списывает товар с нас при любом случае. Далее клиент идет на склад и получает свой товар по бумажке, на которой написано "ЗАКАЗ ПОЛНОСТЬЮ ОПЛАЧЕН, ВЫДАТЬ КЛИЕНТУ". А лучше, как в транспортных компаниях, одна бумажка клиенту, вторая складу, на которой клиент расписывается, что товар получил, все ок и эта бумажка остается на складе.
Желательно конечно как-то это интегрировать с модулем рассрочки, это было бы вообще самолет...
Точнее даже с модулем рассрочки не нужна интеграция, нужно разрешить несколько раз вносить оплату товара, чтобы человек мог хоть каждый месяц приносить деньги для оплаты товара до его получения.
Вот так я вижу данный функционал.