Loans

Add loan

Create a new loan

POST {base url}/v1/loans

Headers

Name
Type
Description

Authorization header*

string

API user secret key

Request Body

Name
Type
Description

loanProductId*

String

loan product id

name*

String

loan name

amount*

Number

loan amount(major)

interestRate

Number

loan interest rate

moratorium

Number

loan moratorium

tenure

Number

loan tenure

accountHolder*

String

id of the client/company

accountHolderType*

String

clients/companies

loanApplicationDate

string

application date

{
    "responseCode": "00",
    "status": "success",
    "message": "loan created successfully",
    "data": {
        "organizationId": "aee1a803-3835-4195-b732-a19f7c3702c8",
        "accountHolderType": "clients",
        "loanName": "third loan with repayment schedule",
        "amount": 10000,
        "accountNumber": "16050926853",
        "accountHolder": "d4c9f36f-ffbb-4c85-87cb-97c8fee6b9ad",
        "interestRate": 12,
        "moratorium": 6,
        "tenure": 90,
        "tranches": null,
        "state": "PENDING",
        "customData": {},
        "document": null,
        "depositAccount": null,
        "loanProductId": "798ca840-07c7-4226-ba10-52b722d8d968",
        "balances": {
            "totalAccruedFees": 0,
            "totalAccruedPenalty": 0,
            "totalAccruedinterest": 0,
            "totalPrincipalBalance": 10000
        },
        "gracePeriod": null,
        "riskState": null,
        "comment": null,
        "writtenOffDate": null,
        "approvedDate": null,
        "disbursedDate": null,
        "declinedDate": null,
        "nextRepaymentDate": null,
        "lastRepaymentDate": null,
        "id": "bd63129a-41d5-417c-a48a-c8377a901390",
        "totalDue": 0,
        "totalPaid": 0,
        "status": "inactive",
        "created_at": "2024-03-12T13:51:00.529Z",
        "updated_at": "2024-03-12T13:51:00.529Z"
    }
}

Update loan

PATCH {base url}/v1/loans

Update a single loan

Headers

Name
Type
Description

Authorization header*

string

API user secret key

Path Param

Name
Type
Description

loanId*

String

id of the loan to be updated

Request Body

Name
Type
Description

state*

string

Possible values are: APPROVED, DECLINED.

comment

text

Get all loan accounts

Get all loan accounts

GET {base url}/v1/loans

Get all loan accounts

Get loan account details

Get loan account details

GET {base url}/v1/loans

Get loan account details

Path Parameters

Name
Type
Description

loanId*

string

id of the loan.

Get loan schedule

Get loan schedule

GET {base url}/v1/loans/{loanId}/repayments

Request Param

Name
Type
Description

loanId

uuid

id of the loan.

Get loan transactions

Get loan transactions

GET {base url}/v1/loans/transactions

Get loan transactions

Query Parameters

Name
Type
Description

accountNumber*

string

account number generated for the loan.

Get loan balances

Get loan balances

GET {base url}/v1/loans/{loanId}/balances

Get loan balances

Request Param

Name
Type
Descriopiton

loanId

uuid

id of the loan

Repay loan

Repay loan

POST {base url}/v1/loans/transaction/{loanId}/repay

Repay loan

Request Param

Name
Type
Description

loanId

uuid

id of the loan

Request Body

Name
Type
Description

channel

string

id of the channel attached when disbursing internal loan.

amount*

number

amount(major)

Loan payoff

Loan payoff

POST {base url}/v1/loans/transaction/{loanId}/payoff

Loan payoff

Request Param

Name
Type
Description

loanId

uuid

id of the loan

Request Body

Name
Type
Description

channel

string

channel

amount*

number

amount(major)

Loan WriteOff

POST {base url}/v1/loans/transaction/{loanId}/payoff

Loan write-off

Request Body

Name
Type
Description

amount*

number

amount (major)

loan topup

Loan topup

POST {base url}/v1/loans/transaction/{loanId}/topup

Loan topup

Request Body

Name
Type
Description

amount *

number

loan amount (major)

interest

number

interest

tenure

number

tenure

firstRepaymentDate

string

first repayment date

Liquidate loan

Liquidate loan

POST {base url}/v1/loans/transaction/{loanId}/liquidate

Liquidate loan

Request Body

Name
Type
Description

amount *

number

loan amount (major)

channel

string

channel

disburse loan

Disburse loan

POST {base url}/v1/loans/transaction/{loanId}/disburse

disburse loan

Headers

Name
Value

Authorization header *

API secret key

Request Param

Name
Type
Decsription

loanId

uuid

id of the loan

Body

Name
Type
Description

type *

string

type (INTERNAL/EXTERNAL)

accountNumber

string

nuban account number is required if type is INTERNAL

narration

string

narration

channel

string

channel is required if type is INTERNAL

changeFirstRepaymentDate *

boolean

change repayment date

firstRepaymentDate

string

new first repayment date. required if changeFirstRepaymentDate is set to true.

disburseDate

string

loan disburse date

Response

Last updated

Was this helpful?