Loans API

This is the Loans API that provides programmatic access to various resources and services. The API supports the following areas: Loan Applications, Loan Transactions. All endpoints require authentication using a Bearer token.

The loans model

The loans model contains all the information about your loans entities.

Properties

  • Name
    products
    Type
    array
    Description

    List of products items

  • Name
    pagination
    Type
    object
    Description

    Object containing pagination data


List Eligible Loan Products

Displays loan products a customer qualifies for based on their profile.

Request

GET
/v1/loans/products
curl -G https://api.adiba.app/v1/loans/products \
  -H "Authorization: Bearer {token}"
{
"products": [
    {
        "productId": "PERSONAL_001",
        "productName": "Personal Loan",
        "productType": "PERSONAL",
        "minAmount": 50000,
        "maxAmount": 5000000,
        "interestRate": 15.5,
        "tenure": "12-36 months",
        "eligibilityCriteria": [
            "Minimum monthly income of 100,000 NGN",
            "Good credit history",
            "Employment for at least 6 months"
        ],
        "requiredDocuments": [
            "Payslip",
            "Bank statement",
            "Valid ID",
            "Employment letter"
        ],
        "isActive": true
    },
    {
        "productId": "BUSINESS_001",
        "productName": "Business Loan",
        "productType": "BUSINESS",
        "minAmount": 100000,
        "maxAmount": 50000000,
        "interestRate": 18,
        "tenure": "12-60 months",
        "eligibilityCriteria": [
            "Business registered for at least 2 years",
            "Annual turnover of 5M NGN",
            "Good business credit history"
        ],
        "requiredDocuments": [
            "Business registration",
            "Financial statements",
            "Tax clearance",
            "Business plan"
        ],
        "isActive": true
    }
],
"pagination": {
    "page": 1,
    "size": 10,
    "total": 8,
    "hasNext": false,
    "hasPrevious": false
}
}

Make A Credit Application

Initiates a new application for a loan or line of credit.

Request

POST
/v1/loans
curl -X POST https://api.adiba.app/v1/loans \
  -H "Authorization: Bearer {token}" \
  -d '{
"productId": "PERSONAL_001",
"amount": 1000000,
"tenure": 24,
"purpose": "Home renovation",
"employmentType": "EMPLOYED",
"monthlyIncome": 250000,
"employerName": "Tech Solutions Ltd",
"employmentDuration": 36,
"existingLoans": [
    {
        "lender": "Other Bank",
        "amount": 500000,
        "monthlyPayment": 25000
    }
],
"collateralType": "NONE",
"guarantorRequired": false
}'
{
"status": "SUCCESS",
"loanId": "LOAN_001_20241201_001",
"applicationNumber": "APP_20241201_001",
"productId": "PERSONAL_001",
"amount": 1000000,
"tenure": 24,
"purpose": "Home renovation",
"applicationStatus": "PENDING",
"submittedAt": "2024-12-01T10:30:00Z",
"estimatedProcessingTime": "3-5 business days",
"message": "Loan application submitted successfully"
}

Compute Credit Parameters

Calculates loan eligibility, interest rates, and repayment terms.

Request

POST
/v1/loans/calculator
curl -X POST https://api.adiba.app/v1/loans/calculator \
  -H "Authorization: Bearer {token}" \
  -d '{
"productId": "PERSONAL_001",
"amount": 1000000,
"tenure": 24,
"monthlyIncome": 250000,
"existingLoans": [
    {
        "lender": "Other Bank",
        "amount": 500000,
        "monthlyPayment": 25000
    }
],
"creditScore": 750,
"employmentType": "EMPLOYED"
}'
{
"eligibility": true,
"eligibleAmount": 1000000,
"interestRate": 15.5,
"monthlyPayment": 48500,
"totalInterest": 164000,
"totalAmount": 1164000,
"processingFee": 15000,
"insuranceFee": 5000,
"repaymentSchedule": [
    {
        "installmentNumber": 1,
        "dueDate": "2025-01-01T00:00:00Z",
        "principal": 41667,
        "interest": 12917,
        "totalPayment": 48500,
        "remainingBalance": 958333
    }
],
"debtToIncomeRatio": 29.4,
"message": "Loan calculation completed successfully"
}

Read Credit Application Info

Retrieves all details of a previously submitted credit application.

Required attributes

  • Name
    loanId
    Type
    string
    Description

    Unique identifier specified in the URL path

Request

GET
/v1/loans/{loanId}
curl -G https://api.adiba.app/v1/loans/{loanId} \
  -H "Authorization: Bearer {token}"
{
"loanId": "LOAN_001_20241201_001",
"applicationNumber": "APP_20241201_001",
"productId": "PERSONAL_001",
"productName": "Personal Loan",
"amount": 1000000,
"tenure": 24,
"purpose": "Home renovation",
"applicationStatus": "UNDER_REVIEW",
"interestRate": 15.5,
"monthlyPayment": 48500,
"totalAmount": 1164000,
"submittedAt": "2024-12-01T10:30:00Z",
"approvedAt": null,
"disbursedAt": null,
"reviewerComments": "Application under review. Additional documents required.",
"requiredDocuments": [
    "Payslip",
    "Bank statement",
    "Valid ID",
    "Employment letter"
],
"missingDocuments": [
    "Employment letter"
],
"guarantors": [],
"collateral": {
    "type": "NONE",
    "description": "Unsecured loan",
    "value": 0,
    "status": "APPROVED"
}
}

