Я успешно интегрировал PayU Money Mobile SDK.Я хочу, чтобы после завершения транзакции я хотел уведомить свой сервер о состоянии транзакции.
Это можно сделать с помощью txnParam.surl и txnParam.furl.когда я настраиваюсь так ...
txnParam.surl
txnParam.furl
txnParam.surl = "http://stagingserver.webmerx.com/payu-success.php" txnParam.furl = "http://stagingserver.webmerx.com/payu-fail.php"
Я получаю неверный sUrl в ответ от PayU money mobile sdk и не могу выполнить транзакцию.
Но когда я настроил так...
txnParam.surl = "https://www.payumoney.com/mobileapp/payumoney/success.php" txnParam.furl = "https://www.payumoney.com/mobileapp/payumoney/failure.php"
Я могу выполнить транзакцию и получаю ответ об успешном поступлении денег PayU. Но как я могу уведомить об этом мой сервер?
Мой код
let txnParam = PUMTxnParam() PlugNPlay.setDisableCompletionScreen(true) txnParam.phone = "1111111111" txnParam.email = "test@test.com" txnParam.amount = "2550.0" txnParam.environment = PUMEnvironment.test txnParam.firstname = "test test" txnParam.key = kMerchentKey txnParam.merchantid = "5675943" txnParam.txnID = "1234567890" // txnParam.surl = "https://www.payumoney.com/mobileapp/payumoney/success.php" // txnParam.furl = "https://www.payumoney.com/mobileapp/payumoney/failure.php" txnParam.surl = "http://stagingserver.webmerx.com/payu-success.php" txnParam.furl = "http://stagingserver.webmerx.com/payu-fail.php" txnParam.productInfo = "Test Product" txnParam.udf1 = "ud1" txnParam.udf2 = "ud2" txnParam.udf3 = "ud3" txnParam.udf4 = "ud4" txnParam.udf5 = "ud5" txnParam.udf6 = "" txnParam.udf7 = "" txnParam.udf8 = "" txnParam.udf9 = "" txnParam.udf10 = ""
Установка значения хеш-функции, полученного с сервера
txnParam.hashValue = serverHashValue
Представление контроллера представления PlugNPlay
PlugNPlay.presentPaymentViewController(withTxnParams: txnParam, on: self) { (response, error, extraParam) in print(response as Any) print(error as Any) }
Серверная часть: PHP (Laravel Framework)
Причиной получения sUrl is invalid является DASH (-) в URL.
sUrl is invalid
http://stagingserver.webmerx.com/payu-success.php.
http://stagingserver.webmerx.com/payu-success.php
Как только я установил URL, как это ...
http://stagingserver.webmerx.com/payu_success.php
Работает изящно.
Но на удивление http://stagingserver.webmerx.com/payu-success.php url (с тире) отлично работает на платформе ANDROID. : -О
Но в iOS это выдавало меня неправильно sUrl.
sUrl
Эта вещь не документирована PayU money
Так что в конечном итоге самое забавное то, что после нескольких часов проб и ошибок наконец-то стало известно, что
НЕ ИСПОЛЬЗУЙТЕ тире в URL, пока интегрируете деньги PAYU в IOS: D
Надеюсь, это поможет другим