For the complete documentation index, see llms.txt. This page is also available as Markdown.

Early or Advance Repayment

To make an early or advance repayment on a loan, send a POST request to the endpoint:

POST /api/loanaccount/v1/EarlyRepaymentLoan

The request body requires the loanAccountNumber, paymentOption, and instrumentNumber, along with paymentSchedulesToProcess (only when doing a part repayment) and the relevant GL account.

A successful request will return a status and message confirming the repayment, along with a data object containing the transaction's statusCode, referenceNumber, instrumentNumber, and duration.

This process allows customers to repay a loan ahead of schedule, either in full, closing the loan automatically, or by paying off specific upcoming payment schedules in part.

Headers

Name
Value

Content-Type*

application/json

Authorization*

Bearer

Request-Reference*

{unique_reference}

Body

Name
Data Type (Length)
Required
Description

loanAccountNumber

string (50)

The loan account number.

paymentOption

The type of early repayment to be made. FullRepayment means the loan is terminating, the system will automatically close the loan. PartRepayment pays off specific upcoming payment schedules in advance.

paymentSchedulesToProcess

array

The IDs of the schedules the customer is paying for in advance. The customer cannot pay a payment schedule in part, if the upcoming Principal is 10,000, then 10,000 is expected in the customer's balance for the repayment.

instrumentNumber

string (50)

A unique instrument number for this repayment.

actualInterestToBePaid

number

The amount of interest to be charged, if any. If Interest is to be charged, pass the value here, otherwise pass 0. Amount should be sent in the base unit of the currency; for example, 500 naira should be sent as 50,000 kobo.

actualFeesToBePaid

number

The amount of fees to be charged, if any. If a Fee is to be charged, pass the value here, otherwise pass 0. Amount should be sent in the base unit of the currency; for example, 500 naira should be sent as 50,000 kobo.

incomeGL

string (10)

A General Ledger Account created on the CBA portal. This GL will typically be a Bank GL. For Production, the GL should be requested from the Bank. Required if actualFeesToBePaid > 0

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/EarlyRepaymentLoan' \
--header 'Authorization: bearer {token}' \
--header 'request-reference: {unique_reference}' \
--header 'Content-Type: application/json' \
--data '{
  "loanAccountNumber": "1000003305000074660",
  "paymentOption": 1,
  "paymentSchedulesToProcess": [
    "3fa85f64-5717-4562-b3fc-2c963f66afa6"
  ],
  "instrumentNumber": "",
  "actualInterestToBePaid": 0,
  "actualFeesToBePaid": 0,
  "incomeGL": "40101022"
}'
Response: 200

Last updated