8byte.ai
Loan Origination System — Functional Documentation
Staff Features End User Journey Processing Flows

LOS — Functional Documentation

A plain-language reference covering what every staff role can do, how an end customer experiences the platform, and how each major process flows from start to finish.

System Overview

The Loan Origination System (LOS) is a multi-tenant SaaS platform used by lending companies (called Brands) to manage the complete lifecycle of personal loans — from the moment a customer signs up to the final repayment and loan closure.

Every brand operates on the same platform but is completely isolated from others: its own customers, its own staff, its own rules, and its own configuration.

Two types of users exist: End Users (borrowers/customers applying for loans) and Partner Users (staff inside the lending company — credit executives, collection agents, ops, admins, etc.)

Who Uses The System

👤
End User (Customer)
Borrower applying for a loan
  • Signs up via web/app
  • Completes KYC and submits documents
  • Applies for a loan and signs agreement
  • Receives disbursement and repays
🏦
Credit Executive (CX)
Front-line loan officer
  • Reviews customer profiles and documents
  • Performs credit assessment (CAM)
  • Approves or rejects loan applications
  • Communicates with customers via calls
Sanction Manager / Head
Senior approval authority
  • Reviews CX-approved loans
  • Gives final sanction or rejects
  • Can override loan amounts
  • Manages escalations
💳
Collection Team
Recovery & repayment agents
  • Manages overdue and active loans
  • Records calls and payment promises
  • Collects full or partial payments
  • Processes write-offs and settlements
⚙️
Loan Ops
Operations & disbursement
  • Initiates and approves disbursements
  • Approves partial collection requests
  • Manages payout and beneficiary files
  • Handles operational exceptions
🛡️
Admin / Super Admin
Platform administration
  • Manages all staff accounts and roles
  • Configures brand settings and rules
  • Manages loan products and fees
  • Views all reports and audit logs
📣
Sales Team
Lead generation & conversion
  • Views and processes incoming leads
  • Tracks customer onboarding status
  • Monitors conversion metrics
  • Manages UTM and campaign attribution

END USER (CUSTOMER) EXPERIENCE

Onboarding Journey

When a customer visits a brand's website or app, they go through a structured onboarding funnel. The funnel steps are tracked individually so a customer can resume from where they left off.

1
Account Registration
Customer enters their mobile number or email. An OTP is sent to verify the contact. Once verified, the account is created and associated with the specific brand they signed up through.
OTP Verification Phone or Email WhatsApp opt-in
2
Basic Profile
Customer fills in their personal details: full name, date of birth, gender, marital status, father's/mother's name, and religion. They also specify their current address with pincode.
Personal Info Address Pincode must be serviceable
3
PAN Card Verification
Customer submits their PAN number. The system verifies it via a third-party provider (Digitap / Neokred), confirms the PAN holder name, checks if Aadhaar is linked to PAN, and stores the match result.
Auto-verified via API Aadhaar-PAN link check Blocklist check
4
Aadhaar Verification
Customer verifies their Aadhaar either by uploading front and back images or via DigiLocker (government digital vault). The name and DOB from Aadhaar are matched against the profile entered.
DigiLocker Manual upload Name + DOB match
5
Selfie / Video KYC
Depending on brand configuration, the customer may need to upload a live selfie and/or a short video for liveness verification. This is compared against the Aadhaar photo.
Brand-configurable Selfie Video
6
Terms & Consent
Customer accepts the brand's Terms & Conditions and privacy policy. They consent to data sharing and credit bureau enquiries.
T&C acceptance Privacy policy

The onboarding funnel is resumable — if a customer drops off at any step, they can log back in and continue from where they stopped. Each step is recorded with a timestamp.

KYC & Document Submission

After basic onboarding, the customer submits additional documents to complete their KYC (Know Your Customer) verification.

Primary KYC Documents

DocumentWhat is verifiedHow
PAN CardName, DOB, Aadhaar linkage, fraud checkAPI (Digitap / Neokred)
Aadhaar CardName, DOB, address, photoDigiLocker or manual upload + admin review

Supporting Documents (if requested)

The brand may request additional supporting documents depending on the customer's profile or occupation:

Document TypeWhen Needed
Voter ID / Driving License / PassportAddress proof
Electricity / Water / Gas / Wifi / Postpaid BillAddress proof
Rent AgreementRented accommodation proof
Salary Slip (last 3 months)Income proof for salaried customers
Form 16 / ITRTax return for self-employed
Employer CertificateEmployment proof
College IDIf applicant is a student
Marriage CertificateIf married and name changed

Alternate Contact Information

Customers can add alternate phone numbers (family members or references) and alternate addresses (parental home, office). These are used for collection follow-up if the primary contact is unreachable.

