Skip to main content

Agent Features in Leja Professional

Solo Agents and Organisation Staff


Two Types of Agents

Solo Agent (No BRN)

Operates independently. Personal RIN IS their professional identity. No subscription required. Pays per transaction only. Every deal they close brings a buyer into the Leja ecosystem. They are the volume play — thousands of them feed the data flywheel. What a solo agent gets:
  • Full Leja Professional access (properties, units, tenants, charges, payments)
  • Leja-branded receipts and agreements (branding cannot be removed on free tier)
  • AI payment witnessing (₦250 per extraction)
  • AI tenancy agreement generator (₦500 per agreement)
  • AI narrative drafts (reminders, summaries)
  • Landlord statement export (₦200 per statement)
  • Professional Record accumulating on their personal RIN
What a solo agent does NOT get:
  • Custom branding on documents
  • Anomaly detection dashboard
  • Payment prediction feed
  • Natural language queries
  • Fraud detection alerts
  • Operator intelligence (full capability)

Organisation Staff Agent (Linked to BRN)

Operates within a registered firm. Personal RIN is linked to the BRN for the duration of employment. Deals attributed to both their RIN and the firm’s BRN. Subscription managed at the organisation level. What an org staff agent gets: Everything above, plus (depending on org subscription tier):
  • Unbranded documents (Leja branding removed, firm branding applied)
  • Operator intelligence (full capability — applicant shortlisting, agreement drafting)
  • Anomaly detection dashboard
  • Payment prediction feed
  • Natural language portfolio queries
  • Fraud detection alerts

Core Agent Workflow Features

Property and Portfolio Management

Property creation:
  • Name, address (LGA required), state (required), landlord details
  • Property type: residential, commercial, mixed-use
  • State template auto-selected based on property state
  • Property RIN issued at creation (PROVISIONAL tier)
Unit management:
  • Unit number, type (room, self-contained, 1-bed, 2-bed, etc.)
  • Default rent amount and frequency
  • Occupancy status (VACANT, OCCUPIED, UNDER_MAINTENANCE)
  • Link to active tenancy
Tenant creation:
  • Full name, phone (required — triggers RIN deduplication check)
  • Email (optional), emergency contact (optional)
  • Linked unit, lease start date, lease end date
  • Rent amount and billing frequency
  • RIN issued silently at creation (PROVISIONAL)

AI-Assisted Payment Witnessing

This is the primary way agents populate the Trust Graph at scale. The flow:
  1. Agent receives a payment signal inside the Payment surface: bank transfer reference, gateway event, tenancy virtual account credit, cash acknowledgment, or operator-supplied supporting evidence
  2. AI payment review pipeline runs (BullMQ worker + intelligence layer):
    • Normalizes any attached evidence or metadata
    • Structures amount, date, reference, payer identity hints, and rail
    • Returns confidence score plus candidate charge matches
  3. Smart charge matching: suggested data cross-referenced with open charges
  4. Agent sees: payment review card + top 3 charge matches with confidence scores
  5. Agent confirms (or selects different match, or overrides)
  6. On confirmation — atomic transaction:
    • Payment record created with aiConfidence field
    • RentCharge amountPaid updated, status recalculated
    • AuditLog entry written
    • TrendEvent written (PAYMENT_ON_TIME / PAYMENT_LATE / PAYMENT_PARTIAL)
    • Receipt generation queued (BullMQ worker)
    • Background fraud check initiated (Dimension E)
If AI confidence < 60%: Flagged for manual review. Pre-filled data shown. Agent must review and correct before confirming. Cannot be confirmed without human review. Milestone Wave 1 review coverage: Common Nigerian transfer rails and gateway-generated payment events are supported first. Coverage expands iteratively as real payment traffic enters Leja. What the agent never sees: The AI suggestion is never written to the record layer. The agent confirms a fact. The AI assists the agent in identifying what that fact is. The aiConfidence field on the Payment record is permanent — it shows that AI was involved and what its confidence was.

Manual Payment Recording

For cash payments, off-platform transfers without structured gateway data, or edge cases: The flow:
  1. Agent selects “Record Payment” on a specific charge
  2. Fills in: amount, payment date, payment method, reference (optional), notes
  3. Confirms
  4. Same atomic transaction as AI-assisted (Payment + TrendEvent + AuditLog + Receipt)
Cash witnessing: Cash payments are acknowledged and witnessed — not processed by Leja. Both the agent (confirming) and optionally the Resident (via Resident record link) confirm the cash payment. The record exists even though Leja did not move the money. The cash acknowledgment fee: A small fee (see revenue model) for witnessing a cash payment. Creates an incentive to route all payments through Leja even when the money moves in cash.

AI Tenancy Agreement Generator

