Adding checks to a loan before approval

On this page

Approving a loan is one of the most consequential actions a team member can take on the Lendsqr admin console. Once a loan is approved and disbursed, reversing it is difficult and potentially costly. Adding structured pre-approval checks to your loan products gives you a reliable way to ensure that every loan your team approves has passed a defined set of internal verifications before funds leave your disbursement account.

Lendsqr allows you to configure mandatory approval requirements at the loan product level. Once set up, these checks appear as a form that your team member must complete before the system will allow them to approve any loan under that product. The team member cannot skip this form. They must answer each required question before the approval action becomes available.

This guide explains what approval checks are, why they matter, when to use them, how to configure them using JSON format, what the JSON fields mean, and what the experience looks like for your team members on the ground.

What are pre-approval checks on Lendsqr?

Pre-approval checks are a set of verification questions or confirmations that a lender administrator attaches to a loan product. Each time a team member tries to approve a loan under that product, the system presents a form containing those questions. The team member must work through every required field on the form and submit it successfully before the loan can be approved.

The checks are fully customisable. You define them in JSON format and attach them to a specific loan product through the Product Attributes settings. You can ask your team members to confirm anything that matters to your credit or compliance process, whether that is verifying the borrower’s identity documents, confirming a phone call was made, checking that a selfie BVN match passed, or confirming that the borrower provided supporting documentation.

The system enforces the checks at the point of approval, which means you do not rely on individual team members remembering to carry them out. The platform makes the confirmation mandatory.

Why you should add pre-approval checks to your loan products

Automated credit scoring and decision models do a significant amount of the verification work in Lendsqr, but some checks require a human eye. Reviewing whether a scanned ID looks authentic, confirming that the phone number in the system actually belongs to the borrower, or ensuring that a field agent spoke with the borrower before disbursement are tasks that automated systems cannot always complete on their own.

Adding pre-approval checks addresses this gap by creating a formal, recorded confirmation at the point of approval. Here is why this matters in practice:

  • Reduces the risk of internal errors and fraud. Without a mandatory checklist, an approval can move through on the strength of a single team member’s judgment alone. A structured checklist introduces a step that requires the approver to actively confirm each condition, which reduces the likelihood of careless or fraudulent approvals.
  • Creates a documented audit trail. When a team member submits the pre-approval form, the system records their responses. If a loan later defaults or is disputed, your organisation has a documented record of what the approving team member confirmed at the time of approval.
  • Enforces credit policy consistency. Different team members may apply different standards when reviewing loan applications if no structured requirement exists. A mandatory checklist ensures that every loan, regardless of who approves it, has gone through the same set of confirmations.
  • Supports regulatory compliance. Responsible lending frameworks often require lenders to demonstrate that they took reasonable steps to verify borrower information before disbursing credit. A recorded pre-approval check provides that evidence.
  • Improves team accountability. When team members know that their confirmations are recorded and attached to the loan, they take greater care in completing each check before submitting. This raises the quality of decisions across the board.

When to use pre-approval checks

Pre-approval checks are most useful in the following scenarios:

  • High-value loan products. For loans above a certain amount threshold, your risk policy may require additional human verification before disbursement. Attaching a checklist to these products ensures that higher-risk approvals receive appropriate scrutiny.
  • Products targeting new or unverified borrowers. First-time borrowers who have no prior loan history on your platform represent higher uncertainty. Pre-approval checks let you require your team to confirm that the borrower’s identity and contact details have been manually verified before their first loan goes through.
  • Loans processed by field agents or sales teams. If your team books loans on behalf of borrowers who they have met in person, a pre-approval checklist ensures that the agent records confirmation of key in-person verifications, such as sighting of an original ID document.
  • Products in regulated or sensitive categories. Certain loan types may carry additional regulatory obligations. Attaching a checklist to these products helps your compliance team confirm that all required steps were taken before disbursement.
  • Any product where manual review is part of your credit process. If your standard operating procedure includes a manual review of documents or a confirmation call before approval, a pre-approval checklist formalises that step inside the platform rather than relying on emails or verbal confirmations.

Before you begin

