ℹ️
Developer Note: Fields marked with * are MANDATORY and must be validated on both frontend (HTML5 required) and backend. All forms should follow Maker-Checker workflow β€” Maker submits β†’ Checker approves before data is saved to DB. Audit log entry must be created for every Add/Edit/Delete action.
🏒

Form 1: Head Office (HO) Creation

Admin β†’ Organizational Setup β†’ Head Office | Used by: HO Admin Only
πŸ”§ Developer Note: This is the top-most entity in the hierarchy. Only ONE Head Office exists per LMS instance typically. HO ID is the parent for all Regional/Branch data. This form should be accessible only to Super Admin / HO Admin. Add HO_ID as a FK in all downstream tables (Regional, Branch, etc.).
πŸ“Œ Used in: Reports headers, letterheads, all system-generated documents
πŸ“Œ Used in: Auto-generating Branch Codes, Account Numbers, Voucher IDs
πŸ“Œ Used in: Invoices, GST reports, compliance documents
πŸ“Œ Used in: RBI compliance reports (NBS-1, NBS-2), audit documents
πŸ“Œ Used in: Loan Agreement footers, RBI submissions
πŸ“Œ Used in: TDS computation, income tax filings
πŸ“Œ Used in: NOC letters, loan agreements, regulatory filings
πŸ“Œ Used in: Address on official documents
πŸ“Œ Used in: GST state code, regional mapping
πŸ“Œ Used in: Address validation, geo-mapping
πŸ“Œ Used in: SMS gateway config, official communication
πŸ“Œ Used in: Email alerts, scheduled MIS reports, notifications
πŸ“Œ Optional – Used in: Loan Agreement footer
πŸ“Œ Used in: All printed reports, certificates, loan documents
πŸ“Œ Used in: Company profile reports, audit documents
πŸ—ΊοΈ

Form 2: Regional / Zonal Office Creation

Admin β†’ Organizational Setup β†’ Regional Office | Used by: HO Admin | Reporting to HO
πŸ”§ Developer Note: Regional Office is optional as per doc. If not required, a DEFAULT Regional record must be auto-created at time of HO setup. Regional ID is FK in Branch table. Regional_code prefix will be used in Branch code generation. Table: tbl_regional_office
πŸ“Œ Used in: Branch hierarchy display, regional MIS reports
πŸ“Œ Used in: Auto-generating Branch codes (NZ01BR001)
πŸ“Œ Links Region to HO; FK: HO_ID
πŸ“Œ Used in: Regional reports, escalation matrix
πŸ“Œ Used in: Regional reports header
πŸ“Œ Used in: Escalation notifications
πŸ“Œ Used in: MIS email delivery
πŸ“Œ Inactive region: no new branches can be created under it
πŸͺ

Form 3: Branch Office Creation

Admin β†’ Organizational Setup β†’ Branch | Used by: HO Admin / Regional Manager
πŸ”§ Developer Note: Branch is the primary operational unit. All Loans, Customers, Accounts are linked to a Branch. Branch users can access ONLY their branch data. HO users have global access. Branch Code auto-generation: [HO_CODE]+[REGION_CODE]+[SEQ]. Table: tbl_branch. FK in: tbl_member, tbl_loan_account, tbl_transactions.
πŸ“Œ Used in: Branch-level reports, user login identification
πŸ“Œ Used in: Loan Account Numbers, Voucher Numbers, Receipt Numbers
πŸ“Œ FK: Regional_ID β€” defines hierarchy and reporting chain
πŸ“Œ Used in: Bank transfers, NACH mandate setup, payment processing
πŸ“Œ Used in: Approval workflows, escalation matrix
πŸ“Œ Used in: Financial year opening, initial balance entry
πŸ“Œ Used in: Day-closing cash verification, alerts when cash exceeds limit
πŸ“Œ Used in: Opening GL entry, Day Book starting balance
πŸ“Œ Used in: Official letters, loan documents
πŸ“Œ Used in: District-level MIS reports
πŸ“Œ Used in: State-wise portfolio reports
πŸ“Œ Used in: SMS alerts, customer communication
πŸ“Œ Used in: Scheduled MIS email delivery to branch
πŸ‘€

Form 4: User Role Creation

Admin β†’ Role Management | Used by: HO Admin Only
πŸ”§ Developer Note: Roles are templates β€” when a User is created under a Role, all permissions from that Role's template are auto-applied. Roles define Approval Levels (e.g., Branch Manager = Level 2, HO Credit = Level 3). Role ID is FK in User table. Black/White maintenance is also tied to Role β€” only specific roles can see "Black" data.
πŸ“Œ Used in: User assignment, approval-level matrix, access control
πŸ“Œ Default permission template applied based on this type
πŸ“Œ Used in: Loan approval workflow, maker-checker enforcement
πŸ“Œ Transactions above this amount require higher-level approval
πŸ“Œ Black = hidden/special financial entries visible only to authorized roles
πŸ“Œ Internal documentation for developers and administrators
πŸ“‹ Reference: Default Role Templates

