GoForrest
GoForrest is a white label mobile application for restaurants available on Android and iOS platforms. It allows users to browse menu items, place orders, and arrange delivery.
The term "white label" means that the project is designed to be customizable for any client, without being tied to a specific restaurant chain, like Yandex apps, for example. It is universal and fully functional on its own.
Who can benefit from the application?
1. Individual restaurants with a single location and no network or parent/child companies.
Users can access the app and immediately see the restaurant menu, place an order, and make payment.
2. Restaurant chains with multiplelocations of the same brand.
Users can access the app and select their address. Based on their location, they will be redirected to a restaurant within their delivery zone. They can then browse the menu and place an order.
3. Large management companies with restaurants of different brands.
All the necessary restaurants are added to the app, and users can select the specificone they want. The menu will then be displayed, and they have the option to place an order.
What have we done?
- We have created a design that can be easily customized to match the branding of anyrestaurant.
The customization settings are accessible in the backend, allowing owners to make changes to the app without the need for developers or any coding intervention. They can customize the appearance by specifying button and icon colors, uploading images, banners, and logos. This approach saves time, money, and the nerves of the clients.
- We have developed a flexible menu and order configuration tailored to the needs of any establishment.
Depending on whether it is a standalone restaurant or part of a chain, the app interfaceis user-friendly and easy to navigate. For standalone restaurants, the main menu is loaded immediately, allowing users to select dishes and place orders. Delivery charges are pre-determined by the client and entered into the app. Users can see the delivery cost after entering their address.
For restaurant chains, users need to enter their address to automatically load the restaurant that is closest to the specified location. Users can view the current menu and delivery cost specific to that restaurant. Within a restaurant chain, each individual location can be customized for delivery, address selection on a map, adding manual information, and order processing.
Thanks to customer assistance, we have integrated correct delivery zones. The process involved customers drawing the delivery zone on the Yandex Maps constructor and passing it to us. We then load it into the back office. This way, when a user selects an address, we know which delivery zone they fall into, how much it will cost, and the estimated delivery time.
- We have integrated with IIKO (iiko Transport) and R-keeper.
Synchronization with IIKO was performed, taking menus, delivery zones, terminal groups, organizations, payment types, and order types from there and connecting them with the data inside our back office. Dishes can be linked manually, or automatic menu creation can be done.
Integration is necessary to process all orders in one place. Its advantages are operational efficiency and accurate accounting. All sales occur in real-time, and clients can always obtain up-to-date information about the status of their restaurant business. Working with IIKO eliminates errors that may occur when orders are manually entered by managers.
In the near future, the app will feature an integrated loyalty system called PRIME HILL.
Users will have the opportunity to create an electronic loyalty card with a transparent system, displaying how points are accumulated and how many are available. The app will also display news and current promotions at the restaurant.
Restaurant owners, in turn, receive a database with their customers' live contacts to establish various forms of communication with them in the future.
- We have integrated Amplitude analytics.
Amplitudeis a product analytics system that provides a comprehensive view of user behavior within the application. Based on this data, we can see at what point the user dropped off and use that information to build accurate product hypotheses, identify areas of improvement, and make changes to the product,design, or other aspects.
- We have added the ability to connect a Telegram bot. A channel is created in Telegram where all orders are received through the bot. Customers can immediately see the order details and its automatically changing status. The bot can help identify any errors with the order, such as payment issues, IIKO errors, or others. If the customer does not have IIKO integration, order processing and status can be manually changed with the buttons available in the bot.
During development, the following stack was used:
- Android – Kotlin,
- iOS – Java,
- Backoffice – ReactJS,
- Backend – Node.js
- Database – PostgreSQL
- Cache – Redis
GoForrest – White label мобильное приложение для ресторанов на базе Android и iOS. С его помощью можно выбирать блюда вменю, оформлять заказ и доставку.
Пометка White label означает, что проект разработан так, что может быть адаптирован под любого клиента, без привязки к сетке, как, например, у приложений Яндекса, потому что он универсален и полноценен сам по себе.
Кому подойдёт приложение?
1 - Одиночному ресторану с одной точкой без сети и дочерних/родительских компаний
Пользователь заходит в приложение и сразу видит меню ресторана, делает заказ и оплачивает его.
2 - Сети ресторанов одного бренда
Пользователь заходит в приложение и выбирает адрес. В зависимости от адреса его переадресует на ресторан, в зону доставки которого он попадает. Загружается меню и можно сделать заказ.
3 - Большой управляющей компании, у которой есть рестораны разных брендов
В приложение заводятся все нужные рестораны,пользователь выбирает тот, который ему нужен. Далее по стандартной схемеоткрывается меню и появляется возможность сделать заказ.
Что мы сделали?
— дизайн, который легко настраивается под брендбук любого ресторана.
Настройка была вынесена в бэкофис. Потому владельцы могут самостоятельно менять приложение без помощи разработчиков и какого-либо вмешательства в код, кастомизировать его вид под свою компанию: указывать цвет кнопок, иконок, загружать картинки, баннеры и логотипы. Такой подход экономит время, деньги и нервы клиентов.
— разработали гибкую настройку меню и заказов под нужды любого заведения.
В зависимости от типа ресторана (моно-ресторан или сетка) интерфейс приложения понятен и прост в использовании. Для одного ресторана сразу же подгружается основное меню, из которого можно выбрать блюдо и заказать. Стоимость доставки заранее определена клиентом и забита в приложении, пользователю видно её после указания адреса, на который надо доставить блюда.
Для ресторанов с сетью заведений пользователю необходимо ввести свой адрес, чтобы автоматически подгрузился именно тот ресторан, что ближе всего находится к указанной точке. Пользователь видит актуальное меню и стоимость доставки конкретно этого ресторана. В рамках одной сетки ресторанов можно настроить каждую отдельную точку: доставку, выбор адреса на карте, добавление ручной информации, оформление заказа.
Благодаря помощи со стороны клиентов интегрировали корректные зоны доставки. Делали следующим образом: клиент рисует зону доставки в конструкторе Яндекс-карт и передает нам. Мы прогружаем его в бекофис. Таким образом, когда пользователь выбирает адрес, мы знаем, в какую зону доставки он попадёт, сколько это будет стоить и сколько по времени займет сама доставка.
— сделали интеграцию с IIKO (iiko Transport),R-keeper
Произвели синхронизацию с IIKO. Взяли оттуда меню, зоны доставки, терминальные группы, организации, типы оплаты и типы заказа и связали их с данными внутри бэкофиса. Блюда можно связывать вручную, а можно делать автоматическое создание меню.
Интеграция нужна для того, чтобы обрабатывать все заказы в одном месте. Её преимущество в оперативности и точности учёта. Все продажи идут в режиме реального времени. Клиент всегда может получить актуальную информацию о состоянии своего ресторанного бизнеса. Работа с IIKO исключает ошибки, которые могут случиться, если заказы забиваются менеджерами вручную.
В ближайшем будущем в приложении появится интегрированная система лояльности PRIME HILL.
У пользователей будет возможность оформить электронную карту лояльности с прозрачной системой – в ней видно каким образом копятся баллы и сколько их на счету. Там же отображаются новости и актуальные акции в ресторане.
Владельцы ресторана в свою очередь получают базу данных с живыми контактами своих клиентов, чтобы в будущем выстраивать сними разного рода коммуникацию.
— подключили аналитику Amplitude
Amplitude – система продуктовой аналитики. В ней виден весь сценарий поведения пользователя в приложении. На основании этих данных можно смотреть, на каком моменте «отвалился» клиент, чтобы в дальнейшем построить корректную продуктовую гипотезу – предположить, на что стоит обратить внимание, проверить и, возможно, внести изменения в продукт, дизайн или что-то еще.
— добавили возможность подключения телеграм-бота
Создается канал в Телеграме, куда посредством бота приходят все заказы. Клиент сразу может видеть подробности заказа и его автоматически меняющийся статус. С помощью бота можно выявить ошибку с заказом, если она произошла. Бот подробно напишет, в чем мог быть сбой – ошибка с оплатой, ошибка в IIKO или что-то другое.
Если у клиента нет интеграции с IIKO, то обработку заказа и его статус можно менять вручную с появляющимися там кнопками.
При разработке использовали следующий стэк:
Android– Kotlin,
iOS –Java,
Backoffice– ReactJS,
Backend– Node.js
База данных – PostgreSQL
Кэш – Redis
What else is interesting?
Our application can work with restaurants that have IIKO automation integration, as well as with standalone applications that operate without integration. However, in the case of standalone applications, the responsibility for order management falls on the customer. Manual order processing is required, including enteringand tracking orders in our back office.
The standalone application has its own database nomenclature, delivery zones, and restaurant settings. Everything necessary is available without additional integrations. Payment processing is accepted via online acquiring from Alfa-Bank and Sberbank.
Что еще интересного?
Наше приложение может работать как с ресторанами, у которых есть автоматизация посредством IIKO, так и быть Standalone-приложением, работающим без интеграции с ней. Однако в этом случае ответственность за ведение заказов ложится на плечи самого клиента. Требуется ручная обработка заказов – занесение и отслеживание в нашем бэкофисе.
В Standalone-приложении есть своя номенклатура в базе данных, свои зоны доставки и свои настройки ресторанов. Все необходимое без дополнительных интеграций. Оплата платежей принимается через интернет-эквайринг Альфа-банка и Сбера.