Официальный документ гласит, что вы должны начать транзакцию, используя

егрировал Payu в свое приложение для Android через официальные документы наhttps://www.payumoney.com/dev-guide/mobilecheckout/android.html#prereq .

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

   public void makePayment(View view) {
    String phone = "8882434664";
    String productName = "product_name";
    String firstName = "piyush";
    String txnId = "0nf7" + System.currentTimeMillis();
    String email = "[email protected]";
    String sUrl = "https://test.payumoney.com/mobileapp/payumoney/success.php";
    String fUrl = "https://test.payumoney.com/mobileapp/payumoney/failure.php";
    String udf1 = "";
    String udf2 = "";
    String udf3 = "";
    String udf4 = "";
    String udf5 = "";
    boolean isDebug = true;

    String key = "2fcU3pmI";
    String merchantId = "4947182";// These credentials are from https://test.payumoney.com/ 
    String salt = "BxA24L2F7Z";   //  THIS WORKS

  /*  String key = "yX8OvWy1";     //These credentials are from https://www.payumoney.com/ 
    String merchantId = "5826688"; //THIS DOESN'T WORK
    String salt = "0vciMJBbaa";    //ERROR: "some error occurred, Try again"
  */

    PayUmoneySdkInitilizer.PaymentParam.Builder builder = new PayUmoneySdkInitilizer.PaymentParam.Builder();


    builder.setAmount(getAmount())
            .setTnxId(txnId)
            .setPhone(phone)
            .setProductName(productName)
            .setFirstName(firstName)
            .setEmail(email)
            .setsUrl(sUrl)
            .setfUrl(fUrl)
            .setUdf1(udf1)
            .setUdf2(udf2)
            .setUdf3(udf3)
            .setUdf4(udf4)
            .setUdf5(udf5)
            .setIsDebug(isDebug) //Also can someone clarify if this should be true/false for live mode
            .setKey(key)
            .setMerchantId(merchantId);

    PayUmoneySdkInitilizer.PaymentParam paymentParam = builder.build();


    String hash = hashCal(key + "|" + txnId + "|" + getAmount() + "|" + productName + "|"
            + firstName + "|" + email + "|" + udf1 + "|" + udf2 + "|" + udf3 + "|" + udf4 + "|" + udf5 + "|" + salt);
    Log.d("app_activity123", hash);
    paymentParam.setMerchantHash(hash);

    PayUmoneySdkInitilizer.startPaymentActivityForResult(MyActivity.this, paymentParam);

}

Дополнительная информация: Тестовые учетные данные не работали изначально. Мне пришлось связаться со службой поддержки Payu, чтобы активировать учетную запись, после чего код работал нормально. Мой работодатель сказал, что он активировал реальный счет, поэтому я не знаю, в чем здесь проблема.

Здесь нет других проблем, как у меня, самый близкий здесьИнтеграция PayuMoney в Android: произошла ошибка! Попробуйте еще раз и это без ответа.

Ответы на вопрос(3)

Ваш ответ на вопрос