Интеграция платежного шлюза в любое приложение для электронной коммерции особенно важна сейчас, когда мобильная коммерция стремительно развивается, а цифровые платежи становятся все более распространенными. В настоящее время многие приложения должны иметь функцию платежного шлюза, чтобы пользователи могли совершать транзакции и приобретать товары или услуги в приложении. Хотя многие приложения используют платежные шлюзы, их интеграция в приложения для Android представляет собой сложную задачу. Чтобы упростить этот процесс, PayU предлагает услугу, которая позволяет быстро интегрировать платежные опции в наши приложения и работать со всеми способами оплаты. В этой статье мы рассмотрим, как можно интегрировать платежные шлюзы в приложения для Android:- www.deekpay.com.

Интеграция платежного шлюза в любое приложение для электронной коммерции особенно важна сейчас, когда мобильная коммерция стремительно развивается, а цифровые платежи становятся все более распространенными. В настоящее время многие приложения должны иметь функцию платежного шлюза, чтобы пользователи могли совершать транзакции и приобретать товары или услуги в приложении. Хотя многие приложения используют платежные шлюзы, их интеграция в приложения для Android представляет собой сложную задачу. Чтобы упростить этот процесс, PayU предлагает услугу, которая позволяет нам быстро интегрировать платежные опции в наши приложения и работать со всеми способами оплаты. В этой статье мы рассмотрим, как можно интегрировать платежные шлюзы в приложения для Android.

О компании PayU

PayU - один из самых популярных платежных шлюзов в Индии, который широко используется малыми и крупными предприятиями для продажи товаров онлайн и быстрого сбора платежей. PayU India предоставляет услуги платежного шлюза как крупным корпорациям, так и малым и средним предприятиям. PayU SDK для Android довольно прост в использовании, о чем мы поговорим подробнее в последующих частях этой статьи.

Интеграция с Android

Прежде чем перейти к следующему материалу блога, убедитесь, что вы установили и настроили следующее:

- Java Development Kit версии 1.6 или выше

- Android SDK

- Git-клиент

- Eclipse / Android Studio

- Необходимые условия для платежного шлюза PayU (ключ, соль)

SDK PayU можно использовать для создания следующих двух типов решений:

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

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

Бесшовная интеграция с использованием встроенного пользовательского интерфейса SDK

Получите все необходимые параметры

Создайте объект PaymentParams и с помощью его стандартного метода настройки поместите в него все полученные параметры, а затем установите хэш-значение paymentHash.

"`java

PaymentParams mPaymentParams = new PaymentParams();

mPaymentParams.setKey("gtKFFx");

mPaymentParams.setAmount("15.0");

mPaymentParams.setProductInfo("Tshirt");

mPaymentParams.setFirstName("Guru");

mPaymentParams.setEmail("[email protected]");

mPaymentParams.setTxnId("0123479543689");

mPaymentParams.setSurl("https://payu.herokuapp.com/success");

mPaymentParams.setFurl("https://payu.herokuapp.com/failure");

mPaymentParams.setUdf1("udf1l");

mPaymentParams.setUdf2("udf2");

mPaymentParams.setUdf3("udf3");

mPaymentParams.setUdf4("udf4");

mPaymentParams.setUdf5("udf5");

mPaymentParams.setHash("хэш вашего платежа");

“`

Если вы не используете udf1-5, задавать их не нужно. Email и имя можно оставить пустыми, если вы не хотите их использовать.

Для того чтобы функция карточки пользователя магазина работала, необходимо предоставить учетные данные пользователя:

"`java

mPaymentParams.setUserCredentials("ваш ключ:идентификатор пользователя");

“`

Для предложений используйте:

"`java

mPaymentParams.setOfferKey("your_offer_key");

“`

Для других параметров платежа по умолчанию (например, телефон и т. д.) используйте:

"`java

mPaymentParams.setPhone("ваш номер");

“`

Используйте свой собственный сервер для получения правильных хэш-значений. Создайте объект PayuHashes и установите соответствующее хэш-значение, используя заданный метод установки по умолчанию.

"`java

mPaymentParams.setHash(payuHashes.getPaymentHash());

“`

Создайте новое намерение, нацеленное на PayUBaseActivity, и выполните следующие шаги.

"`java

intent.putExtra(PayuConstants.ENV, PayuConstants.PRODUCTION_ENV);

intent.putExtra(PayuConstants.PAYMENT_DEFAULT_PARAMS, mPaymentParams);

intent.putExtra(PayuConstants.PAYU_HASHES, payuHashes);

“`

Чтобы включить оплату в один клик:

"`java

// Включите платежи в один клик с MOBILE в качестве опции для хранения хэша

intent.putExtra(PayuConstants.STORE_ONE_CLICK_HASH, PayuConstants.STORE_ONE_CLICK_HASH_MOBILE);

“`

Или:

"`java

// Включите оплату в один клик с помощью MERCHANT SERVER в качестве опции для хранения хэша

