Что такое URL успеха и неудачи при интеграции PayU Money в Android?
Вот мой код активности, что будет сурлом? кто-нибудь может мне помочь?
Заранее спасибо:)
Map<String, String> mapParams = new HashMap<>();
mapParams.put("key", mMerchantKey);
mapParams.put("txnid", mTXNId);
mapParams.put("amount", String.valueOf(mAmount));
mapParams.put("productinfo", mProductInfo);
mapParams.put("firstname", mFirstName);
mapParams.put("email", mEmailId);
mapParams.put("phone", mPhone);
mapParams.put("surl", mSuccessUrl);
mapParams.put("furl", mFailedUrl);
mapParams.put("hash", mHash);
mapParams.put("service_provider", mServiceProvider);
System.out.println("mapParams=="+mapParams);
webViewClientPost(webView, mAction, mapParams.entrySet());
3 ответа
Следующая диаграмма объясняет, как клиент производит платеж и как протекает процесс:
Шаг 1: Потребитель выбирает продукт на вашем сайте и нажимает кнопку "Оплатить сейчас".
Шаг 2: Потребитель затем перенаправляется с вашего веб-сайта на страницу транзакции www.payumoney.com, где потребитель вводит все детали, связанные с оплатой.
Шаг 3: Payumoney.com.com перенаправляет клиента в Visa, MasterCard или соответствующий банк для следующего уровня авторизации.
Шаг 4: Банк /Visa/MasterCard авторизует и подтверждает транзакцию.
Шаг 5: Потребитель отправляется обратно в PayUMoney.
Шаг 6: PayUMoney отправляет потребителя обратно на ваш сайт вместе со статусом транзакции.
surl
а также furl
входит в картину в последнем шаге вышеупомянутого потока. Это просто URL-адрес страницы "Успех и неудача", куда вы хотите направить пользователя на случаи успеха и неудач.
Например, если у вас есть страница с благодарностью, на которую вы хотите, чтобы пользователь пошел после успешной транзакции, то вы передаете URL-адрес этой страницы как surl
,
Точно так же, если у вас есть какая-либо страница с ошибкой, на которой вы хотите перевести пользователя на ошибку, передайте этот URL как furl
,
Источник: PayUMoney Интеграция в Android.
Payumoney разместить пользователя и данные транзакции к этим urls
, все успешные транзакции переходят в исходное состояние, а все данные о неудачных транзакциях переходят в исходный запрос.
Вы можете сохранить эту информацию для логики вашего приложения.
вот ссылка, которая показывает POST-запрос.
Успешный и неудачный URI - это ссылка на перенаправление. В основном, когда транзакция успешна, она будет перенаправлена на успешный URI, иначе она будет перенаправлена на сбойный URI.
При совершении платежа с помощью Android SDK PayUmoney выдает два типа ответа на платеж:
1. Ответ на стороне клиента в функции обратного вызова.
2. Обратный вызов сервера на сервер на веб-перехватчике, если он установлен в личном кабинете PayUmoney.
- Обработка ответа на стороне клиента: чтобы узнать, когда платеж завершен, переопределите onActivityResult в своей деятельности, как показано в примере кода ниже.
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// Result Code is -1 send from Payumoney activity
Log.d("MainActivity", "request code " + requestCode + " resultcode " + resultCode);
if (requestCode == PayUmoneyFlowManager.REQUEST_CODE_PAYMENT && resultCode == RESULT_OK && data != null) {
TransactionResponse transactionResponse = data.getParcelableExtra( PayUmoneyFlowManager.INTENT_EXTRA_TRANSACTION_RESPONSE );
if (transactionResponse != null && transactionResponse.getPayuResponse() != null) {
if(transactionResponse.getTransactionStatus().equals( TransactionResponse.TransactionStatus.SUCCESSFUL )){
//Success Transaction
} else{
//Failure Transaction
}
// Response from Payumoney
String payuResponse = transactionResponse.getPayuResponse();
// Response from SURl and FURL
String merchantResponse = transactionResponse.getTransactionDetails();
} else if (resultModel != null && resultModel.getError() != null) {
Log.d(TAG, "Error response : " + resultModel.getError().getTransactionResponse());
} else {
Log.d(TAG, "Both objects are null!");
}
}
}
- Обработка ответа на стороне сервера:
К вашим услугам для обработки успешных и неудачных ответов Payu.
Например (ОТДЫХ):
SURL: https://hostname/REST/service/payusucess
FURL: https://hostname/REST/service/payufailure
Когда платеж будет произведен, он отправит POST ответ на ваш сервер (успех / неудача). Вам нужно получить ответ и обработать его в службе REST и отобразить страницу ответа.
В переменной построителя PayuMoney вы должны установить эти параметры, где также упоминается неудачный URL.
builder.setAmount(amount) // Payment amount
.setTxnId(txnid) // Transaction ID
.setPhone(phone) // User Phone number
.setProductName(prodname) // Product Name or description
.setFirstName(firstname) // User First name
.setEmail(email) // User Email ID
.setsUrl("https://www.payumoney.com/mobileapp/payumoney/success.php") // Success URL (surl)
.setfUrl("https://www.payumoney.com/mobileapp/payumoney/failure.php") //Failure URL (furl)
.setUdf1("")
.setUdf2("")
.setUdf3("")
.setUdf4("")
.setUdf5("")
.setUdf6("")
.setUdf7("")
.setUdf8("")
.setUdf9("")
.setUdf10("")
.setIsDebug(true) // Integration environment - true (Debug)/ false(Production)
.setKey(merchantkey) // Merchant key
.setMerchantId(merchantId);
Вы можете найти полный учебник для скачивания с работающим приложением по этой ссылке. PayUmoney имеет очень простой процесс интеграции. Шаги, как показано ниже
Шаг 1 получить ключ торговца и соль
Шаг 2 загрузите серверные PHP-файлы для контрольной суммы HASH
Шаг 3 добавить зависимость
Шаг 4 получить контрольную сумму хэша
Шаг 5 начать транзакции