â„šī¸ Developer Note: Fields with * are MANDATORY. Validate on frontend + backend. All approvals follow Maker-Checker unless disabled in config. Loan Account Number format: [BRANCH_CODE]-[SCHEME_CODE]-[SEQ_NO]-[FY].
đŸ“Ļ

Form 1: Loan / Deposit Scheme Configuration

HO Admin Only → Master Setup → Loan Schemes | Parent of all Loan Products
🔧 Dev Note: Schemes are HO-level masters. Branches cannot modify schemes. Scheme drives EMI formula, interest calculation, fee deduction, and NPA classification. Table: tbl_loan_schemes. FK in: tbl_loan_applications, tbl_emi_schedule. The "Interest Rate Change" feature requires a child table: tbl_scheme_interest_rates(scheme_id, effective_from, rate).
📌 Displayed in Loan Application dropdown, reports headers
📌 Used in Loan Account Number generation
📌 Drives UI fields shown in Loan Application. Gold Loan adds Ornament section.
📌 Drives EMI schedule due dates and NPA DPD counting
📌 Flat: interest on original principal. Reducing: on outstanding principal.
📌 "On Tenure End" → Interest Provision entry required monthly in GL
📌 Base rate. Can be overridden in child table with effective dates.
📌 If Yes: show date-wise rate entry grid. Affects ongoing EMI recalculation.
📌 Validated during Loan Application eligibility check
📌 Validated during Loan Application eligibility check
📌 Deducted from disbursement amount. Goes to: Processing Fee Income GL
📌 Applied during Foreclosure form calculation
📌 Used in Overdue Tracker. Goes to: Penal Income GL
📌 If Yes: Insurance module must be integrated separately
📌 These options appear in Loan Application tenure dropdown
📌 Loan-to-Value ratio. Max loan = Assessed Gold Value × LTV%
👤

Form 2: Customer Registration

Loan Officer → Customer Onboarding → Step 1 of 3 | Table: tbl_member_master
1. Basic Info
2. KYC Upload
3. Verification
4. Approved ✔
🔧 Dev Note: Customer (Member) is the base entity. Customer_ID generated only after KYC approval. Until then, status=DRAFT. MFI mode: Member Group & Field Unit dropdowns show when MFI scheme is selected. One member can be guarantor OR borrower, not both simultaneously (enforce this rule in backend). Multiple bank accounts allowed (child table: tbl_member_bank_accounts).
📌 Used in: Loan Agreement, NOC, all official documents
📌 Age validation: must be 18+. Used in insurance eligibility.
📌 Used in: OTP verification, SMS EMI reminders, collection alerts
📌 Used in: Digital statement delivery
📌 Used in: KYC verification, e-sign, fingerprint auth. Mask last 8 digits in display.
📌 Used in: CKYC, Credit Bureau check, TDS deduction
📌 Used in: Loan Agreement, collection sheet ordering (Near to Far)
📌 Captured at time of KYC visit. Used in: Loan sheet ordering
📌 Used in: Eligibility/risk assessment
📌 Used in: FOIR calculation, loan eligibility check
📌 GPS location also captured for business address
📌 Printed on loan application form & loan card
📌 If Yes: upload in KYC section. Used in income verification.
📌 Only visible when MFI loan type is active. Links member to centre.
📌 Member Group links to Field Unit. Required for group lending & collection.
đŸĻ Bank Account Details (Multiple Allowed)
📌 Used in: Disbursement via NEFT/IMPS, NACH mandate setup
📌 Verified via penny drop / NACH verification
đŸĒĒ

Form 3: KYC Upload & Verification

Loan Officer → Customer Onboarding → Step 2 & 3 of 3
1. Basic Info ✔
2. KYC Upload
3. Verification
4. Approved ✔
🔧 Dev Note: KYC documents stored in tbl_kyc_documents with: customer_id, doc_type, file_path, upload_date, verified_by, verified_date, status. CKYC integration: send Aadhaar+PAN to CKYC registry API → get KYC_ID back. Credit Bureau: integrate CIBIL/Experian API → store score + report in tbl_credit_report. Fingerprint auth is optional (device-dependent).
📌 Both front & back required for Aadhaar/Voter ID
📌 Live photo preferred. Used in loan application form print.
📌 Used in: Loan agreement, E-Sign fallback
📌 Upload if ITR Available = Yes in registration
🔍 Verification Actions
📌 API call to CKYC Registry. Store KYC_ID returned.
📌 CIBIL / Experian API. Store score + report PDF.
📌 Displayed in Loan Eligibility check
📌 System-generated based on score + income + DPD history
📌 Biometric device integration. Optional as per customer requirement.
📌 E-Sign via NSDL/UIDAI Gateway. Store signed PDF reference.
📋

