Задача
Создать сервис по выпуску и использованию карт Visa в связке с криптокошельком Zeeves на базе Telegram бота.
Главная идея
Основная идея – позволить людям, у которых уже есть кошелек в блокчейне Zilliqa, оформить себе физическую или виртуальную карту, которую можно использовать как продолжение кошелька Zeeves.
В данном кейсе мы занимались технической реализацией проекта: дорабатывали существующий telegram бот, создавали микросервисы для обработки операций обмена валют и создавали фронтенд для секьюрных банковских операций (например, смена пин)
Характеристики проекта
Срок: 5 месяцев
Команда: 3 человека
Бюджет: $15000
Технологии: Node.js, C#, JS, PostgreSQl, Redis
Разработка велась по недельным спринтам со встречами два раза в неделю. Задачи ставились в jira, а документация которая появлялась в процессе сделана в confluence и swagger.
Как это сделано
Telegram бот
Было создано более 50 новых экранов в telegram боте, которые можно условно разбить на несколько ветвей:
IT инфраструктура Zeeves построена таким образом, что телеграм бот является связующим звеном для всех внутренних сервисов компании, поэтому кроме дополнительных экранов были сделаны обработчики внешних событий, например обработчики вебхуков для входящих транзакций или управление ботом через админ панель. На стороне телеграм бота было реализовано API, которым пользуется фронтенд приложение.
Микросервисы
В отличие от бота, микросервисы мы разрабатывали с нуля. Для них мы выбрали Node.js , потому что для него есть множество готовых библиотек по работе с блокчейн инструментами.
Созданные нами микросервисы встроились в существующую инфраструктуру Zeeves, в которой до этого уже работали несколько других служб.
Frontend
В финансовой сфере довольно жесткое законодательство, поэтому клиент принял решение о сотрудничестве со сторонним провайдером карт. Это позволило не проходить множество проверок от государственных инспекций, ведь Zeeves не хранит персональных данных на своей стороне.С другой стороны, появилась необходимость использовать специальные виджеты, которые предоставляет провайдер для чувствительных операций, таких как
- Оплата
- Смена PIN
- Смена и просмотр пароля 3d secure
- Просмотр CVV кода
Мы доработали существующий фронтенд, создав несколько новых страниц, содержащих в себе защищенный виджет, предоставляемый провайдером карт.
Results
Мы запустили первую версию банка точно в срок. Сейчас проект на стадии сбора листа ожидания для пользования сервисом, в который записалось около 1500 человек. После релиза они станут первыми клиентами Zeeves. Сейчас Batonis помогает улучшать уже существующий продукт.
🎯 Во время работы мы смогли найти и устранить несколько проблем безопасности в системе клиента, а также создали небольшой удобный инструмент который упрощает работу.