Mobile SDK

Мобильное SDK — библиотеки и инструкция для встраивания оплаты по картам в мобильные приложения на iOS и Android. Позволяет запрашивать карточные данные в нативной форме приложения, делать 3‒D Secure аутентификацию и проводить платежи.
Схема работы мобильного приложения:
1. В приложении необходимо получить данные карты: номер, срок действия, имя держателя и CVV.
2. Создать криптограмму карточных данных при помощи SDK.
3. Отправить криптограмму и все данные для платежа с мобильного устройства на ваш сервер.
4. С сервера выполнить оплату через платежное API CloudPayments.

Условия использования:

  • Крайне нежелательно отправлять данные для оплаты с мобильного устройства напрямую в API CloudPayments. Необходимо держать учетные данные для доступа к API на вашем сервере, а в мобильном приложении поддерживать принцип тонкого клиента.
  • Для вашего сервера не потребуется сертификация PCI, так как карточные данные на него приходят в зашифрованном виде, а ключи для расшифрования есть только в платежном шлюзе CloudPayments (в приложении и библиотеке их также нет).
  • Данные карты можно вводить с клавиатуры или сканировать камерой (например, через card.io). Полный номер карты и CVV нельзя сохранять или записывать в лог.
  • Мобильное SDK нельзя использовать для мобильных терминалов (mPos). Единственное применение — в приложениях, которые будут установлены на телефонах и планшетах ваших покупателей.
  • По правилам Google Play и AppStore разработчик мобильного приложения имеет право принимать платежи с использованием сторонних платежных систем только для продажи нецифровых товаров, или цифровых товаров, которые можно использовать вне приложения.

SDK для iOS

Демо приложение, которое показывает работу с SDK CloudPayments для платформы iOS можно скачать с GitHub

 

Приложение демонстрирует как получить карточные данные, сформировать криптограмму, провести 3-D Secure авторизацию и выполнить платеж на iPhone или iPad.

 

Для установки необходимо сделать клон репозитория:

git clone https://github.com/cloudpayments/CloudPayments_iOSCheckout.git

И установить две сторонние библиотеки (используются только в демо-приложении)

git submodule update --init CloudPaymentsAPIDemo/Libraries/AFNetworking/
git submodule update --init CloudPaymentsAPIDemo/Libraries/SVProgressHUD/

Функции SDK

SDK CloudPayments (CloudPaymentsAPI.framework) позволяет:

  • Проводить проверку карточного номера на корректность
Boolean Card.isCardNumberValid(cardNumber)
  • Определять тип платежной системы по номеру карты или по первой его части
String Card.cardType(toString: Card.cardType(fromCardNumber: cardNumber))
  • Шифровать карточные данные и создавать криптограмму для отправки на сервер
let card = Card()
String card.makeCryptogramPacket(cardNumber, andExpDate: expDate, andCVV: cvv, andMerchantPublicID: Constants.merchantPulicId)

SDK для Android

Демо приложение, которое показывает работу с SDK CloudPayments для платформы Android можно скачать с GitHub

 

Приложение демонстрирует как получить карточные данные, сформировать криптограмму, провести 3-D Secure авторизацию и выполнить платеж на Android.

Для установки необходимо сделать клон репозитория:

git clone https://github.com/cloudpayments/CloudPayments_AndroidCheckout.git

Функции SDK

SDK CloudPayments (CloudPaymentsAPI.framework) позволяет:

  • Проводить проверку карточного номера на корректность
CPCard card = CPCardFactory.create(String number);
boolean card.isValidNumber();
  • Определять тип платежной системы
CPCard card = CPCardFactory.create(java.lang.String number);
String card.getType();
  • Шифровать карточные данные и создавать криптограмму для отправки на сервер
CPCard card = CPCardFactory.create(cardNumber, cardDate, cardCVC); // Номер карты только цифры без пробелов, срок действия карты в формате MMyy (например 0919).
String card.cardCryptogram(String publicId);