Мобильний додаток для оплати через bluetooth-термінал Stripe
Про проєкт і задачу
Лондонська компанія Metaverse VR Technology Ltd, що спеціалізується на ПЗ для інтерактивного дозвілля та бізнесу, звернулася до нас за розробкою мобільного додатка для прийому POS-платежів через bluetooth-термінал Stripe. На наші плечі лягла не лише мобільна розробка мовами Swift і Kotlin, а й дизайн додатка. За готовністю додаток потрібно було опублікувати на маркетплейсах для платформ iOS і Android.
Принцип роботи програми полягає в підключенні мобільного телефону до термінала Stripe через Bluetooth. Після пройденої аутентифікації клієнту відкривається зручний інтерфейс, де він може вказати необхідну суму переказу чи обрати товар для покупки в розділі «Продукти». Після цього термінал приймає та обробляє дані (місцерозташування, сума й секретний ключ клієнта) і гроші списуються з банківської картки.
Без анімації в мобільних інтерфейсах не обійтися. Вона не тільки оживлює додаток, викликаючи позитивні емоції, але й допомагає користувачеві орієнтуватися в ньому та отримувати відгук на свої дії. У реалізації проєкту був використаний інструмент LottieFiles.
Інструмент Lottie значно прискорює процес розробки мобільної програми.
Більшість користувачів платіжних мобільних додатків переживають за безпеку своїх особистих даних. Тому все більше розробників звертаються до такого інструменту, як Stripe. Що говорити, якщо такі світові компанії, як Shopify, MindBody та DocuSign створили інтеграцію з технологією Stripe для прийому онлайн-платежів.
У нашому випадку Stripe виступає посередником між покупцем і продавцем, який проводить безпечний платіж. Stripe вирішує всі проблеми платежів картками, враховуючи зберігання даних, періодичні платежі та виведення коштів на банківський рахунок. Цю технологію ми застосували в розробці додатка і на Android, і на iOS.
Наші розробники потурбувалися не лише про безпечну інтеграцію, а й про високу функціональність додатка. Крім потужної та сучасної мови програмування Kotlin на окремих етапах розробки було використано багато інших технологій:
Також для спрощення розробки додатка була використана технологія Jetpack — це широкий набір бібліотек та інструментів, що допомагає писати такий код, який однаково працюватиме на всіх пристроях і версіях Android.
Мабуть, з розробкою додатка на Android все. Ділимося з вами результатом у вигляді готового продукту:
Додаток для «яблучних» пристроїв написаний мовою програмування Swift, що був розроблений компанією Apple.
Архітектура додатка виконана за допомогою шаблону програмування MVC (Model-View-Controller). Завдяки йому логіка всього додатка поділяється на 3 основні компоненти:
Користувальницький інтерфейс додатка побудований за допомогою бібліотеки 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-терміналом, за допомогою якого можна легко та безпечно здійснювати грошові платежі та перекази.
Суть додатка




LottieFiles – це бібліотека для iOS, Android, Web і Windows. Вона складається з файлів JSON, у яких закодована анімація з Adobe After Effect. Плагін, який бере участь у створенні таких файлів, називається Bodymovin. Він має JavaScript-движок і рендерить анімацію в режимі реального часу.
Безпека мобільних платежів
Stripe – міжнародна система захищених онлайн-платежів для інтернет-проєктів. Система легко вбудовується на сайт, має зрозумілий інтерфейс оплати, що важливо для конверсії із заявки на покупку, а також дозволяє побудувати цілу платіжну інфраструктуру для бізнесу. Stripe відрізняє висока швидкість обробки платежів і безпека, а з точки зору бізнесу – дуже зручні засоби інтеграції із сайтами.
Реалізація на Android

Реалізація на iOS
Тестування додатка
Підсумки



