Мгновенный расчёт цены
Цена зависит от цвета, формата, сторон печати и тиража — нужен калькулятор, а не «пришлём цену после проверки».
Сервис онлайн-печати документов и модуль розыгрыша призов внутри Telegram: калькулятор цены, оплата ЮKassa и автоматические уведомления мастерской.
Локальная типография принимала заказы на печать по звонку или лично: цену считали вручную, документ приносили на флешке или присылали в личку. Клиенту неудобно, мастерской — медленно и без единого потока заказов.
Собрали Telegram Mini App с двумя сценариями «навстречу» разным задачам бизнеса: онлайн-печать документов с мгновенным расчётом цены и оплатой, и отдельная акция-розыгрыш с нумерованными билетами для допродаж и вовлечения.
Печать документов — быстрая услуга: если расчёт цены и оплата занимают дольше визита в мастерскую, сервис не нужен клиенту.
Цена зависит от цвета, формата, сторон печати и тиража — нужен калькулятор, а не «пришлём цену после проверки».
Клиенты присылают PDF, Word и Excel до 30 МБ — сервис должен принимать файл без потери разметки при печати.
Нужна онлайн-оплата с автоматическим подтверждением заказа, а не «оплатите при получении».
Мастерская должна получать заказ с полными параметрами печати и файлом сразу после оплаты, без ручного сведения.
Нужна механика допродаж — акция-розыгрыш, которая не усложняет основной сценарий печати.
Номерки розыгрыша должны реально печататься на месте — иначе участники не поверят в честность розыгрыша.
Спроектировали и собрали сервис как цельный продукт: от загрузки документа до печати номерка розыгрыша на реальном принтере.
Live-расчёт по цвету, формату A4/A3, одной или двум сторонам и тиражу — цены задаются в админке.
Drag-and-drop загрузка PDF/Word/Excel до 30 МБ с проверкой типа и размера файла.
Создание платежа и редирект на оплату; вебхук подтверждает статус и запускает обработку заказа.
Оператор получает заказ с файлом и параметрами печати, клиент — статус и адрес выдачи готового заказа.
Покупка нумерованных билетов с фото или инициалами участника, список своих билетов в профиле.
Данные билетов розыгрыша уходят на внешний сервер печати — номерки печатаются физически в мастерской.
Сценарии «печать» и «розыгрыш», модель цен, роли клиент/админ, критерии MVP.
Загрузка файла, калькулятор, экран оплаты, вкладка акции — маршрут без лишних шагов.
Компоненты на Radix + Tailwind: переключатели параметров печати, счётчики, карточки билетов.
NestJS + Prisma: заказы, файлы, ЮKassa, вебхуки, Telegram-уведомления, внешний сервер печати билетов.
Next.js: калькулятор печати, модуль розыгрыша, профиль с билетами, админ-панель настроек.
Прод-деплой, подключение реального принтера номерков, приём первых оплаченных заказов.
Без выдуманных процентов: ниже — проверяемые факты по архитектуре и функциям сервиса.
Опишите задачу — предложим план, сроки и фиксированную смету.