Hey! These docs are for version 3.2, which is no longer officially supported. Click here for the latest version, 1.0!

Grant Loan Response

This method is called by the Lender when the Grant Loan processing is completed. This informs the borrower about the status of the loan in the lender system. Upon successful creation of a loan in the system, the lender returns all the details of the loan.

Response Parameters for the Grant Loan Response API:         (click to view)
ParameterTypeDescription
ack:wwwwwwww
  {error, traceId, timestamp}
ObjectJSON object for acknowlegement
    Parameters for the ack object:
ParameterTypeDescription
errorStringErrors in the current request received. If no errors are found, error = 0.
traceIdStringIdentification for tracing
timestampTime-
stamp
YYYY-MM-DDThh:mm:ssZ+/-hh:mm
(eg 1997-07-16T19:20:30+05:30)
Z +/- hh:mm = time zone designator (Z) followed by time zone difference from GMT in hours and minutes. THIS IS OPTIONAL. If not provided, it is assumed to be IST (+5.30)
The request for this API contains objects for Terms, Documents, Disbursement (with arrays for Plans and Account Details), and Repayment (with objects for Plan and Method).    (click to open tables)
ParameterTypeDescription
metadata:wwwnnww
  {param1, param2,...}
*Object
Strings
Metadata specific to each API response
  Parameters for the metadata object:     click to open)
FieldTypeDescription
versionStringOCEN Version
timestampTime-
stamp
YYYY-MM-DDThh:mm:ssZ+/-hh:mm
(eg 1997-07-16T19:20:30+05:30)
Z +/- hh:mm = time zone designator (Z) followed by time zone difference from GMT in hours and minutes. THIS IS OPTIONAL. If not provided, it is assumed to be IST (+5.30)
traceIdStringIdentification for tracing
orgIdStringOrigin ID
response: {error}ObjectStatus of response. Object contains only one string parameter for "error". If no errors are found, error = "0". For example, if a mandatory attribute is missing, error code should capture that.
requestId*StringUnique reference ID for the Grant Loan Request (UUID used to tie request and response and for idempotency)
loanId*StringUnique identifier for the loan that borrower accepted and agreed to be set up by lender. Will be generated if loanStatus = GENERATED.
terms:wwwwwwwniw
    {...,{...},{...},[...],..}
ObjectDetailed terms of the loan
 Parameters for the terms object:    {click to open)
requestedAmount*StringAmount - 2 digits precision
descriptionStringDescription of the loan terms
currencyObjectISO string of the currency. Use INR for Indian Rupee. Among other accepted values are EUR, USD, GBP. Default value: INR
sanctionedAmountStringLoan Amount Approved by lender
interestTypeStringFlag indicating if the interest rate is fixed or floating
interestRateStringInterest Rate for the loan. 2 digits precision
interestAmountStringInterest Amount for the duration specified in tenure
totalAmountStringTotal amount for repayment
tenure:
   {duration, unit}
Object
Strings
Tenure details:
duration
String
  Duration of the loan amount.
unit
String
  Time units
  (DAY, MONTH, etc.)
legalAgreement:
    {type, date}
Object
Strings
Loan Agreement:
type
String
  Indicates whether the
  agreement is shared directly
  as text or needs to be
  fetched from a url.
data
String
  Base64 encoded string.
documents:wwnnw
    [{...},{...},..]
Array of
Objects
Additional documents related to the terms. If no data is there to be sent, an empty array block can be passed.
  Parameters for each object in the documents array:
      (click to open)
format*StringFormat of document data to be sent
referenceStringUnique identifier for a document which can be used by other objects for referencing a document. In case where isDataInline is false, reference number can be used to hit an external API to get the data.
sourceStringSource system from where data is coming. Source can be from AA ecosystem or from USER
sourceIdentifiernnStringIf source is in AA ecosystem, sourceIdentifier is the identifier in central registry. In case of User, it will be his unique identifier
typeStringExpandable enum. Includes fiTypes in AA ecosystem and any additional type of documents that can be added to the system later
isDataInlineBooleanIndicates whether the data is actually present in the document block. If Yes, data field contains base 64 encoded version of the data.
dataStringData to be sent for document instance (Base64 encoded string)
charges:wwwwnww
    {(...},{...},...}
