Integration

This section describes how to integrate CustomBrowser in your app module.

Getting Started

Add below dependency in your application's build.gradle.

'com.payu.custombrowser:payu-custom-browser:7.6.2'

From version 7.4.0 onwards it is mandatory to import UPI sdk dependency in case you want to make payments via any UPI option viz. : UPI Intent, Collect, Google Pay, PhonePe ,SamsungPay along with the changes mentioned here.

Merchants are advised to add below permission in application's AndroidManifest.xml to support OTP assist.

<uses-permission android:name="android.permission.RECEIVE_SMS" />

In case your application's supports min sdk less than 20 then kindly do these changes in your surl/furl.

CheckForPaymentAvailability

Function in CustomBrowser class. Checks for payment option type availability.

Input:
Activity : activity instance
PaymentOption : Payment Option type e.g.PaymentOption.SAMSUNGPAY,PaymentOption.PHONEPE
PayUCustomBrowserCallback : this class provide callbacks
paymentOptionHash : Payment Related Details Hash
merchantKey : PayU Merchant Key
user_credentials : User credentials or use "default"
//Code Sample
new CustomBrowser().checkForPaymentAvailability(Activity activity, PaymentOption paymentOption, PayUCustomBrowserCallback payUCustomBrowserCallback, String paymentOptionHash, String merchantKey, String user_credentials)

Invoking CustomBrowser

Invoking Custombrowser is just a 3 step procedure.

  1. Create a basic object of CustomBrowserConfig like below(For more Configurations supported visit here):

Post Url can be any of the following:

Production - https://secure.payu.in/_payment

Staging - https://test.payu.in/_payment

CustomBrowserConfig customBrowserConfig = new CustomBrowserConfig(merchantKey,txnId);
customBrowserConfig.setPayuPostData(<Post Data>);
customBrowserConfig.setPostUrl(<Post Url>);

2. Create an object of PayUCustomBrowserCallback.

3. Call method addCustomBrowser() like below:

Input:
Activity : activity instance
CustomBrowserConfig : configuration object of the custom browser
PayUCustomBrowserCallback : this class provide callbacks
//Code Sample
new CustomBrowser().addCustomBrowser( Activity activity, CustomBrowserConfig customBrowserConfig, PayUCustomBrowserCallback cbPayUCustomBrowserCallback)