List Credit Statement

Fetches a historical record of all credit transactions and balances.

Required attributes

  • Name
    loanId
    Type
    string
    Description

    Unique identifier specified in the URL path

Request

GET
/v1/loans/{loanId}/statement
curl -G https://api.adiba.app/v1/loans/{loanId}/statement \
  -H "Authorization: Bearer {token}"
{
"loanId": "LOAN_001_20241201_001",
"loanNumber": "LN_20241201_001",
"productName": "Personal Loan",
"disbursedAmount": 1000000,
"currentBalance": 958333,
"totalPaid": 48500,
"totalInterest": 12917,
"nextPaymentDate": "2025-02-01T00:00:00Z",
"nextPaymentAmount": 48500,
"transactions": [
    {
        "transactionId": "TXN_001",
        "transactionDate": "2024-12-15T00:00:00Z",
        "description": "Loan disbursement",
        "type": "DISBURSEMENT",
        "amount": 1000000,
        "balance": 1000000
    },
    {
        "transactionId": "TXN_002",
        "transactionDate": "2025-01-01T00:00:00Z",
        "description": "Monthly payment",
        "type": "PAYMENT",
        "amount": -48500,
        "balance": 958333
    }
],
"pagination": {
    "page": 1,
    "size": 10,
    "total": 2,
    "hasNext": false,
    "hasPrevious": false
}
}

Provide Supporting Documents

Allows a user to upload necessary documents for a credit application.

Required attributes

  • Name
    loanId
    Type
    string
    Description

    Unique identifier specified in the URL path

Request

POST
/v1/loans/{loanId}/documents
curl -X POST https://api.adiba.app/v1/loans/{loanId}/documents \
  -H "Authorization: Bearer {token}" \
  -d '{
"documentType": "EMPLOYMENT_LETTER",
"documentName": "Employment_Letter_TechSolutions.pdf",
"fileContent": "JVBERi0xLjQKJcOkw7zDtsO...",
"fileType": "PDF",
"description": "Employment letter from Tech Solutions Ltd"
}'
{
"status": "SUCCESS",
"documentId": "DOC_001_20241201_001",
"loanId": "LOAN_001_20241201_001",
"documentType": "EMPLOYMENT_LETTER",
"documentName": "Employment_Letter_TechSolutions.pdf",
"uploadedAt": "2024-12-01T11:00:00Z",
"fileSize": 245760,
"verificationStatus": "PENDING",
"message": "Document uploaded successfully"
}

Provide Guarantor Details

Captures and submits information about a loan guarantor.

Required attributes

  • Name
    loanId
    Type
    string
    Description

    Unique identifier specified in the URL path

Request

POST
/v1/loans/{loanId}/guarantors
curl -X POST https://api.adiba.app/v1/loans/{loanId}/guarantors \
  -H "Authorization: Bearer {token}" \
  -d '{
"firstName": "Jane",
"lastName": "Doe",
"email": "jane.doe@email.com",
"phoneNumber": "+2348012345679",
"relationship": "SPOUSE",
"employmentType": "EMPLOYED",
"monthlyIncome": 300000,
"employerName": "Healthcare Solutions",
"address": {
    "street": "123 Main Street",
    "city": "Lagos",
    "state": "Lagos",
    "postalCode": "100001",
    "country": "Nigeria"
}
}'
{
"status": "PENDING",
"guarantorId": "GUA_001_20241201_001",
"loanId": "LOAN_001_20241201_001",
"firstName": "Jane",
"lastName": "Doe",
"email": "jane.doe@email.com",
"phoneNumber": "+2348012345679",
"relationship": "SPOUSE",
"employmentType": "EMPLOYED",
"monthlyIncome": 300000,
"employerName": "Healthcare Solutions",
"submittedAt": "2024-12-01T11:15:00Z",
"message": "Guarantor details submitted successfully"
}

Provide Collateral Details

Records the specifics of assets pledged as security for a loan.

Required attributes

  • Name
    loanId
    Type
    string
    Description

    Unique identifier specified in the URL path

Request

POST
/v1/loans/{loanId}/collateral
curl -X POST https://api.adiba.app/v1/loans/{loanId}/collateral \
  -H "Authorization: Bearer {token}" \
  -d '{
"collateralType": "VEHICLE",
"description": "Toyota Camry 2020 Model",
"estimatedValue": 15000000,
"location": "Lagos, Nigeria",
"ownershipDocument": "Vehicle Registration",
"documentNumber": "ABC123XYZ",
"insuranceDetails": {
    "policyNumber": "INS_001_2024",
    "insuranceCompany": "Leadway Insurance",
    "expiryDate": "2025-12-31T00:00:00Z"
},
"valuationReport": "JVBERi0xLjQKJcOkw7zDtsO...",
"valuationDate": "2024-11-15T00:00:00Z"
}'
{
"status": "PENDING",
"collateralId": "COL_001_20241201_001",
"loanId": "LOAN_001_20241201_001",
"collateralType": "VEHICLE",
"description": "Toyota Camry 2020 Model",
"estimatedValue": 15000000,
"location": "Lagos, Nigeria",
"ownershipDocument": "Vehicle Registration",
"documentNumber": "ABC123XYZ",
"submittedAt": "2024-12-01T11:30:00Z",
"message": "Collateral details submitted successfully"
}

Was this page helpful?