Amanex Store. Магазин лендиг

На разработку поступила задача сделать упрощенную корзину для лендинг сайта.
Изначально планировалось просто HTML формат. Но я предложил это сделать на Wordpress. В последсвтии это оказалось верным решение так, как пригодилось для большого бэкенд функционала.

Добавление в корзину
На фронтенде было реализовано добавление удаление количества товаров в корзину. Карточки были представлены в виде слайдера. Все обновляется синхронно, реактивно без перезагрузки. Не использовался фреймворк, но делалось на Vanilla JS.
Чекаут
Прежде чем произвести чекут, нужно пройти верификацию по почте. Реализована генирация кода, сохранение его в бд, передача в письме на почту и валидация на фронтенде.


Сам чекаут состоит из 3ех шагов: редактирование корзины, поля доставки, оплата.
Было сделано много логики:
- редактирование товаров в корзине + синхронизация с фронтендом лендинга
- расчеты суммы с учетом метода оплаты
- выбор метода оплаты
- подарочное слово
- выбор доставки, взависимости от региона
- валидация полей доставки
- много разных текстовых уведомлений, взависимости от прохождения чекаута
- и др. :)


Интересная часть была связна с отправкой заказа администратору. Клиентом был предложен вариант с отправкой данных о заказе в телеграм. Для этого использовал стандартное php api, без использований пакетных решений. Сообщения не только отправлялись, но и редактировались по ходу прохождения пользователя чекут. Для этого была сделана привязка messageId сообщения к конкретному заказу в БД.
Отдельно уделялось внимание форматированию сообщения.

