Skip to main content
These 9 principles are core to how Fincelo works and why it works that way. Every module and every agent is built to honour them. Principle 1: Invoice date and revenue recognition date are always independent. Invoice date = commercial/legal fact (billing trigger event). Revenue recognition date = accounting decision (when service delivered/CFO approved). Principle 2: Fincelo never auto-decides on material financial matters. The CFO always makes the final call on: View A vs View B, period close path, expansion billing option, ratchet resolution, advance billing config, FX rate. Fincelo presents options with analysis. It never chooses. Every decision logged with name + timestamp. Principle 3: ARR and revenue recognition are independent events. ARR decrements on actual termination date. Revenue recognition follows contract terms and View A/B. Tracked in separate tables. Separate P&L items. Principle 4: Proforma is never a Tax Invoice. A billing intent raised before the trigger is a Proforma. No number, no date, no GST. Converts to Tax Invoice when the trigger occurs. In-place conversion — no cancellation, no duplicate. Principle 5: Self-improving AI without retraining. Corrections become few-shot examples. Prompt augmentation only. Calibrated confidence replaces raw AI certainty. No ML pipeline. Principle 6: Contract beats CRM for billing terms. CRM beats Fincelo for pipeline. When they conflict: contract governs commercial and billing terms. CRM governs deal stage and sales pipeline. Neither overwrites the other’s domain. Principle 7: KYC approval triggers automatic module wiring. One approval fires 11 connections simultaneously. GSTIN → GST treatment. PAN → TDS tracking. PO flag → invoice hold engine. Finance teams should never manually configure the same data in multiple places. Principle 8: Agents amplify the CFO’s capacity — they never replace judgement. Every agent action above a material threshold requires human approval. The CFO configures the thresholds. Agents operate within those bounds. Every action is logged, auditable, and reversible where technically possible. Principle 9: One event bus, no direct module coupling. Modules communicate via domain_events. No module calls another module directly. This means any module can be upgraded, replaced, or extended without breaking others. The orchestration layer routes all events — it is the single source of truth for what happened and what should happen next.