удалённо·три индивидуальных предпринимателя·вместе с 2012 года

Две системы,
которые не знают
друг о другеРазработка API, интеграции и подключение платежей

Работаем удалённо, для клиентов в любой стране. Соединяем то, что не было рассчитано на общение друг с другом: чужой API, старый обмен, платёжный провайдер, ваша учётная система. По обе стороны моста стоит что-то, что писали не под вас.

02 — как это устроено

Ту сторону вы не поменяете

Интеграцию делают не там, где удобно, а там, где можно: чужую систему переписать нельзя, и всё, что она делает не так, придётся принять на себя.

Отсюда и разница в оценке. «Подключить платежи» звучит как один пункт, а оказывается работой, потому что дело не в подключении: дело в том, что делать, когда ответ не пришёл, пришёл дважды или пришёл не тот. Эти случаи и есть интеграция; остальное — вызов метода.

Эта территория здесь за Думитру: бэкенд, API, обмен в реальном времени, платежи — четырнадцать лет и все они на этой стороне работы. Архитектурные решения и всё, что касается серверов, — за Андреем. Двое из нас работают на одной бэкенд-территории, поэтому интеграция не остаётся знанием одного человека.

сколько занимает интеграция

Одна интеграция с документированным API — от двух до шести недель. Без документации или с оборудованием на той стороне — дольше, и насколько, видно только после того, как мы её посмотрим.

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

03 — состав работ

Что мы делаем на этой территории

API для вашего продукта. Тот, которым потом пользуются не только ваши руки: партнёры, ваше мобильное приложение, ваш следующий подрядчик. С документацией, по которой можно работать, не спрашивая нас.

Интеграции с чужими системами. Обмен с 1С и другими учётными системами, склад, доставка, CRM — всё, что стоит у вас годами и меняться не собирается.

Платежи и эквайринг. Подключение карточного эквайринга и криптовалютных платежей: мы делали платежи в BTC, ETH, ERC-20, BCH и LTC. Вместе с тем, что происходит при отказе, двойном списании и возврате.

Обмен в реальном времени. Когда данные должны появляться сразу, а не по кнопке «обновить»: вебсокеты, очереди, вебхуки.

Повторные попытки и очереди. Чужая система лежит полчаса — заказы не теряются, а ждут и уходят, когда она вернётся.

Журнал обмена. Что и когда ушло, что пришло в ответ. Без него разбор спора с той стороной превращается в слово против слова.

04 — доказательства

Интеграции и платежи, которые мы уже сделали

iTicket — билетная платформа с интеграцией турникетов на входе iTicket — страница события с датами, местом, ценой и покупкой билета

iTicket — турникеты

Билетная платформа Молдовы и Румынии, которую мы ведём десять лет. Билет, купленный в приложении, должен открыть турникет на входе — а турникет стоит на площадке, работает по своему протоколу и переписан быть не может. Это и есть та сторона, которую не поменяешь.

интеграция с оборудованиемпроход по билетуведём 10 лет
подробнее о проекте — страница о подхвате
Mr. Duck — приложение водителя: карта моек вокруг Бухареста, остаток кредитов и кнопка «ближайшая локация» mrduck.com — публичная страница с выходами в приложения и портал партнёра mrduck.com — сайт для владельцев моек: что даёт платформа и вход в портал партнёра mrduck.com — цены и кредиты: как пополняется счёт и сколько стоит жетон на каждой мойке

Mr. Duck

SaaS для сетей автомоек самообслуживания в Румынии. Водитель находит мойку на карте, видит свободные посты в реальном времени, пополняет счёт и запускает пост с телефона — без жетонов. Контроллер, который стоит в самом автомате, спроектирован той же командой, поэтому оплата и физический пуск — один поток. Владельцам сетей — multi-tenant портал с выручкой и обслуживанием.

приложение водителяiOS + Androidсвой контроллерпортал партнёраплатежи
разработка в составе команды Blue Twin Bit

Платежи и интеграции — та часть работы, которую показать труднее всего: она не видна на скриншоте, а значительная часть наших работ закрыта NDA агентств. Криптоплатежи мы делали; назвать проекты, в которых это было, пока не можем. Примеры — по запросу.

05 — процесс

