Supporting Versions below Lolipop

This page describes changes that need to be made to support the versions below the Android Lollipop version (Android version 21).


  • TLS v1.1+ Support for API levels 16-19 is done via chrome custom tabs.
  • Chrome must be present in the device (version 45+ available JB onwards).
  • Since payment is done through Chrome Custom tabs hence no surepay/OTP assist feature will be available.

Changes required in surl/furl

Convert the response that your surl/furl processes into URI encoded format and add it to the payload key like below. In case you want to send a response sent by the PayU server then, make sure to append it after $| similar to the following:


<a id="intentId" href="intent://payload?<URI_ENCODED_POST_DATA>#Intent;scheme=<YOUR_SCHEME>;package=<YOUR_PACKAGE_NAME>;end\">


For Surl -scheme=<YOUR_PACKAGE_NAME>.success
For Furl – scheme=<YOUR_PACKAGE_NAME>.failure



You are advised to show a hyperlink, asking users to click to launch the deep link intent in.

<script type="text/javascript"> 
var myFunc= function() {
window.onload = function() { 
setTimeout(myFunc, 3000); 
<a id="intentld" 
href="Intent://payload?<URI_ENCODED_POST_DATA>Mntentscheme=<YOUR_SCHEME>;package=< YOUR_PACKAGE_NAME>;end\"> Click here to go back to app </a> 



For API level 19, if the TLSv1.1+ connection cannot be made due to the old Cipher, you are advised to make changes as suggested in the reference.

Custom Browser changes



If the GMS provider is already updated or the host application handles it, PayU suggests you configure the following configuration so that CB OTP assists and SurePay can work on API 19.

customBrowserConfig.setGmsProviderUpdatedStatus(CustomBrowserConfig.TRUE); //Default - CustomBrowserConfig.FALSE

If you do not handle the GMS Provider change, Google Chrome tabs will make payment for Android KitKat (API 19).