Услуги

  • Сайты
  • Контент
  • Продвижение
  • Битрикс24
  • Приложения
Все услуги Оплата
Все услуги Оплата

Поиск

  • Разработка интернет-магазина под ключ
  • Разработка сайтов
  • Разработка леднигов
  • Разработка на битрикс24
  • Разработка на Вордпресс

Мобильное приложение для оплаты через bluetooth-терминал Stripe

О проекте и задаче

Лондонская компания Metaverse VR Technology Ltd, специализирующаяся на ПО для интерактивного досуга и бизнеса, обратилась к нам за разработкой мобильного приложения для приема POS-платежей через bluetooth-терминал Stripe. На наши плечи легла не только мобильная разработка на языках Swift и Kotlin, но и дизайн приложения. По готовности приложение требовалось опубликовать на маркетплейсах для платформ iOS и Android.

Суть приложения

Принцип работы программы заключается в подключении мобильного телефона к терминалу Stripe через Bluetooth. После пройденной аутентификации клиенту открывается удобный интерфейс, где он может указать необходимую сумму перевода или выбрать товар для покупки в разделе «Продукты». После этого терминал принимает и обрабатывает данные (местоположение, сумма и секретный ключ клиента) и деньги списываются с банковской карты.

01

/ 04

Дизайн и анимация

Разработке дизайна было уделено особое внимание. Внешний вид приложения отличают лаконичность и простота. Бело-зеленая гамма, согласованность элементов дизайна и отсутствие лишних деталей упрощают (а значит улучшают) взаимодействие пользователя с бизнес-продуктом в области платежей.

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

LottieFiles — это библиотека для iOS, Android, Web и Windows. Она состоит из файлов JSON, в которых закодирована анимация из Adobe After Effect. Плагин, который участвует в создании таких файлов, называется Bodymovin. Он имеет JavaScript-движок и рендерит анимацию в режиме реального времени.

Инструмент Lottie значительно ускоряет процесс разработки мобильного приложения.

Безопасность мобильных платежей

Большинство пользователей платежных мобильных приложений переживают за безопасность своих личных данных. Поэтому всё больше разработчиков обращаются к такому инструменту как Stripe. Что говорить, если такие мировые компании, как Shopify, MindBody и DocuSign создали интеграцию с технологией Stripe для приема онлайн-платежей.

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

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

Реализация на Android

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

  • Передача данных на сервер реализована с помощью Retrofit 2. Данный инструмент позволяет легко получить и загрузить JSON или другие структурированные данные через веб-сервис на основе REST. В Retrofit используется библиотека OkHttp для HTTP-запросов.
  • База данных создана с помощью технологии PaperDb. Это NoSQL-подобное хранилище для объектов на Android, позволяющая вносить и автоматически обрабатывать изменения структуры данных.
  • Архитектура приложения была построена при помощи LiveData — технологии, которая хранит данные и связывает объекты с жизненными циклами Android-компонентов.
  • Работа с фрагментами и анимацией осуществлялась при помощи Jetpack Compose Navigation — технологии, позволяющей разработчику задавать граф навигации для переходов между экранами через URI.
  • Динамический список был создан с помощью библиотеки RecyclerView.

Также для упрощения разработки приложения была использована технология Jetpack — это широкий набор библиотек и инструментов, помогающий писать такой код, который будет одинаково работать на всех устройствах и версиях Android.

Пожалуй, с разработкой приложения на Android всё. Делимся с вами результатом в виде готового продукта:

Banner

Реализация на iOS

Приложение для «яблочных» устройств написано на языке программирования Swift, разработанном компанией Apple.

Архитектура приложения выполнена с помощью шаблона программирования MVC (Model-View-Controller). Благодаря ему логика всего приложения делится на 3 основных компонента:

  • Model — отвечает за логику данных, лежащую в основе приложения;
  • View — видимая часть приложения, с которой непосредственно взаимодействует пользователь;
  • Controller — мозг приложения, связывающий 2 предыдущих компонента.

Пользовательский интерфейс приложения построен с помощью библиотеки UIKit. Она включает в себя «родные» элементы интерфейса Apple: виджеты, флажки, индикаторы выполнения и кнопки навигации. Данная технология оптимизирует процесс проектирования и экономит время разработки (а значит и деньги клиента).

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

Тестирование приложения

Пожалуй, это самая сложная часть проекта, и сейчас мы объясним, почему. Для тестирования приложения нам был необходим терминал Stripe. Но терминала у нас не было, и нам приходилось отдавать продукт для теста непосредственно клиенту (к чему он был изначально готов).

Тестирование приложения на Android стало возможным путём генерации в Android Studio его дебага-версии — собранного приложения, которое клиент мог легко установить на свой смартфон. iOS-версию мы тестировали с помощью специального сервиса Apple Inc — TestFlight.

Приблизиться к релизу нам мешал сбой Bluetooth-подключения из-за длительного обновления Stripe Terminal. Спустя 15 тестовых релизов Android-версии и около 20-ти релизов iOS-версии мы выявили причину бага, дали терминалу «подумать» в течение 7 минут и connect с приложением наконец состоялся.

Затем мы опубликовали приложение в маркетплейсах и успешно прошли модерацию. Это можно легко проверить, введя название приложения «Instant POS» в поисковое поле Google Play Store или App Store.

Итоги

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

Ваш бизнес нуждается в эффективном и удобном приложении для приёма онлайн-платежей?

Мы знаем, как увеличить доход и рост финансового бизнеса с помощью быстрых и безопасных цифровых продуктов!

Над проектом работали