Employment & Bank Account

Employment Details

The customer provides their current employment information. This is used to assess repayment capacity.

FieldDetails
Company Name & DesignationCurrent employer and job title
Date of JoiningTenure at current company
Monthly SalaryGross take-home salary
Mode of SalaryBank transfer / Cash / Cheque / Other
Expected Salary DateDay of month salary is credited
Office AddressLocation and pincode
UAN NumberEPFO Universal Account Number (optional)
Employment TypeFull-time, Part-time, Contract, Freelance, Gig, etc.

Bank Account Verification

The customer links their bank account for loan disbursement. The account is verified via a Penny Drop — the system sends ₹1 to the account and confirms the account holder name matches the customer's name.

Verification MethodDescription
Penny Drop (API)Automated ₹1 transfer + name match. Fastest and most reliable.
ManualStaff manually verifies the account by reviewing uploaded bank statement/passbook.

Bank Statement Upload

The customer uploads their bank statements (typically last 3–6 months, configurable per brand). These are analyzed by a BSA (Bank Statement Analysis) provider to extract salary credits, spending patterns, and existing EMI obligations.

Loan Application

Once onboarding and KYC are complete, the customer applies for a loan.

1
Select Loan Amount & Tenure
Customer selects their desired loan amount (within the brand's min/max range) and tenure (in days). The platform shows a preview of fees, interest, and the repayment amount.
Amount range is brand-configuredTenure in days
2
Credit Bureau Check (CIBIL)
The system automatically pulls the customer's credit report from Equifax or CIBIL Pro. The credit score, active loans, and repayment history are fetched and stored for underwriting.
Equifax / CIR Pro V2Auto-fetched
3
Eligibility Check (BRE)
The Business Rule Engine evaluates the customer against the brand's configured eligibility criteria: age, credit score, salary, pincode serviceability, existing obligations, and more. The result is ELIGIBLE or NOT ELIGIBLE per rule.
AutomatedMulti-stage evaluation
4
Application Submitted
The loan application enters a PENDING state and is queued for review by a Credit Executive. The customer may be notified via SMS/WhatsApp.
Status: PENDING
5
Under Review → Approved / Rejected
Staff review the application and either approve (with a possibly modified amount) or reject it with a reason. The customer is notified at each stage.
Approved → proceed to e-signRejected → reason communicated

Coupon Codes

If the brand has configured discount coupons, the customer can apply a coupon code during loan application to reduce the processing fee. The pre and post-discount amounts are recorded.

Loan Agreement & E-Sign

Once the loan is approved, the customer must digitally sign the loan agreement before disbursement.

1
Agreement Generated
The system generates a loan agreement document pre-filled with the customer's details, loan amount, tenure, fee breakdown, repayment schedule, and the brand's legal information.
2
E-Sign Link Sent
An e-sign link is sent to the customer via SMS / WhatsApp. The link is valid for a configurable number of days (default: 2 days). If expired, staff can resend it.
Link expires in 2 days (configurable)SignDesk / Signzy / Digitap
3
Customer Signs
Customer opens the link and digitally signs using Aadhaar OTP-based e-sign. Once signed, the status changes to SIGNED and the agreement PDF is stored securely.
Status: SIGNED
4
Ready for Disbursement
With a signed agreement, the loan moves to AWAITING DISBURSEMENT status and is ready for the Ops team to transfer funds.
Status: AWAITING DISBURSEMENT

Disbursement & Repayment

Receiving the Loan

After disbursement is initiated by Ops, the net loan amount is transferred to the customer's verified bank account. The gross amount minus upfront deductions (processing fee, convenience fee, GST) equals the net disbursed amount.

Repayment Options

OptionDescription
Full RepaymentCustomer pays the full outstanding amount (principal + fees + accrued interest). A receipt is generated.
Partial PaymentCustomer makes a partial payment. The loan remains active; balance reduces. Multiple partial payments allowed.
UPI AutopayCustomer sets up a UPI mandate so repayment is auto-debited on the due date.
Payment LinkStaff can send a payment link directly to the customer for online payment.

Overdue & Penalties

If the due date passes without full repayment, the loan status changes to OVERDUE. Daily overdue interest charges are applied. A collection agent is assigned to follow up. The customer receives automated SMS/WhatsApp reminders.

Closure

When fully repaid, the loan status changes to COMPLETED/PAID. A No Due Certificate (NDC) is automatically generated and can be shared with the customer as proof of loan closure.

Re-Loan

After successfully repaying a loan, an eligible customer can apply for another loan (a "re-loan"). The brand can configure automatic re-loan offers.

FeatureHow it works
Auto Re-loan OfferUpon loan closure, the system automatically checks eligibility and may pre-approve a new loan with a higher amount.
Amount HikeEach re-loan can have a fixed or percentage increase over the previous loan amount (configured per brand).
Faster ProcessingKYC data is already on file; only updated income and bank data may be needed.
Re-loan StatusPENDING → APPROVED / REJECTED / CANCELLED

STAFF ROLES & WHAT THEY CAN DO

Credit Executive (CX)

The Credit Executive is the first staff member to review a new loan application. They assess the customer's creditworthiness and make the first approval decision.

What a Credit Executive Can Do

Customer Review

  • View assigned customer profiles, documents, and KYC data
  • Check PAN / Aadhaar verification status
  • Review employment details and salary information
  • View bank statements and BSA (Bank Statement Analysis) report
  • View credit bureau (CIBIL/Equifax) report and score
  • Check for blocklisted PAN/Aadhaar/mobile/bank account

Credit Appraisal Memo (CAM)

  • Fill the CAM calculator with 3 months of salary data
  • Calculate FOIR (Fixed Obligation to Income Ratio)
  • Record existing EMI obligations
  • Enter recommended loan amount and ROI
  • Add notes and remarks for senior review

Loan Decision

  • Approve the loan (with a specific approved amount, potentially different from what customer requested)
  • Reject the loan with a reason (document issues, low credit score, insufficient income, etc.)
  • Send back the application requesting more documents or information
  • Override individual BRE evaluation rule results (with justification)

Communication

  • Call customers directly through the integrated telephony dialer
  • View and respond to callback requests from customers
  • Add notes to the customer's account

Auto-Allocation: If enabled by the brand, new loan applications are automatically assigned to available credit executives based on their workload and availability. CXs can also be manually reallocated by their manager.

Sanction Manager / Sanction Head

After a Credit Executive approves a loan, it moves to the Sanction Manager for the second and final internal approval before the e-sign process begins.

What a Sanction Manager Can Do

  • Review the full loan file: CX notes, CAM, BRE results, documents
  • Sanction the loan — set the final approved amount (can differ from CX's approved amount)
  • Reject the loan — with a reason code that is communicated to the customer
  • Send the application back to the Credit Executive with comments
  • View all loans in their queue (CX-approved, pending sanction)
  • View reports for their team's performance

The Sanction Head has additional visibility: they can see all loans across all Sanction Managers and handle escalations.

The Sanction Manager approval is the last internal gate before the loan agreement is sent to the customer. Once sanctioned, the process moves to e-sign and cannot easily be reversed without cancelling the loan.

Collection Team

The Collection team manages all active, overdue, and defaulted loans. They are responsible for recovering outstanding repayments.

Collection Executive

Loan Monitoring

  • View assigned loans that are active, overdue, or at risk
  • See full repayment obligation breakdown (principal, fees, penalties, taxes)
  • Track Days Past Due (DPD) for each loan
  • View the complete loan ledger (every transaction posted)

Customer Contact

  • Call customers using the integrated telephony dialer
  • Access alternate phone numbers added during onboarding
  • Record call outcomes (connected, not reachable, wrong number, callback requested, etc.)
  • Send payment links to customers via SMS/WhatsApp

Promise to Pay (PTP)

  • Record a Promise to Pay — log that the customer has committed to paying on a specific date
  • Upload documents/evidence shared by the customer (payment proof, etc.)
  • Add remarks to each collection attempt

Payment Collection

  • Record full repayment — mark a loan as fully repaid, triggering closure and NOC generation
  • Record partial payment — post a part-payment. This requires Ops approval before it is applied.
  • Apply penalty discounts (waive overdue charges with justification)
  • Initiate a Settlement — collect a reduced amount as full and final settlement
  • Initiate a Write-Off — mark the loan as a bad debt when recovery is deemed impossible

Field Visits

  • Mark a loan as requiring a field visit
  • Upload geo-tagged visit evidence

Collection Manager / Collection Head

  • View all loans across their team of collection executives
  • Reallocate loans between agents
  • View team performance reports and efficiency metrics
  • Approve or reject partial collection requests
  • Access collection reports: DPD buckets, recovery rates, agent-wise performance

Pre-Collections vs Collections vs Post-Collections: The permission system distinguishes between pre-collections (loans nearing due date), active collections (overdue loans), and post-collections (write-offs, settlements, legal). Each stage may be assigned to different teams.

Loan Operations (Ops)

The Ops team handles the financial execution side of loans — transferring money and confirming payments.

What Loan Ops Can Do

Disbursement

  • View all loans in AWAITING DISBURSEMENT status
  • Verify the customer's bank account details before transfer
  • Initiate the bank transfer (NEFT/IMPS/UPI) via integrated payment gateway (Razorpay, Cashfree, ICICI, IDFC, etc.)
  • Handle failed disbursements and retry transfers
  • Generate and download payout files (XLSX) for bulk disbursements
  • Generate beneficiary registration files for new bank accounts

Payment Approvals

  • Approve or reject partial collection requests submitted by collection agents
  • Confirm manual payment receipts uploaded by collection team

Loan Management

  • Force-bypass BSA (bank statement analysis) or CIBIL checks in exceptional cases
  • Reactivate cancelled or rejected loans when approved by management
  • Manage loan no-due certificates and settlement letters

Admin / Super Admin

Admins have full platform access. They manage the brand configuration, staff accounts, loan products, and have visibility across all operations.

Staff Management

  • Create, edit, enable, or disable staff (partner user) accounts
  • Assign roles to staff (Credit Executive, Collection Agent, Ops, etc.)
  • Grant granular permissions (what each person can view or modify)
  • Define the reporting hierarchy (who reports to whom)
  • Set staff availability / mark leave dates (affects auto-allocation)
  • Generate QR/invite codes for staff onboarding
  • View staff activity logs, login history, and session reports
  • Rate staff performance (1–10 per metric)

Brand Configuration

  • Set eligibility rules: minimum salary, age limits, pincode serviceability
  • Configure auto-allocation behavior (loans, users, collections)
  • Enable/disable Account Aggregation, employment verification, selfie/video KYC
  • Configure which third-party providers to use for each service
  • Set repayment holidays (holidays when EMIs don't fall due)
  • Configure rejection/status reason codes
  • Manage blocklists: add PAN, mobile, Aadhaar, bank account numbers, or pincodes to deny list

Loan Product Management

  • Create and manage loan products (EMI loans, payday loans)
  • Set loan amount ranges, maximum loans per customer, tenure ranges
  • Configure fee structures: processing fee, convenience fee, interest rate (fixed or percentage, inclusive or exclusive)
  • Configure tax components on each fee (GST, TDS, etc.)
  • Set penalty rules for overdue loans (simple or compound interest)
  • Configure BRE rules for each loan product (what parameters to evaluate)
  • Create and manage discount coupons for processing fees

Reports & Audit

  • Download reports: disbursement, collection, loan status, agent performance, DPD buckets, recovery efficiency
  • View full audit trail for any loan or user status change
  • View all API call logs (third-party integrations)
  • View brand configuration change history

The Super Admin has access across all brands on the platform, not just one. They can view and manage any brand's data.

Sales Team

The Sales team focuses on customer acquisition — tracking leads from marketing campaigns and helping convert them into registered borrowers.

What Sales Can Do

  • View incoming leads from Facebook/Google ad campaigns
  • Check if a lead matches an existing customer in the system (exact, partial, or fuzzy match on phone/email/PAN/name)
  • Track onboarding-in-progress users (signed up but haven't completed KYC)
  • View UTM parameters and marketing attribution for each customer
  • Monitor conversion at each onboarding step
  • View brand targets and performance against monthly goals

Sales Manager / Head roles have broader visibility across the team and access to aggregated sales reports and team performance.


PROCESSING FLOWS

Full Loan Lifecycle

ONBOARDING PENDING CX APPROVED SM APPROVED APPROVED AWAITING DISBURSAL DISBURSED ACTIVE PARTIALLY PAID COMPLETED / PAID

Terminal states: REJECTED CANCELLED OVERDUE DEFAULTED SETTLED WRITE_OFF

Stage-by-Stage Breakdown

StatusWho ActsWhat Happens
ONBOARDINGCustomerCustomer fills loan application, system runs BRE automatically.
PENDINGSystemApplication submitted. Auto-allocated to a Credit Executive if enabled.
CX APPROVEDCredit ExecutiveCX reviews profile, fills CAM, and approves with a recommended amount.
SM APPROVEDSanction ManagerSM reviews and gives final sanction with confirmed amount.
APPROVEDSystemLoan agreement generated; e-sign link sent to customer.
AWAITING DISBURSALCustomer → OpsCustomer signs agreement; Ops team initiates bank transfer.
DISBURSEDSystemTransfer confirmed by payment gateway. Loan is live.
ACTIVECustomer / CollectionLoan is running. Automated reminders sent as due date approaches.
PARTIALLY PAIDCollection / CustomerOne or more partial payments received. Balance reduced.
OVERDUESystem → CollectionDue date passed. Penalty interest accrues. Collection agent follows up.
COMPLETEDSystemFull repayment received. NDC auto-generated. Re-loan check triggered.

BRE Evaluation (Business Rule Engine)

Every loan application is evaluated against a set of rules configured for the brand. The BRE runs automatically when the customer submits their application.

1
Rule Collection
The system loads all evaluation rules configured for the brand's loan product. Rules are organized into up to 4 sequential stages. Each stage can have multiple rules.
2
Data Gathering
For each rule, the system pulls actual values from the relevant data source: credit bureau score from CIBIL/Equifax, salary from BSA or manual entry, age from Aadhaar DOB, pincode from the customer's address, etc.
CIBIL / EquifaxBSA (Bank Statement)AA (Account Aggregation)Manual
3
Rule Evaluation
Each rule is evaluated: actual value vs required value. Result is ELIGIBLE or NOT_ELIGIBLE. A rule can be from multiple sources — if any one source satisfies it, the rule passes.
ELIGIBLENOT_ELIGIBLE
4
Manual Override (Staff)
A Credit Executive can manually override an individual rule result — marking a NOT_ELIGIBLE result as ELIGIBLE with a justification note. This is tracked in the audit trail.
Override requires justificationFully audited
5
Evaluation Result
The overall evaluation result (pass/fail) is visible to the Credit Executive and Sanction Manager during their review and informs the loan decision.

Common BRE Rule Parameters

ParameterWhat's Checked
CREDIT_SCORECustomer's CIBIL / Equifax score must be ≥ configured minimum
SALARYMonthly net salary must be ≥ brand's salary threshold
AGECustomer age must be within min_age and max_age (default 22–54)
PINCODECustomer's pincode must be in the serviceable/non-blocked list
FOIRFixed Obligation to Income Ratio must be below threshold
EXISTING_LOANSNumber of active loans from other lenders
DPDDays Past Due on any existing credit must be zero or within tolerance

Disbursement Flow

1
Loan Sanctioned & Agreement Signed
The customer has signed the loan agreement digitally. The loan is in AWAITING DISBURSEMENT state.
2
Fee Calculation & Deductions
The system calculates the disbursement amount: gross loan amount minus all upfront deductions (processing fee + GST, convenience fee + GST, documentation fee, etc.). The customer receives only the net amount.
Gross Amount - Deductions = Net Disbursed
3
Ops Initiates Transfer
The Ops team verifies the bank account details and initiates the NEFT/IMPS transfer via the configured payment gateway. The transaction is logged with provider reference ID.
Razorpay / Cashfree / ICICI / IDFCNEFT / IMPS / UPI
4
Transfer Confirmation
Once the gateway confirms the transfer, the loan status moves to DISBURSED and then ACTIVE. The repayment due date is calculated from the disbursement date based on the loan tenure. Customer is notified.
Status: DISBURSED → ACTIVE
!
Failed Transfer
If the transfer fails (wrong account, bank down), the system records the failure and Ops can retry. The retry count is tracked. Ops may need to update bank account details and retry.
Retry mechanismFailure reason logged

Collection Flow

1
Automated Reminders (Pre-Due)
Starting 7 days before the due date, the system sends automated SMS, WhatsApp, and email reminders to the customer. Reminder schedules are configurable: 7-day, 3-day, 1-day, same-day reminders.
Fully automatedSMS + WhatsApp + Email
2
Due Date Passes → OVERDUE
If unpaid, the loan is automatically marked OVERDUE. Daily penalty interest starts accruing. A collection agent is assigned (manually or auto-allocated).
Penalty interest accrues daily
3
Collection Agent Contact Attempts
The collection agent calls the customer. Each call is logged with duration, outcome, and timestamp. If the customer commits to paying, a Promise to Pay record is created with the committed date.
Call logsPTP recording
4
Payment Received
If full payment is received: loan is marked PAID, receipt generated, NDC created. If partial payment: recorded with Ops approval, balance updated, loan stays PARTIALLY_PAID → OVERDUE.
5
Escalation Paths
If recovery fails after extended pursuit, the loan can be: (a) Settled — customer pays an agreed reduced amount as full closure; or (b) Written Off — marked as bad debt, loan is effectively closed as a loss. Both are tracked with closure type and date.
Settlement LetterWrite-Off Letter

Re-Loan Flow

1
Loan Closes Successfully
Customer completes full repayment. The system automatically checks eligibility for a re-loan based on brand configuration.
2
Eligibility Check
System checks: has the customer repaid on time? Are they within the allowed loan count? Is automated reloan enabled? The check result is logged in the reloan automation log.
3
Re-Loan Offer
If eligible, the customer is offered a new loan, potentially with a higher amount (fixed hike or percentage increase configured per brand). The re-loan offer is sent via notification.
Amount hike: fixed or % increase
4
Customer Accepts
Customer accepts the offer. Since KYC is already on file, the process is faster. The new loan goes through the normal approval flow (BRE → CX → SM → Disbursal), but with fewer data collection steps.

Account Aggregation (AA)

Account Aggregation is an RBI-regulated framework where customers can securely share their bank transaction data with the lending platform — without uploading physical bank statements.

1
Customer Consents
Customer provides their AA handle (e.g. username@onemoney) in the app. The system sends a consent request to the AA provider (Finduit or CART).
Finduit / CART
2
Customer Approves on AA App
The customer logs into the AA app (e.g. OneMoney) and approves the consent request, choosing which bank accounts to share data from.
Consent: ACTIVEOr: REJECTED / REVOKED
3
Bank Data Received
The bank (FIP — Financial Information Provider) shares 3–12 months of transaction data. The system receives and stores it per bank account session. Data arrives in JSON/XML/CSV format.
4
Financial Insights Generated
The system analyzes the data: salary credits, recurring expenses, EMI debits, average balance, income stability, cash flow patterns. These insights are stored and used in BRE evaluation.
Replaces manual bank statement upload

Brand Configuration

Every brand can independently control the loan processing behavior via configuration flags. Here are the most impactful ones:

SettingDefaultWhat it controls
Minimum Salary ThresholdConfigurableCustomers below this monthly salary are auto-rejected
Age Range (min / max)22 – 54Age limits for loan eligibility
Rejection Cooldown15 daysHow many days before a rejected customer can re-apply
Bank Statement History3 monthsHow many months of statements the customer must upload
E-Sign Link Expiry2 daysDays before an unsigned agreement link expires
Minimum Loan Amount₹15,000Smallest loan amount allowed
Auto-Allocate LoansOffAutomatically assign new loans to Credit Executives
Auto-Allocate CollectionsOffAutomatically assign overdue loans to Collection Agents
Account Aggregation (AA)OffEnable AA-based bank statement retrieval
Require Employment DataOnWhether employment section is mandatory
Require Selfie / VideoConfigurableLiveness checks during KYC
CAM Calculation RequiredOffWhether CX must fill the Credit Appraisal Memo
Automated Re-LoanOffAuto-trigger re-loan offers on closure
Auto-Reject Inactive UsersOffAuto-reject users who have been inactive for N days
Sunday OffOnExclude Sundays from repayment schedule calculation
Central DedupOffCheck if the same customer exists on another brand

Permission System

Beyond broad roles, staff access is controlled by granular permissions. Each permission can be granted as READ only, WRITE, or ALL (full access). Permissions are assigned per user and can differ from their role defaults.

Customer Permissions

  • CUSTOMER — view & manage customer profiles
  • ONBOARDING_IN_PROGRESS — see incomplete signups
  • ONBOARDING_COMPLETED — see completed KYC users
  • RELOCATE_USER — move a customer to another agent
  • GLOBAL_SEARCH — search across all customers

Loan Permissions

  • LOANS — view & manage loan applications
  • LOAN_OPS — disbursement & operations access
  • SANCTION_MANAGER — second-level approvals
  • SANCTION_HEAD — view all sanction manager loans
  • COMPLETED_LOANS — view closed/paid loans
  • LOAN_REACTIVATE — reopen cancelled loans
  • LOAN_RULE_TYPE — modify loan product on a loan
  • LOAN_RELOCATE — transfer loan to another agent
  • LOAN_SEND_BACK — return for more info
  • LOAN_FORCE_BYPASS — skip BSA/CIBIL checks

Collection Permissions

  • PRE_COLLECTIONS — pre-due follow-up loans
  • COLLECTIONS — overdue loan management
  • POST_COLLECTIONS — write-offs, settlements
  • COLLECTION_REALLOCATE_LOANS — reassign cases

Admin Permissions

  • BRAND_SETTINGS — modify brand configuration
  • PARTNER_USER_MANAGEMENT — manage staff accounts
  • VIEW_DASHBOARD — access analytics dashboard
  • MASTER_REPORTS — download all reports

Notifications & Reminders

Customer Notifications (Automated)

TriggerChannelType
7 days before loan due dateSMS / WhatsApp / Email7-day payment reminder
3 days before loan due dateSMS / WhatsApp / Email3-day payment reminder
1 day before loan due dateSMS / WhatsApp / Email1-day payment reminder
On due dateSMS / WhatsApp / EmailSame-day reminder
After due date (overdue)SMS / WhatsApp / EmailOverdue reminder (repeated)
Loan disbursedSMS / WhatsAppDisbursement confirmation
Loan fully paidSMS / EmailPayment receipt + NOC

Staff Notifications (In-App)

Admins can create targeted notifications for specific roles or individual staff members within the partner portal. Notifications have a priority (HIGH / MEDIUM / LOW), can be scheduled, and staff can acknowledge them. The system tracks who has read each notification.

Lead Management

Who uses it: Admin, Sales Team

Lead Management handles inbound leads from Facebook Ad campaigns. After running an ad, the sales team downloads the leads CSV from Facebook Ads Manager and uploads it to the portal. The system deduplicates, matches to existing users, and tracks processing status.

How It Works

1
Upload CSV
Download the leads CSV from Facebook Ads Manager, then upload it in the portal (Leads page → Upload). The system parses each row and stores it as a LeadForm record with status PENDING.
multipart/form-data upload
2
Deduplication
On upload the system automatically marks duplicate phone/email entries within the same brand as DUPLICATE — they won't be processed again.
3
Sync / Process
Click Sync to trigger processing. Each PENDING lead is matched against existing platform users by phone number. Matched → PROCESSED. Unmatched or failed → FAILED (with error message visible per row).
4
View, Filter & Export
Stats cards show total / pending / processed / failed / duplicate counts. Filter by status, search by name/phone. Export all leads as CSV. Bulk delete is available. Each lead shows campaign info (ad, ad set, form name) and lead responses (salary, PAN, employment type).

Note: Organic leads (isOrganic = true) — i.e. users who signed up directly without a paid ad — are tracked separately from campaign leads and will appear in the list with no campaign metadata.

Reminder Management

Who uses it: Collection Team, Loan Ops, Admin

Reminders are manually scheduled messages sent to specific customers at a future time via SMS, WhatsApp, or Email. They're separate from automated system notifications — staff create them to follow up on specific loans, overdue cases, or payment dates.

Creating a Reminder

1
Open Reminders Page → Create
Go to the Reminders section. Click "Create Reminder". Select the customer (search by name/phone), choose a channel (SMS / WhatsApp / Email), pick a message template, and set the future scheduled date & time.
2
Saved as PENDING
The reminder is stored with status PENDING. A background cron job runs every minute (EVERY_MINUTE) and picks up reminders where the scheduled time has arrived, dispatching them via the appropriate provider.
3
Sent or Failed
After dispatch, status becomes SENT (success) or FAILED (provider error). Staff can view the audit log for each reminder to see every status change, timestamp, and actor.

Monitoring Reminders

The Reminders list page supports filters by channel, status, created date range, and scheduled date range. Search by customer name or phone. The table shows customer name, channel, template, scheduled time, and current status.

Report Types

Who uses it: Admin, Super Admin

The Reports module provides date-range exports for analytics, compliance, and management review. All reports can be viewed in the portal or downloaded as CSV.

The backend exposes 29 report types grouped into three categories:

User & Loan Reports

Report SlugWhat It Contains
master-reportFull user profile dump — name, phone, PAN, Aadhaar, employment, bank account, address, references, all loan IDs/statuses/amounts
disbursed-loan-reportAll loans that reached disbursed status within the date range — amount, user, date
non-disbursed-loan-reportLoans that were approved/sanctioned but not yet disbursed
disburse-non-disburse-reportSide-by-side comparison of disbursed vs non-disbursed counts
active-loans-by-due-date-reportActive loans grouped by their upcoming due date — for proactive collection
completed-loan-with-no-repet-reportLoans marked completed but with zero repayment recorded — bad debt identification
loan-close-reportLoans closed (fully repaid) within the date range
outstanding-data-reportCurrent outstanding principal + interest across active loans
reject-reportAll rejected loan applications with rejection reasons
total-approve-sanction-reportAll sanctioned/approved loans within the date range
affiliate-reportLoans and users sourced via affiliate/partner channels
login-sessions-reportCustomer login session data — useful for engagement tracking

Collection Reports

Report SlugWhat It Contains
master-collection-reportFull collection data — overdue loans, amounts, customer contacts, collection agent assignments
collection-loan-reportPer-loan collection status and payment history
collection-due-reportLoans due (or overdue) within the selected date range
collection-loan-report-by-approved-dateCollection data filtered by loan approval date instead of due date
collection-allocation-executive-reportWhich collection executive is assigned to which loans — workload view
credit-executive-allocation-reportCredit executive allocation across active loan applications
collection-remarks-reportAll remarks/notes logged by collection agents per loan
total-recovery-reportTotal amounts recovered vs outstanding — recovery rate view
field-visit-reportField visit activity by collection agents — visit dates, outcomes

Marketing & Credit Reports

Report SlugWhat It Contains
marketing-reportLead acquisition data — lead stage, domain, UTM/campaign info, rejection reasons
internal-marketing-reportInternal marketing campaign performance view
internal-marketing-analysis-reportDeeper analysis of internal marketing funnel and conversion
daily-marketing-mis-reportDaily MIS (Management Information System) snapshot of marketing metrics
lead-total-reportTotal lead counts and statuses over the selected date range
cic-reportCIC (Credit Information Company) bureau pull data — CIBIL/Equifax checks performed
equifax-credit-reportEquifax bureau data for credit assessments within the range
transunion-reportTransUnion (CIBIL) bureau pull log for the date range

How to use: Select the report type, set a From Date and To Date, then click Generate. Use Export CSV to download — the backend streams the file directly. Master report also supports email delivery for large datasets.

Completed Loans Sub-Tabs

Who uses it: Collection Team, Loan Ops, Admin

The Completed Loans page is split into four sub-tabs to separate different loan closure types. Each sub-tab has its own filters, search, and export capability.

Sub-TabWhat It ShowsUsed By
All CompletedAll loans in any completed state — closed, settled, or written off. Full view for ops review.Loan Ops, Admin
ClosedLoans fully repaid by the customer. The expected happy-path outcome — loan amount + interest fully collected.Collection Team, Ops
SettlementLoans closed via a negotiated settlement — customer paid less than the full outstanding amount as a one-time settlement. Requires approval before marking.Collection Head, Admin
Write-offLoans declared unrecoverable and written off the books. These are tracked separately for accounting and regulatory purposes.Admin, Super Admin

VoIP Dialer (Acefone)

Who uses it: Collection Team, Credit Executives

The Acefone VoIP dialer lets staff make calls to customers directly from the partner portal without a separate phone system. Calls are automatically logged with duration and recording links.

For Staff (Making a Call)

1
Click the Phone Icon
On any user profile or loan detail page, click the phone icon next to the customer's number. The portal initiates a click-to-call request.
2
Agent's Phone Rings First
Acefone calls the staff member's extension first. Once the agent picks up, Acefone then dials the customer. This ensures the agent is ready before the customer answers.
3
Call Logged Automatically
After the call ends, Acefone sends a webhook to the backend. The call is logged with duration, status (answered / missed / busy), and a recording URL — all linked to the customer's profile.

For Admins (Configuring the Dialer)

Go to Brand Settings → Dialer / Acefone to configure API credentials, extension numbers per staff member, and enable/disable the dialer feature. Each staff member can be assigned their own Acefone extension.

Rating Matrix

Who uses it: Admin (to configure), Loan Ops / Sanction Managers (results)

The Rating Matrix is a configurable scoring framework used to evaluate and rate the performance of partner users (staff). Admins define criteria and weight them; the system computes scores based on activity.

How It Works

Admins configure the rating matrix in Brand Settings → Rating Matrix. Each matrix entry defines:

  • Criteria — e.g. loans processed per week, collection recovery rate, TAT (turnaround time)
  • Weightage — how much this criterion contributes to the overall score
  • Role — which staff role this matrix applies to (credit exec vs. collection exec, etc.)

A separate Partner User Rating Matrix links specific evaluations to individual staff members, enabling individual performance tracking over time.

Rating Matrix data is used by managers to identify high/low performers and inform staffing decisions. It's viewable from the partner user profile page for each staff member.

API Key Management

Who uses it: Admin, Super Admin

The API Key Management module lets admins generate and manage API keys for the brand. These keys are used to authenticate external systems (e.g. partner integrations, webhooks, B2B APIs) that need to access the LOS programmatically.

Key Operations

OperationDescription
Generate API KeyCreates a new API key for the brand. The key is shown once at creation — it cannot be retrieved again. Store it securely.
List KeysShows all active API keys for the brand with creation date, label, and status (active/revoked). The actual key value is masked.
Revoke KeyImmediately invalidates a key. Any requests using the revoked key will be rejected with 401 Unauthorized.

Security: API keys are hashed before storage. The full key is only shown once at creation. Treat API keys like passwords — do not share them or commit them to code repositories.

Dashboard V1 vs V2

Who uses it: All staff roles

The partner portal supports two dashboard versions — V1 (classic) and V2 (enhanced). Which version a brand sees is controlled by the dashboard_version field in the brand's configuration.

AspectDashboard V1Dashboard V2
LayoutStandard metrics grid — loan counts by status, recent activityEnhanced analytics — more KPIs, charts, trend views, breakdown by role
MetricsBasic: total loans, disbursed, pending, overdue countsExtended: collection recovery rate, TAT metrics, brand targets vs actuals
Reminder DashboardNot availableDedicated reminder metrics panel — scheduled/sent/failed counts, refresh button
Who Gets ItDefault for all brands unless overriddenEnabled per brand via BrandConfig setting

The dashboard_version value is stored in the BrandConfig table and loaded into the Redux brandSlice on login. The frontend conditionally renders the correct dashboard component based on this value.

Generated from prisma/schema.prisma · 2026-03-20 · LOS Backend Functional Documentation