Loan Products

Create Loan Product

POST {base url}/v1/loanProducts

Body

{
        "name": "test product",
        "type": "FIXED_TERM_LOAN",
        "currency": "NGN",
        "initialState": "PENDING_APPROVAL",
        "description": "test product",
        "userType": [
            "clients",
            "companies"
        ],
        "branch": [
            "all_branches or id of the individual branches the product will be available to"
        ],
        "enableLinking": false,
        "minAmount": 10000,
        "maxAmount": 10000000,
        "interest": {
            "daysInAYear": 365,
            "interestType": "SIMPLE_INTEREST",
            "interestCharged": "%_PER_YEAR",
            "interestPosting": "ON_DISBURSEMENT",
            "maxInterestRate": 40,
            "minInterestRate": 30,
            "repaymentInterest": "REPAYMENT_PERIOD",
            "defaultInterestRate": 35,
            "interestCalculation": "DECLINING_BALANCE"
        },
        "scheduling": {
            "paymentMade": {
                "value": 1,
                "period": "WEEK/MONTH/YEAR"
            },
            "paymentMethod": "STANDARD_PAYMENT",
            "maxGracePeriod": 5,
            "minGracePeriod": 2,
            "maxInstallments": 10,
            "minInstallments": 4,
            "paymentInterval": "INTERVAL",
            "maxDueDateOffset": 3,
            "minDueDateOffset": 1,
            "enableGracePeriod": true,
            "defaultGracePeriod": 3,
            "principalCollected": 1,
            "defaultInstallments": 6,
            "defaultDueDateOffset": 2,
            "currencyRoundingSchedule": "NO_ROUNDING",
            "principalRoundingSchedule": "NO_ROUNDING"
        },
        "collection": {
            "acceptPrepayment": false,
            "paymentAllocation": "HORIZONTAL",
            "prepaymentAllocationOrder": {
                "fee": 0,
                "penalty": 1,
                "interest": 2,
                "principal": 3
            }
        },
        "penalty": {
            "enablePenalty": false
        },
        "security": {
            "enableCollateral": false,
            "enableFundingSource": false
        },
        "accounting": {
            "feeIncome": "2029427635",
            "methodology": "ACCRUAL",
            "feeReceivable": "4048468827",
            "penaltyIncome": "2029427635",
            "interestIncome": "2029427635",
            "writeOffExpense": "1014905527",
            "portfolioControl": "4048468827",
            "penaltyReceivable": "4048468827",
            "transactionSource": "4048468827",
            "interestReceivable": "4048468827"
        },
        "fees": [
            {
                "value": 75,
                "feeName": "management fee",
                "feeType": "ON_DISBURSEMENT",
                "feePayment": "FLAT or PERCENTAGE_0F_DISBURSE_AMOUNT"
            }
        ]
        ]
    }

Update loan product

PATH /api/v1/loanProducts/{loanId}

Update single loan product

Headers

Body

Response

{
        "name": "test product",
        "type": "FIXED_TERM_LOAN",
        "currency": "NGN",
        "initialState": "PENDING_APPROVAL",
        "description": "test product",
        "userType": [
            "clients",
            "companies"
        ],
        "branch": [
            "all_branches or id of the individual branches the product will be available to"
        ],
        "enableLinking": false,
        "minAmount": 10000,
        "maxAmount": 10000000,
        "interest": {
            "daysInAYear": 365,
            "interestType": "SIMPLE_INTEREST",
            "interestCharged": "%_PER_YEAR",
            "interestPosting": "ON_DISBURSEMENT",
            "maxInterestRate": 40,
            "minInterestRate": 30,
            "repaymentInterest": "REPAYMENT_PERIOD",
            "defaultInterestRate": 35,
            "interestCalculation": "DECLINING_BALANCE"
        },
        "scheduling": {
            "paymentMade": {
                "value": 1,
                "period": "WEEK/MONTH/YEAR"
            },
            "paymentMethod": "STANDARD_PAYMENT",
            "maxGracePeriod": 5,
            "minGracePeriod": 2,
            "maxInstallments": 10,
            "minInstallments": 4,
            "paymentInterval": "INTERVAL",
            "maxDueDateOffset": 3,
            "minDueDateOffset": 1,
            "enableGracePeriod": true,
            "defaultGracePeriod": 3,
            "principalCollected": 1,
            "defaultInstallments": 6,
            "defaultDueDateOffset": 2,
            "currencyRoundingSchedule": "NO_ROUNDING",
            "principalRoundingSchedule": "NO_ROUNDING"
        },
        "collection": {
            "acceptPrepayment": false,
            "paymentAllocation": "HORIZONTAL",
            "prepaymentAllocationOrder": {
                "fee": 0,
                "penalty": 1,
                "interest": 2,
                "principal": 3
            }
        },
        "penalty": {
            "enablePenalty": false
        },
        "security": {
            "enableCollateral": false,
            "enableFundingSource": false
        },
        "accounting": {
            "feeIncome": "2029427635",
            "methodology": "ACCRUAL",
            "feeReceivable": "4048468827",
            "penaltyIncome": "2029427635",
            "interestIncome": "2029427635",
            "writeOffExpense": "1014905527",
            "portfolioControl": "4048468827",
            "penaltyReceivable": "4048468827",
            "transactionSource": "4048468827",
            "interestReceivable": "4048468827"
        },
        "fees": [
            {
                "value": 75,
                "feeName": "management fee",
                "feeType": "ON_DISBURSEMENT",
                "feePayment": "FLAT or PERCENTAGE_0F_DISBURSE_AMOUNT"
            }
        ]
        ]
    }