The flow:
  1. Agent enters: property address, tenant name, rent amount, duration (months), state
  2. Claude Haiku generates a state-compliant agreement from the witnessed tenancy context
  3. Agreement includes:
    • Correct legal clauses for the property’s state (Lagos 2011, Oyo 2006, etc.)
    • Penalty terms, notice periods, renewal conditions, deposit terms
    • State-required receipt language and advance rent limits
  4. Agent reviews and edits (typically < 2 fields need changing)
  5. Downloads as branded PDF (Leja-branded for free tier, org-branded for subscribers)
  6. Agreement data auto-creates Property, Unit, Tenant, and Charge records if they don’t already exist
  7. TrendEvent: LEASE_STARTED
Revenue: ₦500 per agreement generated. Value vs. alternative: A lawyer charges ₦10,000–₦30,000. Leja charges ₦500. The agent looks professional. The landlord has a compliant document. The buyer has their first witnessed residential record.

AI Document Parsing

For existing agreements the agent already has: The flow:
  1. Agent uploads tenancy agreement (PDF or photo)
  2. BullMQ worker sends to Claude Vision + Vercel AI SDK generateObject
  3. Parses: tenant name, landlord name, property address, rent amount, frequency, lease dates, deposit, service charge, renewal terms, penalty clauses, notice requirements, state compliance
  4. Agent sees pre-filled form with confidence indicators
  5. One click imports: creates Property, Unit, Tenant, Charge records
  6. Agent reviews and adjusts (typically < 3 fields)
  7. RIN issued to tenant at creation
Accuracy target: > 80% of fields correct on standard Nigerian agreements. Agent should need to correct fewer than 3 fields on average.

Receipt Generation

Every confirmed payment generates a state-compliant receipt PDF. Receipt contains:
  • Receipt number: LJA-YYYYMM-XXXX (unique per organisation)
  • Issue date and timestamp
  • Property details (address, LGA, state)
  • Tenant full name
  • Landlord full name
  • Amount paid (in figures and words)
  • Payment method and reference
  • Billing period covered
  • Outstanding balance (if partial payment)
  • State-required legal text (varies by stateTemplate)
  • QR code for public verification (Milestone Wave 2)
  • Leja branding OR org branding (depending on tier)
Smart receipt notes (AI-generated):
  • “3rd consecutive on-time payment”
  • “Payment received 5 days late — 2nd occurrence this quarter”
  • “First payment at this property” These appear as a small note on the receipt. Human-reviewed, never auto-generated without agent review in Milestone Wave 1. Becomes more automated in Milestone Wave 2.
State templates active in Milestone Wave 1: LAGOS_2011 and OYO_2006 State templates active in Milestone Wave 2: FCT_2008, RIVERS_2020 All 36 state + FCT enum values present from Day 1.

Landlord Statement Export

What it generates:
  • Property name and address
  • Statement period (date range)
  • Total charged in period
  • Total received in period
  • Outstanding balance
  • Per-unit breakdown
  • Line-item payment history
  • State-compliant format
Format: PDF download. R2 storage (presigned URL, short TTL). AI landlord summary (Pro tier): AI drafts a professional narrative summary of portfolio health in Nigerian English. Agent reviews before sending to landlord. “Portfolio performance summary for [property], [period]: 3 of 4 units fully paid. Unit 2B has outstanding balance of ₦X (15 days overdue). Payment patterns have been consistent overall, with one exception in Unit 3A which is improving.”

AI Narrative Drafts

Tenant reminders: AI generates a contextually calibrated reminder based on:
  • Tenant’s specific payment history
  • Current arrears amount and duration
  • Previous communication outcomes
  • Escalation tier (friendly → firm → formal notice)
The tone scales automatically:
  • Day 1 late: “Hi [name], your rent of ₦X was due [date]. Please arrange payment…”
  • Day 30 late: “Your rent is now 30 days overdue. Legal action may be initiated…” Nigerian English register — never British formal.
Landlord summaries: Portfolio-level performance generated from verified record data. No manual calculation required. AI reads verified records and drafts the report. Agent edits and sends via their preferred channel. Leja does not send messages on behalf of agents. Leja drafts. The agent sends.

Dashboard

Dashboard shows (all tiers):
  • Total properties, units, occupied count, vacant count
  • Due this month, received this month, overdue amount
  • Overdue count with severity breakdown (5 days, 15 days, 30+ days)
  • Witnessed events this month (payments, agreements, TrendEvents)
  • Shortcuts to: overdue charges, pending AI extractions, recent receipts
Dashboard shows (Pro tier and above, additional):
  • Anomaly feed (AI-detected payment pattern shifts)
  • Payment prediction feed (tenants expected to be late this week)
  • Fraud flag alerts (any active flags on portfolio tenants)
Dashboard rule: Dashboard is a summary and shortcut surface. Workflow execution happens on dedicated pages (properties, tenants, charges). The dashboard does not contain every workflow — it points to them.