Дигитална бизнес система

Pizza Pazzo

Собствена система за онлайн поръчки на действаща пицария, работеща от 2012 г.: двуезично меню, количка, checkout, клиентски профили, админ панел и Android приложение за кухнята.

Клиент
Pizza Pazzo LTD
Индустрия
Ресторант · пицария
Категория
Дигитална бизнес система
Дигиталното меню на Pizza Pazzo — начална страница с категории продукти

01 · Проблем

С какво е започнало

Поръчките се приемат по телефон и се записват на ръка. Менюто е статично и всяка промяна на цена изисква намеса. Няма собствен канал, през който клиентът да поръча сам.

Целите на проекта:

  • Собствен канал за онлайн поръчки, независим от marketplace платформа
  • Меню, което екипът обновява сам, без разработчик
  • Поръчката да стига до кухнята без ръчно преписване

02 · Решение

Какво предложихме

Next.js платформа с дигитално меню, количка и checkout, сървърна проверка на цените, клиентски профили, админ панел за поръчки и отчети, и отделно Android приложение за кухнята с печат на бонове по Bluetooth.

03 · Изпълнение

Какво конкретно е изградено

  • Двуезичен публичен сайт BG/EN (BG без префикс, EN на /en — старите URL адреси не се променят)
  • Дигитално меню: 98 продукта в 10 категории, с варианти по размер
  • Продуктови страници, категорийни страници, популярни продукти, галерия, контакти
  • Количка и checkout с доставка и плащане в брой при доставка
  • Сървърна валидация на цените (клиентът не може да подмени сума)
  • Регистрация, вход, клиентски профил, адреси и история на поръчките
  • Роли и защитени маршрути (customer / staff / admin / super_admin)
  • Седем статуса на поръчката: очаква потвърждение, прието, приготвя се, готово, в доставка, доставено, отказано
  • Админ панел: живи поръчки, приемане и отказ с време, продукти, категории, варианти, меню, настройки
  • Отчети в админ панела и работни смени
  • Редактируеми от админа данни на ресторанта и работно време
  • Транзакционни имейли през Resend
  • Шаблони за печат на поръчка за 80 mm термален принтер
  • Android приложение за кухнята с печат по Bluetooth

04 · Трудната част

Кое беше сложното и как е решено

Двуезичността трябваше да влезе преди количката. Сайтът pizzapazzo.bg се индексира от 2012 г. — префиксиране на българските адреси щеше да пренасочи всеки съществуващ URL и да изхвърли натрупаното SEO.

BG остана без езиков префикс, EN мина на /en. Текстовете на менюто се пазят като двойка {bg, en} в данните, а езикът се резолвва в един data слой — UI компонентите не знаят, че съществуват преводи. Два речника със 354 ключа са типизирани, така че сгрешен ключ е грешка при компилация, а отделна проверка спира разминаване между двата езика.

05 · Резултат

Проверими резултати

Продукти в менюто
98 в 10 категории
Варианти и размери
84
Статуси на поръчката
7
Роли за достъп
4 (CUSTOMER, STAFF, ADMIN, SUPER_ADMIN)
Езици
BG / EN
i18n ключове
354, синхронни между двата речника
TypeScript
strict, 0 грешки
Проверка на цените
на сървъра
Печат
80 mm термален принтер по Bluetooth

Какво вече може бизнесът:

  • Клиентът може да поръча сам, с доставка до адрес
  • Екипът приема или отказва поръчка и задава време за изпълнение
  • Поръчката минава през ясни статуси до доставяне
  • Менюто, цените, вариантите и продуктите се управляват от админ панела
  • Кухнята вижда поръчката на отделно устройство и я печата
  • Собственикът вижда отчети за поръчките по период и смяна

Техническа валидация:

  • TypeScript type check без грешки
  • Успешен production build
  • Проверка за синхронност на двата езикови речника
  • Smoke скрипт за пътя количка → checkout → поръчка

Точен статус на проекта

Системата е разработена и технически валидирана. Пускането в реална среда (хостинг, домейн, реални снимки, потвърдени алергени) към момента не е финализирано. В текущата версия клиентският checkout поддържа доставка с плащане в брой; вземането от място е реализирано в кухненския печат, но още не е пуснато в клиентския път. Картовите плащания и интеграцията с Microinvest не са внедрени.

Next.js 15 React 19 TypeScript Tailwind CSS Prisma + SQLite next-intl Resend Kotlin (Android)