Get all loan products

GET {base url}/v1/loanProducts?page={page}&perPage={perPage}

Get all company loan products

Query Parameters

Headers

{
    "message": "unauthorized",
    "code": 92
}
{
  "data": [
      {
          "id": "79963366-6aad-489a-82db-84d5374f707a",
          "organizationId": "a5f38f16-6c44-408f-b7ff-6775f02b83ac",
          "depositProductId": null,
          "name": "testing new ",
          "type": "FIXED_TERM_LOAN",
          "currency": "NGN",
          "initialState": "PENDING_APPROVAL",
          "description": "ererererer",
          "userType": [
              "clients",
              "companies"
          ],
          "branch": [
              "ikeja",
              "marina, CMS"
          ],
          "enableLinking": false,
          "enablePenalty": false,
          "minAmount": 10000,
          "maxAmount": 100000,
          "tranches": null,
          "interest": {
              "daysInAYear": 360,
              "interestType": "SIMPLE_INTEREST",
              "interestCharged": "%_PER_MONTH",
              "interestPosting": "ON_DISBURSEMENT",
              "maxInterestRate": 8,
              "minInterestRate": 1,
              "repaymentInterest": "REPAYMENT_PERIOD",
              "defaultInterestRate": 5,
              "interestCalculation": "FLAT"
          },
          "scheduling": {
              "paymentMade": {
                  "value": 3,
                  "period": "MONTH"
              },
              "paymentMethod": "BALLON_PAYMENT",
              "maxInstallments": 10,
              "minInstallments": 1,
              "paymentInterval": "INTERVAL",
              "maxDueDateOffset": 10,
              "minDueDateOffset": 1,
              "enableGracePeriod": false,
              "principalCollected": 10,
              "defaultInstallments": 4,
              "defaultDueDateOffset": 4,
              "currencyRoundingSchedule": "UP_TO_NEAREST_WHOLE_UNIT",
              "principalRoundingSchedule": "NO_ROUNDING"
          },
          "collection": {
              "acceptPrepayment": false,
              "paymentAllocation": "HORIZONTAL",
              "prepaymentAllocationOrder": {
                  "fee": 0,
                  "penalty": 1,
                  "interest": 2,
                  "principal": 3
              }
          },
          "penalty": {
              "enablePenalty": false,
              "maxPenaltyRate": 100,
              "minPenaltyRate": 10,
              "defaultPenaltyRate": 30,
              "penaltyTolerancePeriod": 50,
              "penaltyCalculationMethod": "OVERDUE_PRINCIPAL_*#_OF_LATE_DAYS_*_PENALTY_RATE"
          },
          "security": {
              "enableCollateral": false,
              "enableFundingSource": false,
              "funderInterestCommision": "FIXED_INTEREST_COMMISION",
              "maxFundedInterestCommision": 50,
              "minFundedInterestCommision": 10,
              "defaultFundedInterestCommision": 30
          },
          "accounting": {
              "feeIncome": "0000000181",
              "methodology": "ACCRUAL",
              "feeReceivable": "0000000181",
              "penaltyIncome": "0000000152",
              "interestIncome": "0000000152",
              "writeOffExpense": "1017320405",
              "portfolioControl": "0000000181",
              "penaltyReceivable": "0000000181",
              "transactionSource": "0000000181",
              "interestReceivable": "0000000181"
          },
          "status": "active",
          "created_at": "2023-10-30T12:18:21.799Z",
          "updated_at": "2023-11-27T12:45:52.720Z"
      }
  ],
  "pagination": {
      "currentPage": 1,
      "perPage": 15,
      "totalCount": 15,
      "totalPages": 1,
      "previousPage": 0,
      "nextPage": 1
  }
}

