【问题标题】:What is success url & failure url while integrating payU Money in android?在 android 中集成 payU Money 时成功 url 和失败 url 是什么?
【发布时间】:2016-08-18 09:58:50
【问题描述】:

这是我的一些活动代码,surl 和 furl 是什么?谁能帮帮我?

提前致谢:)

 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());

【问题讨论】:

  • 你遇到了什么错误??再解释一下你的问题。
  • 对 surl 和 furl 感到困惑?这两个 url 是什么,我可以从哪里获取并传递它?
  • 以下答案对您有帮助吗?

标签: android payment-gateway payumoney


【解决方案1】:

下图解释了客户如何付款以及流程如何进行:

第 1 步:消费者在您的网站上选择产品并点击“立即付款”按钮。

第 2 步: 然后将消费者从您的网站带到 www.payumoney.com 的交易页面,消费者在其中输入所有与付款相关的详细信息。

第 3 步: Payumoney.com.com 将消费者重定向到 Visa、MasterCard 或相关银行以获得下一级授权。

第 4 步:银行/Visa/MasterCard 授权并确认交易。

第 5 步:消费者被送回 PayUMoney。

第 6 步: PayUMoney 将消费者连同交易状态一起发送回您的网站。

surlfurl 在上述流程的最后一步出现。它只是成功和失败页面 URL,您希望将用户带到成功和失败案例的位置。

例如,如果您有一个感谢页面,您希望用户在成功交易后前往该页面,那么您将该页面的 URL 传递为 surl

同样,如果您有任何错误页面希望用户失败,则将该 URL 传递为 furl

来源: PayUMoney Integration in android.

【讨论】:

    【解决方案2】:

    payumoney 将用户和交易数据发布到这些urls。所有成功的交易都转到 surl,所有失败的交易数据都作为 post 请求转到 furl。

    您可以为您的应用程序逻辑保存这些信息。

    here 是显示 POST 请求的链接。

    【讨论】:

      【解决方案3】:

      成功和失败 URI 是一个重定向链接。基本上,当事务成功时,它会重定向到成功的 URI,否则它会重定向到失败的 URI。

      【讨论】:

        【解决方案4】:

        在 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);
        

        您可以找到完整的 Downloadable tutorial with working app in this link。 PayUmoney 的整合过程非常简单。步骤如下-

        第一步获取商家密钥和盐

        第 2 步上传服务器端 PHP 文件以进行校验和 HASH

        第三步添加依赖

        第 4 步获取校验和哈希

        第 5 步开始交易

        【讨论】:

          【解决方案5】:

          使用 PayUmoney Android SDK 进行支付时,会给出两种支付响应:

          1.回调函数中的客户端响应

          2。 Webhook 上的服务器到服务器回调(如果从 PayUmoney 仪表板设置)。

          1. 客户端响应处理: 要知道付款何时完成,请覆盖您的活动中的 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!");
                  }
              }
          }
          
          1. 服务器端响应处理:

          随时为您处理payu成功和失败响应。

          例如(REST):

          网址:https://hostname/REST/service/payusucess

          FURL:https://hostname/REST/service/payufailure

          付款完成后,它将向您的服务器端相应(成功/失败)发布响应。您必须获取响应并在您的 REST 服务中处理它并显示响应页面。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2016-02-23
            • 2017-02-14
            • 1970-01-01
            • 2012-09-18
            • 2019-11-22
            • 1970-01-01
            • 2015-05-14
            相关资源
            最近更新 更多