Create Loan Account

Send a POST request to the endpoint mentioned above to create a new loan account. The request should include the required payloads in the request body, such as customerID, linkedNumber, lendingModel, and other necessary information.

POST /api/loanaccount/v1/add A successful request will return the loan accountNumber, id and a success message in the response, allowing for reference to the newly created loan account. This process allows for creating customer loan accounts and simplifies the management of loan-related information.

Headers

Name
Value

Content-Type*

application/json

Authorization*

Bearer <token>

Request-Reference

{unique-reference}

Body

Name
Data Type (length)
Required
Description

customerID

string

The unique identifier of the customer applying for the loan The CustomerID must be the same as the CustomerID linked to the beneficiary

linkedNumber

string

The number linked to the loan account (NUBAN) for disbursement

productCode

string

The code of the loan product being applied for The loan products should be created on the Udara360 portal and they must be active.

lendingModel

integer

The model used for lending The enumerations are: 1 = CreditUnion 2 = Individual 3 = Individuals 4 = NeighbourhoodAndSmallGroupRevolvingFunds 5 = Other 6 = SolidarityGroups 7 = Staff, 8 = VillageBanking 9 = WholesaleLending

economicSector

integer

The code representing the economic sector The enumerations are: 40100 = Agriculture, Forestry, and Fishing 40200 = Mining and Quarrying 40300 = Manufacturing 40500 = Real Estate Activities 40700 = General Commerce 40800 = Transportation and Storage 40900 = Finance and Insurance 41000 = General 41200 = Governments 41300 = Water Supply, Sewage, Waste Management, and Remediation Activities 41400 = Construction 41500 = Information and Communication 41600 = Professional, Scientific, and Technical Activities 41700 = Administrative and Support Service Activities 41800 = Education 41900 = Human Health and Social Work Activities 42000 = Arts, Entertainment, and Recreation 42100 = Activities of Extra-Territorial Organizations and Bodies 42200 = Power and Energy 42300 = Capital Market 42400 = Oil and Gas

loanAmount

integer

The amount of the loan being applied for The amount should be supplied in the base currency amount. For example, 1000.55 should be sent as 100055.

startDate

dateTime

The start date of the loan

tenure

integer

The tenure of the loan in months

guarantorID1

string

The ID of the first guarantor

guarantorID2

string

The ID of the second guarantor

penaltyGracePeriod

integer

The grace period before a penalty is applied in days

hasCollateralPledge

boolean

Indicates if there is a collateral pledge, set true for yes an false for no

collateralType

integer

The type of collateral provided The enumerations are: 1 = RealEstateLandAndBuilding 2 = Automobile 3 = PlantAndEquipment 4 = NaturalReserves 5 = MarketableSecurities 6 = AccountsReceivablesAndInventory 7 = Cash 8 = PersonalGuarantees 9 = PostDatedCheques 10 = Dormicilliation 11 = HouseholdItems

collateralValuation

integer

The valuation of the collateral

collateralDescription

string

A description of the collateral provided

principalRepaymentType

integer

The type of principal repayment The enumerations are: 1 = EndOfContract 2 = Prorated 3 = Upfront

principalFrequency

integer

The frequency of principal repayment 1 = Daily 2 = Weekly 3 = Fortnight 4 = Monthly

5 = Quarterly

6 = HalfYearly

7 = Annually

8 = EndOfContract

9 = Upfront

principalToBeRepaidEvery

integer

How frequently the principal should be repaid if it's not at the EndOfContract or Upfront

principalInstallment

integer

The amount of each principal instalment, this parameter can also be used to compute the tenure

useProductInterestRate

boolean

Indicates whether the product's interest rate should be used, set true for yes and false for no

defaultingInterestRate

integer

The interest rate that is applied when the loan defaults

interestRepaymentType

integer

The type of interest repayment The enumerations are: 1 = EndOfContract 2 = Prorated 3 = Upfront

interestFrequency

integer

The frequency of interest repayment The enumerations are: 1 = Daily

2 = Weekly

3 = Fortnight

4 = Monthly

5 = Quarterly

6 = HalfYearly

7 = Annually

8 = EndOfContract

9 = Upfront

interestToBeRepaidEvery

integer

How often the interest is to be repaid

interestInstallment

integer

The total number of instalments

interestAccrualMode

integer

The mode by which interest accrues The enumerations are: 1 = Fixed

2 = ReducingBalance

3 = ReducingBalanceButEqual

interestFreePrincipalAmount

integer

The amount of the principal that is interest-free

securityDeposit

integer

The amount of the security deposit taken The system will place a lien on the account and automatically release it when the loan expires or is closed.

holdFundSecurityDeposit

boolean

Indicates whether the fund security deposit is held, set true for yes and false for no

applyLoanFees

boolean

Indicates whether loan fees should be applied, set true for yes and false for no

loanFees

array

An array of objects representing the fees associated with the loan

loanFees.loanFeeCode

string

The loan fee code

loanFees.name

string

The loan code name

allowMoratorium

integer

Indicates whether a moratorium is allowed The enumrations are (nullable): 1 = False

2 = PrincipalOnly

3 = InterestOnly

4 = PrincipalAndInterest

moratoriumDuration

integer

The duration of the moratorium 1 = IncreaseTotalLoanDuration 2 = DonNotIncreaseTotalLoanDuration

moratoriumFrequency

integer

The frequency of the moratorium The enumerations are: 1 = Daily

2 = Weekly

3 = Monthly

4 = Annually

moratoriumEffect

integer

The effect of the moratorium

The enumerations are: 1 = IncreaseTotalLoanDuration

2 = DonNotIncreaseTotalLoanDuration

enableRepaymentTracker

boolean

Indicates whether the repayment tracker is enabled set true for yes and false for no

repaymentTrackerInDays

integer

The number of days for the repayment tracker

Here is an example request and response with a sample payload sent to the endpoint in Curl format.

Sample Request
curl --location -g '{{baseurl}}/api/loanaccount/v1/add' \
--header 'Authorization: bearer {token}' \
--header 'request-reference: {unique_reference}' \
--header 'Content-Type: application/json' \
--data '{
  "customerID": "string",
  "linkedNumber": "string",
  "productCode": "305",
  "lendingModel": 1,
  "economicSector": 42400,
  "guarantorID1": "",
  "guarantorID2": "",
  "penaltyGracePeriod": 0,
  "loanAmount": 100000,
  "hasCollateralPledge": true,
  "collateralType": 2,
  "collateralValuation": 100000,
  "collateralDescription": "Toyota Camry 2008",
  "startDate": "2021-06-28",
  "tenure": 60,
  "principalRepaymentType": 2,
  "principalFrequency": 4,
  "principalToBeRepaidEvery": 1,
  "principalInstallment": 2,
  "useProductInterestRate": true,
  "defaultingInterestRate": 0,
  "interestRepaymentType": 2,
  "interestFrequency": 4,
  "interestToBeRepaidEvery": 1,
  "interestInstallment": 2,
  "interestAccrualMode": 1,
  "interestFreePrincipalAmount": 0,
  "securityDeposit": 0,
  "holdFundSecurityDeposit": false,
  "applyLoanFees": false,
  "loanFees": [
    {
      "loanFeeCode": "",
      "name": ""
    }
  ],
  "allowMoratorium": null,
  "moratoriumDuration": 0,
  "moratoriumFrequency": null,
  "moratoriumEffect": null,
  "enableRepaymentTracker": false,
  "repaymentTrackerInDays": 0
}'
Respose: 200
{
  "status": true,
  "message": "string",
  "data": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "accountNumber": "1000003305000021282"
  }
}

Last updated