Get loan product details

GET {base url}/v1/loanProducts/{loanId}

Get single loan product details

Query Parameter

Headers

{
    "message": "unauthorized",
    "code": 92
}
{
    "data": {
        "id": "79963366-6aad-489a-82db-84d5374f707a",
        "organizationId": "a5f38f16-6c44-408f-b7ff-6775f02b83ac",
        "depositProductId": null,
        "name": "testing new ",
        "type": "FIXED_TERM_LOAN",
        "currency": "NGN",
        "initialState": "PENDING_APPROVAL",
        "description": "ererererer",
        "userType": [
            "clients",
            "companies"
        ],
        "branch": [
            "ikeja",
            "marina, CMS"
        ],
        "enableLinking": false,
        "enablePenalty": false,
        "minAmount": 10000,
        "maxAmount": 100000,
        "tranches": null,
        "interest": {
            "daysInAYear": 360,
            "interestType": "SIMPLE_INTEREST",
            "interestCharged": "%_PER_MONTH",
            "interestPosting": "ON_DISBURSEMENT",
            "maxInterestRate": 8,
            "minInterestRate": 1,
            "repaymentInterest": "REPAYMENT_PERIOD",
            "defaultInterestRate": 5,
            "interestCalculation": "FLAT"
        },
        "scheduling": {
            "paymentMade": {
                "value": 3,
                "period": "MONTH"
            },
            "paymentMethod": "BALLON_PAYMENT",
            "maxInstallments": 10,
            "minInstallments": 1,
            "paymentInterval": "INTERVAL",
            "maxDueDateOffset": 10,
            "minDueDateOffset": 1,
            "enableGracePeriod": false,
            "principalCollected": 10,
            "defaultInstallments": 4,
            "defaultDueDateOffset": 4,
            "currencyRoundingSchedule": "UP_TO_NEAREST_WHOLE_UNIT",
            "principalRoundingSchedule": "NO_ROUNDING"
        },
        "collection": {
            "acceptPrepayment": false,
            "paymentAllocation": "HORIZONTAL",
            "prepaymentAllocationOrder": {
                "fee": 0,
                "penalty": 1,
                "interest": 2,
                "principal": 3
            }
        },
        "penalty": {
            "enablePenalty": false,
            "maxPenaltyRate": 100,
            "minPenaltyRate": 10,
            "defaultPenaltyRate": 30,
            "penaltyTolerancePeriod": 50,
            "penaltyCalculationMethod": "OVERDUE_PRINCIPAL_*#_OF_LATE_DAYS_*_PENALTY_RATE"
        },
        "security": {
            "enableCollateral": false,
            "enableFundingSource": false,
            "funderInterestCommision": "FIXED_INTEREST_COMMISION",
            "maxFundedInterestCommision": 50,
            "minFundedInterestCommision": 10,
            "defaultFundedInterestCommision": 30
        },
        "accounting": {
            "feeIncome": "0000000181",
            "methodology": "ACCRUAL",
            "feeReceivable": "0000000181",
            "penaltyIncome": "0000000152",
            "interestIncome": "0000000152",
            "writeOffExpense": "1017320405",
            "portfolioControl": "0000000181",
            "penaltyReceivable": "0000000181",
            "transactionSource": "0000000181",
            "interestReceivable": "0000000181"
        },
        "status": "active",
        "created_at": "2023-10-30T12:18:21.799Z",
        "updated_at": "2023-11-27T12:45:52.720Z",
        "productFees": [
            {
                "id": "3607de7a-0023-4666-8395-ae1662a6c4e6",
                "loanProductId": "79963366-6aad-489a-82db-84d5374f707a",
                "fees": [
                    {
                        "value": 200,
                        "feeName": "test 1 2",
                        "feeType": "ON_EVERY_REPAYMENT",
                        "feePayment": "FLAT"
                    },
                    {
                        "value": 2,
                        "feeName": "one of off fee",
                        "feeType": "ONE_OFF_ON_FIRST_REPAYMENT",
                        "feePayment": "PERCENTAGE_0F_DISBURSE_AMOUNT"
                    }
                ],
                "created_at": "2023-10-30T12:18:21.799Z",
                "updated_at": "2023-11-27T12:45:52.777Z"
            },
            {
                "id": "d2a4dc5c-be53-4dec-9b8f-506a242a9d9d",
                "loanProductId": "79963366-6aad-489a-82db-84d5374f707a",
                "fees": [
                    {
                        "value": 200,
                        "feeName": "test 1 2",
                        "feeType": "ON_EVERY_REPAYMENT",
                        "feePayment": "FLAT"
                    },
                    {
                        "value": 2,
                        "feeName": "one of off fee",
                        "feeType": "ONE_OFF_ON_FIRST_REPAYMENT",
                        "feePayment": "PERCENTAGE_0F_DISBURSE_AMOUNT"
                    }
                ],
                "created_at": "2023-11-01T10:21:10.776Z",
                "updated_at": "2023-11-27T12:45:52.777Z"
            },
            {
                "id": "6f75cb82-e25b-41ea-86ac-dad84d00d475",
                "loanProductId": "79963366-6aad-489a-82db-84d5374f707a",
                "fees": [
                    {
                        "value": 200,
                        "feeName": "test 1 2",
                        "feeType": "ON_EVERY_REPAYMENT",
                        "feePayment": "FLAT"
                    },
                    {
                        "value": 2,
                        "feeName": "one of off fee",
                        "feeType": "ONE_OFF_ON_FIRST_REPAYMENT",
                        "feePayment": "PERCENTAGE_0F_DISBURSE_AMOUNT"
                    }
                ],
                "created_at": "2023-11-06T12:27:17.906Z",
                "updated_at": "2023-11-27T12:45:52.777Z"
            },
            {
                "id": "0e0e511d-4952-4d73-944e-40ae65cdeefe",
                "loanProductId": "79963366-6aad-489a-82db-84d5374f707a",
                "fees": [
                    {
                        "value": 200,
                        "feeName": "test 1 2",
                        "feeType": "ON_EVERY_REPAYMENT",
                        "feePayment": "FLAT"
                    },
                    {
                        "value": 2,
                        "feeName": "one of off fee",
                        "feeType": "ONE_OFF_ON_FIRST_REPAYMENT",
                        "feePayment": "PERCENTAGE_0F_DISBURSE_AMOUNT"
                    }
                ],
                "created_at": "2023-11-06T12:33:12.514Z",
                "updated_at": "2023-11-27T12:45:52.777Z"
            },
            {
                "id": "4bd7ee7f-5b82-4514-94dd-8928f61f66d2",
                "loanProductId": "79963366-6aad-489a-82db-84d5374f707a",
                "fees": [
                    {
                        "value": 200,
                        "feeName": "test 1 2",
                        "feeType": "ON_EVERY_REPAYMENT",
                        "feePayment": "FLAT"
                    },
                    {
                        "value": 2,
                        "feeName": "one of off fee",
                        "feeType": "ONE_OFF_ON_FIRST_REPAYMENT",
                        "feePayment": "PERCENTAGE_0F_DISBURSE_AMOUNT"
                    }
                ],
                "created_at": "2023-11-06T12:18:32.572Z",
                "updated_at": "2023-11-27T12:45:52.777Z"
            },
            {
                "id": "533d86fd-6b52-44c3-b7e4-bd923c9cf54e",
                "loanProductId": "79963366-6aad-489a-82db-84d5374f707a",
                "fees": [
                    {
                        "value": 200,
                        "feeName": "test 1 2",
                        "feeType": "ON_EVERY_REPAYMENT",
                        "feePayment": "FLAT"
                    },
                    {
                        "value": 2,
                        "feeName": "one of off fee",
                        "feeType": "ONE_OFF_ON_FIRST_REPAYMENT",
                        "feePayment": "PERCENTAGE_0F_DISBURSE_AMOUNT"
                    }
                ],
                "created_at": "2023-11-06T12:26:51.685Z",
                "updated_at": "2023-11-27T12:45:52.777Z"
            },
            {
                "id": "6d26f4a6-943f-4fba-bf69-9b4f55cf9b81",
                "loanProductId": "79963366-6aad-489a-82db-84d5374f707a",
                "fees": [
                    {
                        "value": 200,
                        "feeName": "test 1 2",
                        "feeType": "ON_EVERY_REPAYMENT",
                        "feePayment": "FLAT"
                    },
                    {
                        "value": 2,
                        "feeName": "one of off fee",
                        "feeType": "ONE_OFF_ON_FIRST_REPAYMENT",
                        "feePayment": "PERCENTAGE_0F_DISBURSE_AMOUNT"
                    }
                ],
                "created_at": "2023-11-06T12:33:52.355Z",
                "updated_at": "2023-11-27T12:45:52.777Z"
            }
        ]
    }stri

Last updated