intent.putExtra(PayuConstants.STORE_ONE_CLICK_HASH, PayuConstants.STORE_ONE_CLICK_HASH_SERVER);

“`

Или:

"`java

// Отключите платежи в один клик

intent.putExtra(PayuConstants.STORE_ONE_CLICK_HASH, PayuConstants.STORE_ONE_CLICK_HASH_NONE);

“`

Запустите кампанию и предоставьте все остальное PayU SDK.

"`java

startActivity(intent);

“`

Бесшовная интеграция с использованием собственного пользовательского интерфейса

В качестве примера бесшовной интеграции мы рассмотрим только операции с кредитными картами и интернет-банкингом. Этот метод можно использовать для подключения платежных карт "в один клик", магазинных карт, карт с наличными и платежей PayU.

Бесшовная интеграция оплаты кредитными/дебетовыми картами

Создайте объект PaymentParams и заполните все полученные параметры, используя метод настройки по умолчанию, как в бесшовном стиле, и установите Hash в paymentHash.

"`java

mPaymentParams.setCardNumber(cardNumber);

mPaymentParams.setCardName(cardName);

mPaymentParams.setNameOnCard(cardName);

mPaymentParams.setExpiryMonth(expiryMonth); // ММ

mPaymentParams.setExpiryYear(expiryYear); // ГГГГ

mPaymentParams.setCvv(cvv);

“`

Чтобы включить оплату в один клик:

"`java

// Храните хэш платежей в один клик, передача 1

mPaymentParams.setEnableOneClickPayment(1);

“`

Или:

"`java

// В противном случае передайте 0 или вообще не вызывайте метод.

mPaymentParams.setEnableOneClickPayment(0);

“`

Используя вышеуказанные данные PostData типа PostData, создайте объект PaymentPostParams. Настройте среду (тестовую или производственную), создайте намерение, а затем запустите активность PaymentsActivity.

"`java

PostData postData = new PaymentPostParams(mPaymentParams, PayuConstants.CC).getPaymentPostParams();

если (postData.getCode() == PayuErrors.NO_ERROR) {

// Запустите веб-просмотр

PayuConfig payuConfig = new PayuConfig();

payuConfig.setEnvironment(PayuConstants.PRODUCTION_ENV);

payuConfig.setData(postData.getResult());

Intent intent = new Intent(this, PaymentsActivity.class);

intent.putExtra(PayuConstants.PAYU_CONFIG, payuConfig);

startActivityForResult(intent, PayuConstants.PAYU_REQUEST_CODE);

} else {

// Произошла ошибка

Toast.makeText(this, postData.getResult(), Toast.LENGTH_LONG).show();

}

“`

Бесшовная интеграция с интернет-банком

Создайте объект PaymentParams и заполните все полученные параметры, используя метод настройки по умолчанию, как в бесшовном стиле, и установите Hash в paymentHash. добавьте bankCode (строку) выбранного банка в ранее определенный mPaymentParams, используя ваш спиннер/список адаптера представления.

"`java

mPaymentParams.setBankCode(bankCode);

“`

Запустите PaymentsActivity, создав объект PaymentPostParams типа PostData.

"`java

PostData postData = new PaymentPostParams(mPaymentParams, PayuConstants.NB).getPaymentPostParams();

если (postData.getCode() == PayuErrors.NO_ERROR){

// Запустите веб-просмотр

PayuConfig payuConfig = new PayuConfig();

payuConfig.setEnvironment(PayuConstants.PRODUCTION_ENV);

payuConfig.setData(postData.getResult());

Intent intent = new Intent(this, PaymentsActivity.class);

intent.putExtra(PayuConstants.PAYU_CONFIG, payuConfig);

startActivityForResult(intent, PayuConstants.PAYU_REQUEST_CODE);

} else {

// Произошла ошибка

Toast.makeText(this, postData.getResult(), Toast.LENGTH_LONG).show();

}

“`

PayU предоставит вам тестовые конфигурации для начала процесса интеграции, включая тестовые торговые счета и данные кредитных карт, чтобы вы понимали весь процесс транзакций. Затем код SDK должен быть интегрирован в ваше приложение. После завершения тестирования вы должны быть готовы направить свое приложение на производственный сервер PayU для проведения некоторых реальных транзакций.

тестовый ваучер

Чтобы включить дополнительную регистрацию, начните использовать тестовый ключ и соль (для тестового сервера). Используйте следующую тестовую учетную запись (только для целей тестирования):

- Ключ: ktKFFx

- Соль: bDwWELix

Информация о тестовой карте:

- Имя владельца карты: Шефали Сингх

- Номер карты: 2355 6756 9902 6654

- CVV: 098

- Срок годности: 11/2023

экспорт

Поскольку мы используем тестовые учетные данные, платежи не могут быть произведены. Вы должны активировать свое приложение на панели PayU и сгенерировать новый ключ, чтобы платеж вступил в силу.

Это краткое руководство по интеграции приложения PayU с Android. Удачи вам в интеграции!