mcpField
R
revenue-recognition

revenue-recognition

github.com/gajetosoOther4348 installsUpdated 4w ago
Repository

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

  1. 01Five-step revenue recognition framework
  2. 02Performance-obligation identification
  3. 03Transaction-price determination and allocation
  4. 04Point-in-time and over-time recognition analysis
  5. 05Contract asset and receivable distinction
  6. 06Deferred-revenue schedules and entries

Use cases

  1. 01Analyzing bundled goods and services
  2. 02Allocating contract prices to obligations
  3. 03Preparing subscription revenue schedules
  4. 04Documenting revenue journal entries

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/gajetoso/financeskills --skill revenue-recognition

After installing, type/revenue-recognitionin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

EXAMPLE.md
assets/
allocation-workpaper-template.md
evals/
evals.json
evals/files/
contract_missing_ssp.csv
contracts.csv
references/
ifrs15-guide.md
saas-rev-rec.md
scripts/
calculate.py

Details

From the project README

Revenue 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

  1. Contract Analysis

    • Is there a formal contract?
    • What are the distinct performance obligations? (e.g., Software license vs. Implementation vs. Support).
  2. Transaction Price

    • Is there variable consideration (discounts, rebates, bonuses)?
    • Is there a significant financing component?
  3. Transfer of Control

    • Is revenue recognized "Point in Time" or "Over Time"?

Revenue Framework (The 5-Step Model)

Priority Order
  1. Identify the Contract (Existence and enforceability).
  2. Identify Performance Obligations (Are they distinct?).
  3. Determine Transaction Price (Expected value or most likely amount).
  4. Allocate Transaction Price (Based on Standalone Selling Price - SSP).
  5. 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.py to self-test; import the functions instead of doing mental math.

References


Assets


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