Acquiring SDK позволяет интегрировать Интернет-Эквайринг Tinkoff в мобильные приложения для платформы Android.
Возможности SDK:
- Прием платежей (в том числе рекуррентных)
- Сохранение банковских карт клиента
- Сканирование и распознавание карт с помощью камеры или NFC
- Получение информации о клиенте и сохраненных картах
- Управление сохраненными картами
- Поддержка английского
Для работы Tinkoff Acquiring SDK необходим Android версии 4.0 и выше (API level 14).
Для подключения SDK добавьте в build.gradle вашего проекта следующую зависимость:
compile 'ru.tinkoff.acquiring:ui:$latestVersion'
Для начала работы с SDK вам понадобятся:
- Terminal key
- Пароль
- Public key
которые выдаются после подключения к Интернет-Эквайрингу.
Для проведения оплаты необходимо запустить PayFormActivity. Активити должна быть настроена на обработку конкретного платежа, поэтому для получения интента для ее запуска необходимо вызвать цепочку из методов PayFormActivity#init, PayFormStarter#prepare и PayFormStarter#setCustomerKey:
PayFormActivity
.init("TERMINAL_KEY", "PASSWORD", "PUBLIC_KEY") // данные продавца
.prepare(
"ORDER-ID", // ID заказа в вашей системе
1000, // сумма для оплаты
"НАЗВАНИЕ ПЛАТЕЖА", // название платежа, видимое пользователю
"ОПИСАНИЕ ПЛАТЕЖА", // описание платежа, видимое пользователю
"CARD-ID", // ID карточки
"[email protected]", // E-mail клиента для отправки уведомления об оплате
false, // флаг определяющий является ли платеж рекуррентным [1]
true // флаг использования безопасной клавиатуры [2]
)
.setCustomerKey("CUSTOMER_KEY") // уникальный ID пользователя для сохранения данных его карты
.startActivityForResult(this, REQUEST_CODE_PAYMENT);
[1] Рекуррентный платеж может производиться для дальнейшего списания средств с сохраненной карты, без ввода ее реквизитов. Эта возможность, например, может использоваться для осуществления платежей по подписке.
[2] Безопасная клавиатура используется вместо системной и обеспечивает дополнительную безопасность ввода, т.к. сторонние клавиатуры на устройстве клиента могут перехватывать данные и отправлять их злоумышленнику.
SDK состоит из следующих модулей:
Является базовым модулем для работы с Tinkoff Acquiring API. Модуль реализует протокол взаимодействия с сервером и позволяет не осуществлять прямых обращений в API. Не зависит от Android SDK и может использоваться в standalone Java приложениях.
Основной класс модуля - AcquiringSdk - предоставляет фасад для взаимодействия с Tinkoff Acquiring API. Для работы необходимы ключи и пароль продавца (см. Подготовка к работе).
Содержит интерфейс, необходимый для приема платежей через мобильное приложение.
Основной класс - PayFormActivity - экран с формой оплаты, который позволяет:
- просматривать информацию о платеже
- вводить или сканировать реквизиты карты для оплаты
- проходить 3DS подтверждение
- управлять списком ранее сохраненных карт
Содержит пример интеграции Tinkoff Acquiring SDK в мобильное приложение по продаже книг.
- Просьба, по возникающим вопросам обращаться на [email protected]
- Баги и feature-реквесты можно направлять в раздел issues
- JavaDoc