Form 4: Loan Application

Loan Officer → Loan Module → New Application | Table: tbl_loan_applications
🔧 Dev Note: Application status flow: DRAFT → SUBMITTED → UNDER_REVIEW → APPROVED/REJECTED → SANCTIONED → DISBURSED → ACTIVE → CLOSED. Store each status change with timestamp + user_id in tbl_loan_status_history. EMI schedule is generated in tbl_emi_schedule after sanction. Co-applicant & Guarantor stored in tbl_loan_applicants with type=CO_APPLICANT/GUARANTOR.
📌 Only KYC-Approved customers visible. Auto-fills customer details.
📌 Scheme selection drives: interest rate, tenure options, extra fields (Gold Loan)
📌 Validated against scheme Min/Max. For Gold: overridden by LTV calculation.
📌 Options from scheme config. Drives EMI schedule generation.
📌 Used in: Loan agreement, RBI portfolio classification
📌 Cash disbursement restricted by Branch Cash Limit rule
📌 From customer's registered bank accounts
📌 If Yes: NACH sanction letter generated. Bank mandate registered.
📌 System auto-captures. Stored for field audit verification.
đŸ‘Ĩ Co-Applicant Details (Optional)
📌 Added to primary income for FOIR calculation
🤝 Guarantor Details (If Required by Scheme)
Rule: A member acting as Guarantor CANNOT take a new loan until the guaranteed loan is closed. Enforce this check at application stage. Guarantor CIBIL must also be checked.
📌 Must be an existing KYC-approved customer in the system
📎 Loan Application Documents
📌 Scanned physical form OR e-signed digital form
📌 Salary slip / bank statement / ITR
đŸĨ‡

Form 5: Gold Loan – Extra Fields

Visible ONLY when Scheme Type = Gold Loan | Tables: tbl_gold_loan, tbl_ornaments
🔧 Dev Note: These fields appear as an additional section in the Loan Application when scheme type = Gold Loan. Locker & Packet management stored in tbl_inventory_locker. System auto-prints: Pledge Receipt and Gold Tag Slip after saving. Transfer between branches must be logged in audit trail.
📌 From scheme config. Editable with approval. Controls max loan amount.
📌 From Locker Inventory. Status changes to OCCUPIED on save.
📌 Auto-generated. Tagged on the physical gold packet.
📌 Printed on Pledge Receipt given to customer.
📌 Today's market rate. Used in: Eligible Value calculation. Update daily.
📌 Recorded for audit. Appraiser signature on pledge receipt.
💍 Ornament Entry (Add Each Ornament Separately)
Ornament Type Gross Wt (g) * Stone Wt (g) Net Wt (g) * Purity (Karat) * Rate/g (₹) * Elig. Wt Deduction (%) Assessed Value (₹) *
📐 Auto-Calculation Formulas (System Computes These): Net Weight = Gross Weight − Stone Weight
Eligible Weight = Net Weight × (1 − Deduction% / 100)
Assessed Value = Eligible Weight × Rate per gram
Total Eligible Loan Amount = Sum of all Assessed Values × LTV%
✅

Form 6: Eligibility Check & Approval Workflow

System → Auto-validation → Approval Chain | Loan Officer → Branch Manager → HO Credit
🔧 Dev Note: Eligibility is auto-calculated on submission. Display result as ELIGIBLE/NOT_ELIGIBLE with reason. Approval workflow based on Maker-Checker config. After Branch Manager approval → HO Credit approval (if required by amount/scheme). After all approvals: Sanction Letter auto-generated. Loan Account Number created. EMI Schedule generated in tbl_emi_schedule.
📌 Fixed Obligation to Income Ratio = Total EMI Outgo / Monthly Income × 100
📌 Grade D = auto-reject recommendation
📌 Branch Manager can sanction lower amount if required
📌 Date of sanction. EMI schedule starts from disbursement date.
📁 File 2 of 4 — NBFC LMS Documentation Forms  |  âžĄī¸ Continue to File 3: EMI Collection, Overdue / NPA & Accounting Forms