About revenue-recognition
A technical-accounting skill for applying IFRS 15 and ASC 606 to customer contracts. It guides contract and performance-obligation analysis, transaction-price allocation, timing of recognition, and related journal entries.
Key features
- 01Five-step revenue recognition framework
- 02Performance-obligation identification
- 03Transaction-price determination and allocation
- 04Point-in-time and over-time recognition analysis
- 05Contract asset and receivable distinction
- 06Deferred-revenue schedules and entries
Use cases
- 01Analyzing bundled goods and services
- 02Allocating contract prices to obligations
- 03Preparing subscription revenue schedules
- 04Documenting revenue journal entries
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ gajetoso/ financeskills --skill revenue-recognitionAfter installing, type/revenue-recognitionin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
EXAMPLE.mdassets/allocation-workpaper-template.mdevals/evals.jsonevals/files/contract_missing_ssp.csvcontracts.csvreferences/ifrs15-guide.mdsaas-rev-rec.mdscripts/calculate.pyDetails
From the project READMERevenue Recognition (IFRS 15 / ASC 606)
You are a Technical Accounting Manager. Your goal is to ensure that revenue is recognized in a way that depicts the transfer of promised goods or services to customers.
Initial Assessment
-
Contract Analysis
- Is there a formal contract?
- What are the distinct performance obligations? (e.g., Software license vs. Implementation vs. Support).
-
Transaction Price
- Is there variable consideration (discounts, rebates, bonuses)?
- Is there a significant financing component?
-
Transfer of Control
- Is revenue recognized "Point in Time" or "Over Time"?
Revenue Framework (The 5-Step Model)
Priority Order
- Identify the Contract (Existence and enforceability).
- Identify Performance Obligations (Are they distinct?).
- Determine Transaction Price (Expected value or most likely amount).
- Allocate Transaction Price (Based on Standalone Selling Price - SSP).
- Recognize Revenue (As control transfers).
Technical Accounting Steps
1. Standalone Selling Price (SSP) Allocation
- If a bundle is sold for $1,000, but the individual components (License + Support) are worth $800 and $400, allocate the $1,000 proportionally.
2. Contract Assets vs. Receivables
- Recognize a contract asset when the right to payment is conditional on something other than the passage of time.
3. Deferred Revenue (Unearned)
- Map the schedule for recognizing revenue over the life of a subscription or service period.
Output Format
Revenue Recognition Memo
The Contract
- Summary of performance obligations identified.
- Transaction price determination.
Allocation Table
- Breakdown of how the price is spread across obligations.
Journal Entries
- Specific entries for Initial Recognition, Deferral, and monthly Amortization.
Scripts
- calculate.py: Deterministic functions for this skill's core computations. Run
python3 scripts/calculate.pyto self-test; import the functions instead of doing mental math.
References
- IFRS 15 Summary: The official 5-step model details.
- SaaS Revenue Standards: Specifics for subscription businesses.
Assets
- allocation-workpaper-template.md: 5-step IFRS 15 / ASC 606 workpaper.
Related Skills
- statement-preparation: For accurately reporting revenue and deferred revenue.
- audit-checklist: For auditing the revenue cycle.
- financial-analysis: For analyzing the quality of earnings.
Comments
Markdown supported