Before you configure pre-approval checks, confirm the following:

  • Admin access. You must hold an administrator or product manager role on the Lendsqr admin console. Team members with read-only or operational roles cannot modify loan product settings.
  • An existing loan product. Pre-approval checks are attached to specific loan products. You need at least one product already configured in your account. If you do not have one, create a loan product first before proceeding.
  • Your checklist content is ready. Have the list of checks you want to enforce ready before you start. Decide what questions you want your approvers to answer, what the response options are, and whether each question is mandatory.
  • Basic familiarity with JSON. The checks are entered in JSON format. You do not need to be a developer to do this, but you should understand the basic structure before you begin. The sample JSON in this guide serves as a template you can adapt.

Step-by-step guide to adding checks to a loan before approval

1. Login to the Admin Console

Open your web browser and log into the Lendsqr admin console with your credentials. Enter your administrator credentials and complete any two-factor authentication prompt if 2FA is enabled on your account. Once you are in, the Lendsqr admin console dashboard loads

2. Click on “Loan Products” under Product Management

On the left-hand navigation panel, locate and click Product Management. From the expanded sub-menu, click on Loan Products. The main content area loads a table displaying all the loan products you have created for your organisation. Review the list to identify the product you want to configure.

Adding checks to a loan before approval

3. Create a loan product or open an existing one

You can add pre-approval checks to a brand new product or to one that already exists.

  • To create a new loan product, click the “Create Loan Product” button at the top of the loan products page and complete the product configuration flow.
  • To edit an existing loan product, locate the product in the list, click the more options button (three vertical dots) next to the product name, and select “Edit” from the dropdown. This opens the product settings page.

In both cases, you end up on the loan product settings page, where you can manage all the attributes and configuration of that product.

4. Click on the “Product Attributes/Settings” Tab on the product page

Inside the loan product page, look for the tab labelled Product Attributes (also known as Product Settings). The exact label may vary slightly depending on your platform version, but both refer to the same section. Click on it. This tab presents a list of configurable attributes for the loan product, each appearing as a row in a structured table.

5. Click on the more options (three dots) button beside the “Loan Approval Requirements” attribute

Scroll through the list of product attributes until you find the entry labelled Loan Approval Requirements. This is the attribute that controls the pre-approval checklist for this product. To the right of this attribute, you will see a more options button (three vertical dots). Click on it. A small dropdown menu appears with available actions for this attribute.

6. Select Edit from the options button

From the dropdown menu, select Edit.

7. Add the series of checks you would like to add in JSON format

In the edit window, type or paste your pre-approval checks in valid JSON format. The JSON you provide defines what the approval form will look like when a team member tries to approve a loan under this product. It specifies the page title, the section description, each field the approver must fill in, the options available for each field, and the validation rules.

A complete sample JSON configuration is provided in the section below. Use it as your starting template and adapt the field labels and descriptions to match your own approval requirements.

Take care to ensure the JSON is valid before saving. A formatting error in the JSON will prevent the checks from displaying correctly. If you are unsure, paste your JSON into a free JSON validator tool online before entering it into the field.

8. Click on “Save”

Once you have added all the necessary checks, click on the Save button to apply the changes to the loan product. A confirmation message appears on the screen to indicate that the changes were saved successfully.

Sample check in JSON format 

The JSON below is a fully working example of a pre-approval checks configuration. It includes five checks: identity document verification, other document submission, other document verification, selfie BVN confirmation, and contact detail confirmation. Use it as a template and adapt the field labels to suit your own approval requirements.

