Offers Integration

(Optional Step)

Follow this section if you want to integrate Offers in PayUCheckoutPro SDK

Create Offers List

Create a list of offers that you want to pass to the CheckoutPro SDK. For each offer in list, offer title, offer description, offer key and offer payment types need to be passed. On Checkout Page SDK will show the best offer applicable on that payment mode based on the offers list sent to the SDK. Below is an example code for offers list

Java
Kotlin
Java
ArrayList<PayUOfferDetails> offerDetails = new ArrayList<>();
PayUOfferDetails payUOfferDetails1 = new PayUOfferDetails();
payUOfferDetails1.setOfferTitle("Instant discount of Rs.2");
payUOfferDetails1.setOfferDescription("Get Instant dicount of Rs.2 on all Credit and Debit card transactions");
payUOfferDetails1.setOfferKey("[email protected]");
ArrayList<PaymentType> offerPaymentTypes1 = new ArrayList<>();
offerPaymentTypes1.add(PaymentType.CARD);
payUOfferDetails1.setOfferPaymentTypes(offerPaymentTypes1);
PayUOfferDetails payUOfferDetails2 = new PayUOfferDetails();
payUOfferDetails2.setOfferTitle("Instant discount of Rs.2");
payUOfferDetails2.setOfferDescription("Get Instant dicount of Rs.2 on all NetBanking transactions");
payUOfferDetails2.setOfferKey("[email protected]");
ArrayList<PaymentType> offerPaymentTypes2 = new ArrayList<>();
offerPaymentTypes2.add(PaymentType.NB);
payUOfferDetails2.setOfferPaymentTypes(offerPaymentTypes2);
offerDetails.add(payUOfferDetails1);
offerDetails.add(payUOfferDetails2);
Kotlin
val offerDetails = ArrayList<PayUOfferDetails>()
offerDetails.add(PayUOfferDetails().also {
it.offerTitle = " Instant discount of Rs.2"
it.offerDescription = "Get Instant dicount of Rs.2 on all Credit and Debit card transactions"
it.offerKey = "[email protected]"
it.offerPaymentTypes = ArrayList<PaymentType>().also {
it.add(PaymentType.CARD)
}
})
offerDetails.add(PayUOfferDetails().also {
it.offerTitle = " Instant discount of Rs.2"
it.offerDescription = "Get Instant dicount of Rs.2 on all NetBanking transactions"
it.offerKey = "[email protected]"
it.offerPaymentTypes = ArrayList<PaymentType>().also {
it.add(PaymentType.NB)
}
})

Pass Offers List to SDK

To pass the Offers List created in above section to the SDK. Create a Object of PayUCheckoutProConfig and set Offers List as below

Java
Kotlin
Java
PayUCheckoutProConfig checkoutProConfig = new PayUCheckoutProConfig();
checkoutProConfig.setOfferDetails(offerDetails);
Kotlin
val checkoutProConfig = PayUCheckoutProConfig()
checkoutProConfig.offerDetails = offerDetails

This checkoutProConfig object should be passed in PayUCheckoutPro.open() method as mentioned here