Как мы строим платформу для интеграций, или «iFramе is not a sh*t»

Тема внутренних маркетплейсов очень популярна в продуктовом мире. Благодаря App Store и Play Market встроенные приложения стали частью нашей повседневной жизни. В этой статье я расскажу, как мы используем iFrame, чтобы дать внешним разработчиками возможность качественно встраиваться в нашу систему. Объясню, с какими сложностями уже успели столкнуться и какие инсайты получили.

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

Немного о том, что мы делаем в Poster

Poster — это облачная система автоматизации для кафе, баров и ресторанов. Для непосвященных звучит пугающе, а если проще — кушали когда-то в Пузатой хате? Когда рассчитываешься, кассир пробивает заказ в системе учета. Такая система учета (ее еще называют POS-система или просто «касса») делает много важных и полезных вещей: ведет учет остатков на складе, печатает чеки, рассчитывает затраты на приготовление блюда, выручку и т.д.

Большинство POS-систем начинали свой путь со времен Windows 98 и выглядят вот так:

Работа с заказом в стационарной системе R_Keeper

Мы первые в СНГ сделали это по-другому:

Работа с заказом в Poster

Касса на iPad вместо Windows-моноблока. Админка в облаке вместо сервера под паркетом заведения. Сегодня с нами работают 8000 активных заведений в 75 странах мира.

Для чего нам открытый API

С самого начала мы знали, что у нашего продукта будет открытый API. Мы всегда верили, что за открытыми системами будущее. Для нас API это прежде всего:

Рост функций продукта и вовлечения пользователей. Это очевидно: всегда будет недостаточно ресурсов, чтобы запускать все функции, которые просят клиенты. Интеграции помогают продукту качественно расти в глазах пользователя, расширяют его функционал, а значит, более вероятно, что продукт не поменяют на конкурентный.

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

Дополнительный канал заработка. Как правило, каталоги берут комиссию с продаж приложений. Наша комиссия 30%, но бизнес-модель компании не строится вокруг маркетплейса. В нашем случае, мы ставим перед маркетплейсом задачу быть самоокупаемым.

Как пришли к iFrame

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

Встраивать приложение в код ядра. Изначально так и делали, но нагородили кучу костылей, от которых даже сейчас сложно избавиться. Не подходит.

Хостить JS/HTML на нашем сервере и загружать в админку. Таким подходом получим бесшовную интеграцию, но кто-то бесшовно поломает всю систему. Не катит.

Встроить в админку iFrame с приложением.
— Не, ребят, iFrame — это говно! Еще мой дед их юзал.

Это первое, что мы услышали про iFrame, но серьезных аргументов «против» не нашли, поэтому решили попробовать

Похожие статьи:
1 червня EPAM придбала сербську компанію з розробки програмного забезпечення Vivify Ideas. Зараз у Сербії активні понад 40 вакансій від...
Чуть больше года назад мы анонсировали рейтинг компаний на jobs.dou.ua. Сегодня опять приглашаем принять в нем участие. Рейтинг...
ASP.NET MVC Developer — это специалист, который занимается web backend разработкой с использованием технологий .NET. Спрос на ASP.NET MVC...
Наш третій матеріал про стан українського ІТ-ринку через рік повномасштабної війни — про те, як компанії діяли...
StartIT training center стал организатором сертификационного класса Professional Scrum Master от Scrum.org! Professional Scrum Master (PSM) — это...
Яндекс.Метрика