{
  "meta": {
    "name": "Loan Approval Requirements",
    "description": "Loan Approval Requirements",
    "version": "1.0",
    "url": "https://example.com",
    "status": "active",
    "instruction": "Additional instruction"
  },
  "pages": [
    {
      "name": "Loan Approval Requirements",
      "title": "Loan Approval Requirements",
      "description": "Please kindly confirm you have made the below checks before approving this loan",
      "actions": [
        { "type": "submit", "label": "Submit" },
        {
          "type": "cancel",
          "label": "Cancel",
          "message": "If you cancel this, all the information you provided will be discarded. Are you sure you want to proceed?"
        }
      ],
      "sections": [
        {
          "name": "Requirements",
          "description": "Please provide the correct status of the below checks.",
          "fields": [
            {
              "id": "verify_id",
              "name": "Verify ID",
              "type": "select",
              "label": "Have you verified the user's provided ID?",
              "description": "Have you verified the user's provided ID?",
              "options": [
                { "id": "yes", "label": "Yes", "value": "Yes" },
                { "id": "no", "label": "No", "value": "No" }
              ],
              "validation": { "required": true, "multi_select": false }
            },
            {
              "id": "other_documents",
              "name": "Other documents",
              "type": "select",
              "label": "Did the user provide additional documents?",
              "description": "Did the user provide additional documents?",
              "options": [
                { "id": "yes", "label": "Yes", "value": "Yes" },
                { "id": "no", "label": "No", "value": "No" }
              ],
              "validation": { "required": true, "multi_select": false }
            },
            {
              "id": "verify_other",
              "name": "Verify Other documents",
              "type": "select",
              "label": "Have you verified the other documents provided by the customer?",
              "description": "Have you verified the other documents provided by the customer?",
              "options": [
                { "id": "yes", "label": "Yes", "value": "Yes" },
                { "id": "no", "label": "No", "value": "No" }
              ],
              "validation": { "required": true, "multi_select": false }
            },
            {
              "id": "verify_selfie_bvn",
              "name": "Verify selfie BVN",
              "type": "select",
              "label": "Have you confirmed that the customer passed the selfie BVN check?",
              "description": "Have you confirmed that the customer passed the selfie BVN check?",
              "options": [
                { "id": "yes", "label": "Yes", "value": "Yes" },
                { "id": "no", "label": "No", "value": "No" }
              ],
              "validation": { "required": true, "multi_select": false }
            },
            {
              "id": "call_customer",
              "name": "Call customer",
              "type": "select",
              "label": "Have you confirmed the contact details provided by the customer?",
              "description": "Have you confirmed the contact details provided by the customer?",
              "options": [
                { "id": "yes", "label": "Yes", "value": "Yes" },
                { "id": "no", "label": "No", "value": "No" }
              ],
              "validation": { "required": true, "multi_select": false }
            }
          ]
        }
      ]
    }
  ]
}

From this point, every time a team member attempts to approve a loan under this product, the system will display the pre-approval form you have configured. The team member must complete and submit the form before the approval action becomes available to them.

Understanding the JSON structure for pre-approval checks

The JSON configuration for pre-approval checks follows a defined structure. Each section of the JSON controls a different aspect of the approval form. Understanding what each part does helps you write configurations that reflect your actual approval requirements accurately.

The meta section

The meta section contains metadata about the entire approval requirement configuration. It does not control what appears in the form itself but provides context information for the system.

  • name: The internal identifier for this configuration. Set this to something descriptive like “Loan Approval Requirements”
  • description: A brief description of what this configuration is for.
  • version: The version number of the configuration. Start at “1.0” and increment if you make significant changes.
  • status: Set to “active” to enable the checks. If you set this to inactive, the form will not appear.
  • instruction: An optional additional instruction string that can appear as a note to the approver.

The pages array

The pages array contains one or more page objects. Each page represents a screen in the approval form flow. In most cases you will use a single page, but the structure supports multiple pages if your workflow requires them.

  • name and title: The name and display title of the page. The title appears as the heading on the form that your team member sees.
  • description: A short instruction displayed below the title. Use this to tell the approver what the form requires them to do, for example: “Please confirm you have completed all checks below before approving this loan.”
  • actions: An array that defines the buttons at the bottom of the form. Typically you include a submit action and a cancel action. The cancel action can include a confirmation message that warns the user if they attempt to discard their progress.

The sections and fields array

The sections array sits within a page and contains one or more section objects. Each section groups a set of related fields. Within each section, the fields array defines the individual questions or inputs on the form.

Each field object supports the following properties:

  • id: A unique identifier for this field. Use lowercase letters and underscores, for example “verify_id”.
  • name: A short display name for the field.
  • type: The input type. The sample uses “select”, which presents a dropdown menu.
  • label: The question text displayed to the approver, for example: “Have you verified the user’s provided ID?”
  • options: An array of response options the approver can select, typically Yes or No.
  • validation.required: Set to true to make this field mandatory. The approver cannot submit the form without answering it.
  • validation.multi_select: Set to false for single-answer fields. Set to true if you want the approver to be able to select more than one option.

Read further: How to Create a Loan Product

Was this page helpful?