πŸ”Ή Loan Officer

  • βœ… Add Loan Application
  • βœ… Edit Customer
  • ❌ Approve Loan
  • ❌ Delete Customer
  • ❌ Reverse Receipt

πŸ”Έ Branch Manager

  • βœ… Approve Loan
  • βœ… Reverse Receipt
  • βœ… View All Branch Reports
  • βœ… Day Closing
  • ❌ Create Loan Product

πŸ”Ί HO Admin

  • βœ… Create Loan Product
  • βœ… Approve High Value Loan
  • βœ… Global Reports
  • βœ… System Config
  • βœ… All Modules
πŸ”

Form 5: Permission Matrix

Admin β†’ Permissions | Map Module Rights to Roles | Used by: HO Admin Only
πŸ”§ Developer Note: Store permissions in tbl_role_permissions table with columns: Role_ID, Module_ID, can_view, can_add, can_edit, can_delete, can_approve, can_export. Load this table at login and cache in session. Every API endpoint must validate these flags before processing. Buttons on UI should be shown/hidden based on this matrix.
Module Name πŸ‘οΈ View βž• Add ✏️ Edit πŸ—‘οΈ Delete βœ… Approve πŸ“€ Export
Customer Onboarding
KYC Management
Loan Application
Loan Approval
Disbursement
EMI Collection
Receipt Management
Overdue / NPA
Accounting / GL
Reports & MIS
Loan Scheme Config
Loan Closure
Audit Trail
System Utilities
Gold Loan – Ornament
MFI / Group Lending
πŸ‘₯

Form 6: User Creation & Branch Mapping

Admin β†’ User Management | Used by: HO Admin / Branch Manager (for branch-level users)
πŸ”§ Developer Note: When User is created, auto-apply Role's permission template. User must be mapped to a Branch β€” this restricts their data access. HO Admin is not branch-restricted. Store hashed passwords only (bcrypt/argon2). Session must contain: User_ID, Branch_ID, Role_ID, Approval_Level, Permissions_JSON. Table: tbl_users.
πŸ“Œ Used in: Audit logs, maker-checker records, report signatures
πŸ“Œ Used in: Salary management, HR module integration
πŸ“Œ Primary login identifier β€” must be unique across system
πŸ“Œ Store only hashed (bcrypt). Force change on first login.
πŸ“Œ Auto-applies permission template for this role
πŸ“Œ User will ONLY see data of this branch
πŸ“Œ Used in: OTP authentication, SMS alerts for approvals
πŸ“Œ Used in: Password reset, scheduled reports delivery
πŸ“Œ Used in: Salary module, employee reports
πŸ“Œ Inactive/Suspended users cannot login; existing data remains
βœ…

Form 7: Maker-Checker Configuration

Admin β†’ System Config β†’ Maker-Checker | Used by: HO Admin Only
πŸ”§ Developer Note: Maker-Checker is configurable per Transaction Type. Store config in tbl_maker_checker_config. When M-C is enabled for a transaction: Maker submits β†’ record saved with status=PENDING β†’ Checker reviews β†’ on Approve, status=APPROVED and actual DB/GL update happens. On Reject, status=REJECTED. All states must be saved in audit log.
Transaction Type Maker-Checker Required? Min Amount for Approval (β‚Ή) Checker Role Level
Loan Application Submission
Loan Disbursement
Receipt / EMI Collection
Manual Journal Entry
Receipt Reversal
Loan Closure / Foreclosure
πŸ“…

Form 8: Financial Year Setup & Control

Admin β†’ Financial Year | Impacts all: Accounting, Reports, Period Locking
πŸ”§ Developer Note: Financial Year is the backbone of all accounting. All GL entries, trial balance, P&L, balance sheet are Financial Year-scoped. Only ONE FY can be ACTIVE at a time. When FY is changed, carry-forward balances are auto-created (Opening Balance entries). Closed FY periods must be locked to prevent modification. Table: tbl_financial_year, tbl_period_lock.
πŸ“Œ Displayed in all reports, GL entries
πŸ“Œ Typically April 1 for Indian companies. All transactions from this date
πŸ“Œ Typically March 31. Transactions after this date go to next FY
πŸ“Œ Only Active FY allows new transactions
πŸ“Œ After freeze: No edit/delete allowed, only view. Prevents data tampering.
πŸ“Œ Used when schemes have "Interest on Tenure End" β€” provisions are made periodically
πŸ“ File 1 of 4 β€” NBFC LMS Documentation Forms  |  ➑️ Continue to File 2: Customer Onboarding & Loan Application Forms

All forms follow Maker-Checker workflow unless configured otherwise β€’ Mandatory fields marked with * β€’ Audit log required for every transaction