Предлагаю в этой теме создать и обсудить некое ТЗ для базового и дополнительного функционала компонента, для организации продаж товаров и услуг на сайте.
Kreator уже создал запись в блоге и единственный плюс этой записи, в том, что я её вижу. Но кроме него, никто не знает куда будет двигаться развитие компонента дальше, и что в итоге должно получиться. Предложения уже начали озвучивать в записи блога, но я решил вынести их в отдельную тему на форуме. Возможно, по результатам обсуждения и Kreator будет корректировать свой компонент.
Самый простой вариант выглядит так:
Продавец — авторизованный пользователь:
1. Создал запись в типе контента, где указал описание товара и его стоимость.
2. Ожидает покупателя.
Покупатель — гость или авторизованный пользователь:
1. Прогуливаясь по сайту, собирает понравившийся товар(ы) в корзину у разных продавцов.
2. Переходит в корзину, редактирует её или сразу в оформление заказа
3. Оформляет заказ, где заполняет свои ПДн и выбирает варианты доставки, применяет подарочные купоны.
4. Переходит на страницу оплаты и выбирает способ оплаты. (В базовой версии будет только выписка счёта).
5. Оплатив товар, получает письмо об успешности операции и ожидает доставки.
6. Имеет доступ к своим заказам.
Компонент — программный код:
1. Разбирает корзину покупателя и подготавливает заказ.
2. Резервирует и ведёт количество товара у продавцов.
3. Регистрирует гостя по его емайлу (если это новый гость и опционально отправляет ему инфу для авторизации на сайте).
3. После оплаты отправляет информацию о покупке продавцам.
4. Списывает резервное количество товаров.
5. Переводит средства за товары всем продавцам, у которых был приобретён товар (здесь сайт магазина, может придержать свою дольку).
Администратор — тот кто входит в админку сайта:
1. Имеет доступ ко всем заказам.
2. Может изменять статусы заказов.
Статусы заказов:
— Новый
— Подтвержден, но не оплачен
— Оплачен
— Отправлен
— Доставлен
— Выполнен, закрыт
— Просрочен
— Возврат товара
— Аннулирован
— Отвергнут пользователем
— Возврат платежа пользователем
3. Может удалять заказы.
Это так сказать базовый функционал в моём понятии, сразу скажу оно "не далёкое" в этом направлении. Поэтому все пожелания, требования, уточнения, можете смело озвучить в этой теме. Любой пункт действующих лиц, можно дополнять, изменять и добавлять новых.
Автор поста не несёт никакой ответственности, поэтому тут никто ничего никому обещать не будет. Цель данной темы —
Также хотелось бы обговорить все скрытые моменты, с которыми может столкнуться владелец сайта, будь-то онлайн-касса, будь-то продавцы-мошенники и т. п.
Большая просьба не писать варианты предложений "Надо сделать как у… (1С-Bitrix, WooCommerce, OpenCart, Shop-script и т. п.) и всё". Поверьте, эта фраза в этой теме не будет учитываться, так как никто не будет разрабатывать то, что уже готово на другом движке. В качестве примера можно приводить другие движки, но с обязательным описанием функционала, о котором идёт речь.