Loans & contracts

What it does: Tracks each financing agreement — equipment, borrower, funding program, balances, and repayment schedule.

Why it matters: Gives lenders and programs a single source of truth for portfolio reporting and delinquency monitoring without manual spreadsheets.

Technical reference — Read-only list and detail endpoints for collaborators.

The contract model

  • Name
    id
    Type
    integer
    Description

    Internal contract identifier.

  • Name
    loan_id
    Type
    string
    Description

    External loan reference (e.g. for funding partner systems).

  • Name
    name
    Type
    string
    Description

    Contract / operator display name.

  • Name
    loaner
    Type
    string
    Description

    Customer or borrower name.

  • Name
    funding_source
    Type
    string
    Description

    Program or institution funding the contract.

  • Name
    tractor_id
    Type
    string
    Description

    Linked tractor identifier.

  • Name
    status
    Type
    string
    Description

    CURRENT, DELINQUENT, or CLOSED.

  • Name
    equipment_cost
    Type
    string
    Description

    Equipment cost for the financed asset.

  • Name
    remaining_contract_value
    Type
    string
    Description

    Outstanding contract balance.

  • Name
    total_repayment_amount
    Type
    string
    Description

    Total amount to be repaid over the contract life.

  • Name
    currency
    Type
    string
    Description

    Contract currency code (e.g. NGN, KES).

  • Name
    loan_start_date
    Type
    string
    Description

    Contract start date (ISO 8601).

  • Name
    loan_end_date
    Type
    string
    Description

    Contract end date (ISO 8601).

  • Name
    usd_snapshot
    Type
    string
    Description

    USD equivalent snapshot at reporting time.

  • Name
    repayment_per_hectare
    Type
    string
    Description

    Repayment rate per hectare where applicable.


GET/payg/lms/contracts

List contracts

Returns a paginated list of loan contracts. Filter by funding program, status, currency, or search term.

Query parameters

  • Name
    page
    Type
    integer
    Description

    Page number (default 1).

  • Name
    limit
    Type
    integer
    Description

    Results per page.

  • Name
    search
    Type
    string
    Description

    Free-text search.

  • Name
    searchby
    Type
    string
    Description

    Field to search against.

  • Name
    currency
    Type
    string
    Description

    Filter by currency.

  • Name
    status
    Type
    string
    Description

    CURRENT, DELINQUENT, or CLOSED.

  • Name
    funding_source
    Type
    string
    Description

    Filter by funding program identifier.

  • Name
    ordering
    Type
    string
    Description

    Sort field; prefix with - for descending (default -created_at).

Request

GET
/payg/lms/contracts
curl -G https://api.hellotractor.com/payg/lms/contracts \
  -H "Authorization: Bearer {your_api_key}" \
  -d page=1 \
  -d limit=25 \
  -d funding_source=boa \
  -d status=CURRENT

Response (redacted)

{
  "count": 42,
  "results": [
    {
      "id": 1001,
      "loan_id": "LOAN-***",
      "name": "Operator ***",
      "loaner": "Customer ***",
      "funding_source": "boa",
      "tractor_id": "TR-***",
      "status": "CURRENT",
      "equipment_cost": "1500000.00",
      "remaining_contract_value": "850000.00",
      "total_repayment_amount": "2000000.00",
      "currency": "NGN",
      "loan_start_date": "2025-01-15",
      "loan_end_date": "2027-01-15",
      "usd_snapshot": "1200.00",
      "repayment_per_hectare": "45000.00"
    }
  ]
}

Checking access…


GET/payg/lms/contracts/:id

Retrieve a contract

Returns a single contract by internal id.

Request

GET
/payg/lms/contracts/{id}
curl https://api.hellotractor.com/payg/lms/contracts/1001 \
  -H "Authorization: Bearer {your_api_key}"

New collaborators request access first; approved teams sign in and register integrations.

Was this page helpful?