PayU Standing Instructions Parameters

Step 1: Create a SI parameters object

Create a class PayUSIParams object using the code similar to the following:

//Swift
let siParam = PayUSIParams(billingAmount: <String>,
paymentStartDate: <Date>,
paymentEndDate: <Date>,
billingCycle: <PayUBillingCycle>,
billingInterval: <NSNumber>,
billingLimit: <PayuBillingLimit>,
billingRule: <PayuBillingRule>)
/* Objective C */
PayUSIParams *siParam = [[PayUSIParams alloc] initWithBillingAmount:<#(NSString * _Nonnull)#>                                                   paymentStartDate:<#(NSDate * _Nonnull)#>                                                     
paymentEndDate:<#(NSDate * _Nonnull)#>                                                       billingCycle:<#(enum PayUBillingCycle)#>                                                    billingInterval:<#(NSNumber * _Nonnull)#>];

Step 2: Post parameters

EnableSI
mandatory
Boolean: This flag must contain any of the following to indicate if SI or subscriptions is required for the payment link:

1: The request is eligible for SI

0: The request is eligible for SI

Note: If EnableSI=1 in the JSON, the values for all other fields (mandatory) in this JSON must be posted
billingAmount
mandatory
String Contains the billing amount
billingCycle
mandatory
String Billing Cycle defines whether the customer needs to be charged on a Daily, Weekly basis, Monthly, or Yearly basis or one time.
billingInterval
mandatory
NSNumber Billing Interval is closely coupled with the value of β€œbillingCycle” and denotes at what frequency, the subscription plan needs to be executed.
billingLimit
mandatory
String The possible values for this parameter are:

-ON = On the specific date
- BEFORE = Before and on the specific date
- AFTER = After and on the specific date
If no value is passed, then by default this is considered as β€˜AFTER’
billingRule
mandatory
String
MAX = Maximum amount. Lesser than this or equal to this amount can be debited in recurring debits
EXACT= Exact this amount can be debited in recurring debits
Note: If no value is passed, then by default this is considered as β€˜MAX’.
billingCurrency
mandatory
String Currency in which the amount needs to be collected. By default, it is 'INR'.
paymentStartDate
mandatory
Date Start date of recurring payment.
paymentEndDate
mandatory
Date End Date of recurring payment
freeTrial
optional
Boolean This flag is to indicate any of the following:

0: This is not a trial subscription. If this parameter is not posted, will be assumed as 0.

1: This is a trial subscription.