The revenue recognition engine built for the messy reality of SaaS contracts โ multi-element arrangements, milestone billing, contract modifications, and period close, all handled with auditor-ready precision.
Allocates contract value across performance obligations using standalone selling price โ the foundation of compliant multi-element arrangements.
Distinguishes prospective vs cumulative catch-up treatment automatically based on the nature of the contract change.
Multi-milestone POs are recognised obligation-by-obligation as work is completed โ never booked all upfront.
An auto-updating schedule shows recognized vs deferred revenue at any point in time, for any contract or cohort.
| Scenario | Standard treatment |
|---|---|
| Multi-element arrangements | SSP-based allocation across performance obligations |
| Contract modifications | Prospective vs cumulative catch-up, determined automatically |
| Milestone billing | Recognition tied to performance completion, not invoice date |
| Variable consideration | Constrained estimate with quarterly true-up |
| Material rights | Identified in the contract and allocated separately |
Entries below the materiality threshold (typically under 10% of period revenue) post directly to the current period โ no friction for small adjustments.
Borderline entries split between current and prior period, with CFO visibility but no blocking approval.
Material entries trigger prior-period reopening, requiring CFO and Controller sign-off before the books move.
Only Path C checks whether the prior period's GSTR-1 has already been filed. Paths A and B never trigger this check, because the materiality threshold means they can't create a compliance conflict.
| Path | Materiality | Approval required | GSTR-1 check |
|---|---|---|---|
| A | < 10% of period revenue | None | No |
| B | Borderline | CFO notified | No |
| C | > 10% of period revenue | CFO + Controller | Yes โ only if prior period GSTR-1 already filed |
The RBI reference rate is locked at the invoice date for GST compliance, and stored permanently against that document.
Monetary balances are remeasured at the period-end spot rate automatically โ no manual FX journal entries.
Realized and unrealized FX gain/loss broken out by customer and currency, ready for your finance review.
INR statutory books are maintained alongside functional currency reporting, side by side.
Revenue continues to be recognised through the original contract end date, even after the customer has cancelled.
Revenue recognition stops at the termination date, and a credit note is issued for the unused period.
Scans the contract for no-refund clauses and suggests the correct view โ the CFO always makes the final call, logged with name and timestamp.
Module removal from a bundle triggers SSP reallocation across the remaining modules automatically.
| Scenario | Treatment |
|---|---|
| Full churn, no refund | Revenue continues to original contract end date |
| Full churn, with refund | Revenue stops at termination date, credit note issued |
| Partial seat reduction | Recorded in a separate contraction ARR bucket |
| Module removal from bundle | SSP reallocation across remaining modules |
| Mid-term downgrade | Pro-rated recognition adjustment from the effective date |
| Non-renewal | ARR decrements on the actual contract end date |
Auto-classifies every recognition catch-up into Path A, B, or C, checks GSTR-1 filed-return status before reopening a closed period, and routes for CFO/Controller approval where required.
Continuously compares recognized revenue against contract schedules and FX-adjusted forecasts, surfacing anomalies days before month-end instead of during the audit.
20 minutes. Your actual data. No generic demo.