*Object
Objects
Penalties levied for issues with repayments
  Parameters for the charges object:     (click to open)
prepayment:wnw
      {....,{...}}
*ObjectPrepayment (use Charge Details object parameters below)
bounce:
      {....,{...}}
ObjectBounce (use Charge Details object parameters below)
latePayment:
      {....,{...}}
ObjectDetails of the charges levied when the borrower makes a late payment (use Charge Details object parameters below)
processing:
      {....,{...}}
ObjectProcessing fees charged by the lender (use Charge Details object parameters below)
  Parameters for the chargeDetails object:     (click to open)
chargeType*StringThis field indicates whether the penalty is fixed or varies
descriptionStringDescription of charge calculation
dataObject
Details of charge:
rate
String
  interest rate
applicableParameter
String
  Parameter for which
  data applies
amount
String
  Loan amount based on
  applicableParameter.
urlStringFor any new data that needs to be passed as a link
extensibleDatanStringFor any new data that needs to be added
url*StringFor any new data that needs to be passed as a link.
extensibleDatawntwJSONFor any new data that needs to be added
disbursement:wnwiw
    { [{...},..], [{...},..] }
*Object
Arrays
Details on disbursement plans provided by lender.
 Parameters for the disbursement object:
     {click to open)
plans:wwwwnwiww
    [{...}, {...}, ...]
*Array of
Objects
Disbursement plans provided by lender for the loan
  Parameters for each object in the plans array:
      (click to open)
idStringUnique id for the disbursement plan in the lender system
titleStringTitle of the disbursement plan
shortDescriptionStringShort description for the disbursement plan
descriptionStringDetailed description of the disbursement plan
urlStringURL of the payment page provided by the lender to show disbursement plans
automaticBooleanFlag indicating whether disbursement is automatic or user initiated
payNowAllowedBooleanFlag indicates if the lender can make an immediate payment with this disbursement plan
editPlanAllowedBooleanThis flag indicates if the configurations of the current disbursement plan can be changed by the borrower
changeMethodAllowedBooleanThis field indicates if the borrower can choose a different disbursement method for the plan
scheduleTypeStringType of schedule - can be ONE_TIME, AS_PRESENTED or RECURRING
frequencyStringIn case of a recurring payment, this field indicates how often the payment is disbursed
noOfInstallmentsStringNumber of installments for the chosen disbursement plan. Will be 1 for ONE_TIME schedule type
tenure:wwwwwinww
   {duration, unit}
Object
Strings
Tenure associated with the disbursement plan. This value will be less than or equal to the tenure in loan terms.
Tenure details:
duration
String
  Duration of the loan amount.
unit
String
  Time units
  (DAY, MONTH, etc.)
principalStringPrincipal - up to 2 digits precision
interestAmountStringInterest component for the duration specified in plan - up to 2 digits precision
penaltyStringPenalty component for the duration specified in loan - up to 2 digits precision
startDateStringThe first date on which the borrower chooses to make payment/wishes to get the disbursement credited.
statusStringFlag indicating if the plan is ACTIVE or INACTIVE
totalAmountStringTotal amount of loan
accountDetails:iww
    [{...}, {...}, ...]
*Array of
Objects
Details on the accounts where the amount will be disbursed by the lender.
  Parameters for each object in the accountDetails array:
      (click to open)
idStringUnique id. Mandatory if object is coming from lender
descriptionStringDescription of the account
statusStringThis field captures the status of whether the account has been linked to a loan or not
accountDataTypeStringThis suggests what kind of data is expected for account details in the data object
urlStringFor any new data that needs to be passed as a link.
extensibleDatawwnwwJSONFor any new data that needs to be added
data:
   {param1, param2,...}
ObjectThis object captures details of the account as suggested by the accountDataType parameter (Parameters are variable).
repayment:wwnwww
    { {...,{...} } }
*Object
Object
Details on repayment plan provided by lender.
 Parameters for the repayment object:
      {click to open)
plan:wwwtwwwiww
    {...,{...} }
*ObjectDetails on the repayment plan chosen by borrower for the loan
  Parameters for the plan object:
      (click to open)
