Skip to main content

Performance Obligations (POB) & SSP Allocation Engine

||View as Markdown|

Performance Obligations (POB) & SSP Allocation Engine

Quick Summary: GAAPx automates ASC 606 Step 2 (Identifying Performance Obligations) and Step 4 (Allocating Transaction Price via Standalone Selling Price). The engine evaluates whether software licenses, professional services, premium support, and usage components represent distinct deliverables, calculates the relative SSP allocation across all contract elements, and automatically distributes bundle discounts to prevent deferred revenue distortions.


The SSP Allocation Flow​

When a sales agreement bundles multiple SKUs at a non-standard discount, GAAPx calculates the relative fair value allocation instantaneously:

flowchart TD
Contract["Signed Contract: $200,000 Total Stated Price\n• SaaS Platform: Stated $160,000 (SSP: $180,000)\n• Professional Services: Stated $40,000 (SSP: $60,000)"]

Calc["GAAPx SSP Engine Calculation\nTotal SSP Fair Value = $180k + $60k = $240,000\nBundle Discount = 16.67% ($40,000 Total Discount)"]

POB1["POB 1: SaaS License ($180k / $240k) * $200k = $150,000\nAmortized Over 12 Months: $12,500 / Month"]
POB2["POB 2: Services ($60k / $240k) * $200k = $50,000\nRecognized Upon Milestone Completion"]

Contract --> Calc
Calc --> POB1
Calc --> POB2

3 Methods for Establishing Standalone Selling Price (SSP)​

GAAPx supports all three standard ASC 606 / IFRS 15 methodologies for establishing SSP price books:

MethodologyGAAP StandardWhen to Use in SaaS
1. Adjusted Market AssessmentASC 606-10-32-33Used for standardized core platform tiers and add-on seats based on historical standalone sales data.
2. Expected Cost Plus MarginASC 606-10-32-34Used for custom integrations, data migration services, and dedicated technical account managers (TAM).
3. Residual ApproachASC 606-10-32-35Used only when standalone prices are highly variable or unestablished (subject to strict auditor review).

POB Recognition Rule Templates​

Assign custom revenue recognition logic to each Performance Obligation category:

{
"pob_template_id": "pob_tpl_saas_annual",
"name": "Annual SaaS Subscription",
"distinct_test": "PASSED",
"revenue_pattern": "RATABLE_DAILY",
"amortization_method": "ACTUAL_DAYS_IN_MONTH",
"auto_ssp_carveout": true,
"journal_mapping": {
"deferred_rev_account": "2200 - Deferred Revenue",
"revenue_account": "4000 - Subscription SaaS Revenue"
}
}
  • Ratable Over Time (Daily / Monthly): Standard for cloud platform access and ongoing maintenance.
  • Point-in-Time (Milestone Delivery): Standard for one-off deployments, data exports, or hardware shipments.
  • Percentage of Completion: Standard for multi-month custom engineering projects based on logged hours vs budget.