Для нашей детской школы программирования необходимо было реализовать личный кабинет. В целом задача типовая, однако при ее планировании мы сформировали ряд критериев, которым должен был отвечать создаваемый продукт.

Первым и самым главным была простота входа для клиентов. Мы очень хотели избежать сложной схемы с регистрацией, логинами и паролями. Хотелось, чтобы наши резиденты и их родители в один клик могли увидеть всю необходимую информацию.

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

К техническим аспектам у нас относились стандартные моменты, такие как скорость работы (никто не любит, когда что-то долго грузится), а также соответствие фирменному оформлению бренда.

Почему VK Mini Apps?

На самом деле опираясь на самый первый критерий, то выбор не шибко большой. Нужна была платформа, где есть присутствие нашей компании и клиентов, а также есть возможность создать встроенные приложения.

Выбор сводится в итоге к двум, это или telegram или vk. Остановились на последней, так как там наше присутствие больше и почти вся коммуникация идет в рамках группы Вконтакте.

Мы спроецировали предполагаемую схему работы с личным кабинетом так: пользователь заходит в нашу группу, кликает на приложение и его личный кабинет сразу открылся. Никаких логинов, паролей – ничего не забыть, не потерять. Мини предложение можно легко вынести на экран смартфона и запускать сразу в один клик.

С первым критерием справились, идем дальше.

Почему АльфаCRM?

Эту платформу мы используем не по своему выбору, такая установка от управляющей компании по франшизе которой мы работаем. Соблюдая стандарты, мы исправно ведем в АльфаCRM всю посещаемость, оплаты и все что нужно для отчетности в рамках франшизы.

Одной из тонких настроек было то, что нам в приложении необходимо было учитывать не все посещения резидентов на занятиях, а только те, которые проходили в рамках расписания. А тип занятий, которые мы называем отработкой пропущенных групповых уроков, не должны были попадать в учет и монеты за них не зачисляются.

У АльфаCRM есть свои плюсы и минусы, как впрочем у всех программных решений, но однозначно большим плюсом является наличие REST API. Благодаря этому мы можем подцепить наш личный кабинет к учетным данным, которые итак ведутся и дополнительных трудозатрат на ведение личного кабинета не потребуется выделять.

Сборка и управление приложением VK Mini Apps

Для сборки и работы программных скриптов мы используем свой рабочий сервер. На нем расположены все исполняемые файлы. В текущем контексте мы не стали использовать библиотеку адаптивных React-компонентов VKUI по причине отсутствия в этом особой необходимости и реализовали бэкэнд и фронт на популярных для веб систем php, mysql, js, html и css.

Такой стек технологий легко поддерживать даже малоопытному специалисту, что существенно влияет на стоимость сопровождения.

Для связи с ВК мы использовали JavaScript-библиотеку VkBridge, которая позволяет подключаться к API и получать данные пользователя, на основе которых происходит связка аккаунта и вывод персонализированной информации. В рамках проекта мы написали свой класс обмена, который можно расширять по мере необходимости.

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

Например, если наш резидент принял участие в важном профильном мероприятии и победил, мы начисляем ему дополнительные монеты. А если резидент, что-то приобрел в нашем фирменном магазине школы, то надо эту покупку зафиксировать и списать монеты.

Собранная система позволяет не только этим управлять в легкой и понятной форме, но и так же в любой момент можно открыть и увидеть историю всех начислений и сверить их корректность.

Перед запуском мы расширили функционал и добавили логичные разделы с каталогом товаров, которые можно приобрести за накопленные монеты, а так же памятка как можно зарабатывать больше монет. Особо интересной функция тут стало добавление в избранное.

Резюме

Этот кейс отличный пример как можно использовать платформенное решение VK Mini Apps для реализации бизнес-задач, которое в итоге удобно пользователям этого продукта по обе стороны – как клиентам, так и сотрудникам компании.

Обращайтесь к нам, если хотите реализовать что-то подобное, а так же если вам нужна помощь в поиске наиболее подходящего технического решения для других задач.