idStringUnique id for the repayment plan in the lender system
titleStringTitle of the repayment plan
shortDescriptionStringShort description for the repayment plan
descriptionStringDetailed description of the payment plan
paymentUrlStringURL of the payment page provided by the lender to show repayment details
automaticBooleanFlag indicating whether payment is automatic or user initiated
payNowAllowedBooleanFlag indicates if the borrower can make an immediate payment with this repayment plan
editPlanAllowedBooleanThis flag indicates if the configurations of the current repayment plan can be changed by the borrower
changeMethodAllowedBooleanThis field indicates if the borrower can choose a different payment method for the plan
scheduleTypeStringType of schedule - can be ONE_TIME, AS_PRESENTED or RECURRING
frequencyStringIn case of a recurring payment, this field indicates how often the payment is disbursed
noOfInstallmentsStringNumber of installments for the chosen repayment plan. Will be 1 for ONE_TIME schedule type
tenure:wwwwwinww
   {duration, unit}
Object
Strings
Tenure associated with the repayment plan. This value will be less than or equal to the tenure in loan terms.
Tenure details:
duration
String
  Duration of the loan amount.
unit
String
  Time units
  (DAY, MONTH, etc.)
principalStringPrincipal - up tp to 2 digits precision
interestAmountStringInterest component for the duration specified in plan - up to 2 digits precision
penaltyStringPenalty component for the duration specified in loan - up to 2 digits precision
startDateStringThe first date on which the borrower chooses to make payment/wishes to get the disbursement credited.
statusStringFlag indicating if the plan is active or inactive
totalAmountStringTotal amount of loan
method:wwwiwww
    {...,{...} }
*ObjectDetails on the method of repayment.
  Parameters for the method object:
      (click to open)
typewwtwwwwww*StringType of method - Example: "EMANDATE_UPI"
statusStringThis field captures the current status of the repayment method being used - Example: "ACTIVE"
data:  {..,{..},{..}}ObjectThis object captures details of the repayment method.
  Parameters for the data object:     (click to open)
refNumber*StringReference number for the repayment instance.
amountStringAmount agreed upon for a repayment instance.
amountTypeStringType of amount - Example: "MAX"
activeFromDate-
Time
Date/time (ISO representation) when repayment period starts.
expiryDateDate-
Time
Date/time (ISO representation) when repayment period expires.
destinationAccount:
      {...,{...}}
ObjectDetails of the destination acccount
  Parameters for the destinationAccount object:
      (click to open)
accountDataTypenStringType of data used for destination account
data:wwwwwwwnw
      {prm1, prm2}
Object
Strings
Additional data on dest. acct.:
accountType
String
  Type of account.
  Example: "CURRENT"
maskedAccountNumber
String
  Masked account number
sourceAccount:www
      {...,{...}}
nObjectDetails of the source account
  Parameters for the sourceAccount object:
      (click to open)
accountDataTypenStringType of data used for source account
data:wwwwwwwww
      {prm1, prm2}
Object
Strings
Additional data on source acct.:
accountType
String
  Type of account.
  Example: "CURRENT"
maskedAccountNumber
String
  Masked account number
rejectionDetails:wnw
    [{...},{...},..]
*Array of
Objects
To be filled if the status of the loan is REJECTED. This object will have the details of why the loan was rejected
  Parameters for each object in the rejectionDetails array:
      (click to open)
reason*StringReason why the lender has decided not to make a loan offer to the borrower
descriptionStringDetailed description of the reason for rejection
urlStringFor any new data that needs to be passed as a link
extensibleDatawwwJSONFor any new data that needs to be added
actionRequired:www
    [{...},{...},..]
*Array of
Objects
To be filled if the status of the loan is ACTION_REQUIRED. This object captures the details of any action that the lender wants the borrower to do.
  Parameters for each object in the actionRequired array:
      (click to open)
actionType*StringType of action expected from the borrower
descriptionStringDetailed description of the expected action
referenceStringReference to any documents uploaded as part of the loan request indicating the document where action is required
urlStringFor any new data that needs to be passed as a link
extensibleDatawwwJSONFor any new data that needs to be added
loanStatuswnwwwww*StringIf loan is ready to be processed: loanStatus = "GENERATED".
After loan is processed by lender: loanStatus = GRANTED / REJECTED / DEFAULTED / COMPLETED / ACTION_REQUIRED
* = Required
Language
Authentication
Basic
base64
:
Click Try It! to start a request and see the response here!