Как идёт работа над интеграцией

  1. 01Вы приходите с техническим заданием.Что с чем соединяется, что должно происходить и на чьей стороне что уже есть. Это ваша часть: без неё считать нечего.
  2. 02Мы его анализируем.Приводим к документу, в котором не остаётся вопросов и двойных прочтений: что именно строим, а что — нет. Для интеграции сюда же попадает то, о чём обычно не пишут: что считается ошибкой и кто её увидит.
  3. 03Смотрим ту сторону.Документацию чужого API, доступ к тестовой среде, то, что уже написано у вас. Оценка без этого была бы оценкой одной половины моста.
  4. 04Оценка в часах — по готовому ТЗ.Цифры считаются по документу, который вы прочитали и утвердили. Считать часы по описанию идеи — это гадание, за которое платите вы. Здесь к описанию идеи добавляется вторая половина: без документации той стороны оценка была бы гаданием вдвойне.
  5. 05Вы видите, куда идёт время.Учёт в Toggl, отчёт открыт вам: раз в месяц — часы по задачам, что сделано, что идёт следующим. Счёт за отработанное, а не вперёд.
  6. 06Запуск — и дальше поддержка или передача.Интеграция живёт ровно до тех пор, пока та сторона не поменялась. Мы можем остаться и следить за этим, а можем чисто передать дела вашей команде.
06 — честно

Чего мы не обещаем в интеграциях

Не обещаем, что интеграция сделана навсегда. Чужой API меняют без нашего согласия и могут поменять без предупреждения; вопрос не в том, случится ли это, а в том, кто будет рядом, когда случится.

Не называем цену до ТЗ и до документации той стороны. Особенно здесь: половина работы лежит в чужой системе, и оценивать её вслепую — значит гадать за ваш счёт.

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

07 — частые вопросы

Частые вопросы об API, интеграциях и платежах

Что вам нужно, чтобы оценить интеграцию?

Техническое задание с вашей стороны и документация той стороны — а лучше доступ к её тестовой среде. Оценка без второго — это оценка половины работы.

Сколько времени занимает интеграция?

От двух до шести недель, если у той стороны есть документация. Если её нет или на той стороне стоит оборудование — дольше, и насколько, видно только после осмотра: срок здесь зависит от чужой системы не меньше, чем от нас.

А если у той стороны нет документации?

Берёмся, но это другой объём работ: разбираться придётся по тому, что система отвечает на самом деле. Мы скажем об этом до оценки, а не после.

Какие платежи вы подключаете?

Карточный эквайринг и криптовалюты: BTC, ETH, ERC-20, BCH и LTC, это из нашего опыта. Какие провайдеры доступны вам, зависит от задачи и от страны, где всё работает: то, что привычно в одной стране, в другой может быть недоступно вовсе.

Делаете ли вы обмен с 1С и другими учётными системами?

Да, обмен с 1С — самая частая интеграция после платежей, и с другими учётными системами всё устроено так же. Вопрос всегда один: что именно эта система умеет отдавать и принимать. Если у неё есть API или регулярная выгрузка — работаем с ними; если нет ничего, кроме экспорта файлом, обмен строится вокруг файла, и это тоже рабочий вариант, просто более хрупкий.

Что будет, когда та сторона поменяет свой API?

Поломка будет видна сразу и в журнале, а не через неделю по недостающим заказам: обмен пишется в расчёте на то, что та сторона рано или поздно поменяет API без предупреждения. Если мы остаёмся на поддержке, чиним это мы; если передали дела, ваша команда увидит то же самое там же.

На чём вы пишете API?

Чаще всего это PHP с Laravel или Node.js с NestJS, обмен в реальном времени — через вебсокеты и очереди, всё это в Docker на Linux. Полный список того, на чём мы работаем, — внизу страницы. Если ваш бэкенд держится на технологии, которой в этом списке нет, честнее сразу сказать, что это не к нам.

Кому принадлежит код?

Вам. Мы работаем помесячно и выставляем счёт за уже сделанное, поэтому доступ к репозиторию можно отдать сразу, а не в конце проекта — держать код у себя до последнего платежа нам незачем.

Подпишете ли вы NDA?

Да. Значительная часть наших текущих работ и так под ним.

В каком часовом поясе и на каком языке вы работаете?

Работаем удалённо с клиентами откуда угодно, часовой пояс EET. Говорим и пишем на румынском, русском, английском и болгарском.

08 — дальше

Расскажите, что с чем соединить

Приходите с техническим заданием и с тем, что известно про ту сторону. Мы переработаем его так, чтобы в нём не осталось вопросов, и уже по нему посчитаем часы.

один адрес, все трое

[email protected]

Это точка входа. По API, интеграциям и платежам отвечает Думитру.

Написать кому-то из нас напрямую — контакты на главной.

Если задача другая: веб-приложение или внутренняя система, приложение для iOS и Android, интернет-магазин, сайт или лендинг, подхват чужого проекта, адаптация готового сайта под телефон.

Хотите сначала посмотреть, кто мы такие, — главная страница: трое, чем занимается каждый, как считаем часы и что уже сделали.