Skip to main content

Revenue Flow Map

Complete guide to revenue recognition timing, deferred revenue, and compliance with ASC 606 in NetSuite.


Revenue Recognition Overview

REVENUE RECOGNITION CONCEPT
═══════════════════════════════════════════════════════════════════════════════════════════════════

WHEN TO RECOGNIZE REVENUE?

Point in Time Over Time
───────────── ─────────
┌─────────────────────┐ ┌─────────────────────┐
│ │ │ │
│ Product Sale │ │ Subscription │
│ ───────────── │ │ ───────────── │
│ │ │ │
│ Control transfers │ │ Service delivered │
│ at delivery │ │ over contract term │
│ │ │ │
│ Revenue: 100% │ │ Revenue: Monthly │
│ at shipment │ │ recognition │
│ │ │ │
└─────────────────────┘ └─────────────────────┘

┌─────────────────────┐ ┌─────────────────────┐
│ │ │ │
│ License (Perpetual)│ │ License (Term) │
│ ───────────────── │ │ ───────────── │
│ │ │ │
│ Right to use │ │ Right to access │
│ granted at sale │ │ over term │
│ │ │ │
│ Revenue: 100% │ │ Revenue: Ratably │
│ at delivery │ │ over term │
│ │ │ │
└─────────────────────┘ └─────────────────────┘

Master Revenue Flow Diagram

NETSUITE REVENUE FLOW
═══════════════════════════════════════════════════════════════════════════════════════════════════

INVOICE CREATED


┌─────────────────────────────────────────┐
│ │
│ REVENUE ARRANGEMENT │
│ (Revenue Element Created) │
│ │
└────────────────────┬────────────────────┘

┌────────────────────┼────────────────────┐
│ │ │
▼ ▼ ▼
┌───────────────────┐ ┌───────────────────┐ ┌───────────────────┐
│ POINT IN TIME │ │ OVER TIME │ │ DEFERRED │
│ │ │ (Ratable) │ │ (Event-Based) │
└─────────┬─────────┘ └─────────┬─────────┘ └─────────┬─────────┘
│ │ │
▼ ▼ ▼
┌───────────────────┐ ┌───────────────────┐ ┌───────────────────┐
│ │ │ Month 1: 1/12 │ │ │
│ 100% Revenue │ │ Month 2: 2/12 │ │ Awaiting Event │
│ Recognized │ │ Month 3: 3/12 │ │ (Milestone, │
│ Immediately │ │ ... │ │ Acceptance, │
│ │ │ Month 12: 12/12 │ │ Delivery) │
│ │ │ │ │ │
└───────────────────┘ └───────────────────┘ └─────────┬─────────┘


┌───────────────────┐
│ Event Occurs │
│ → Revenue │
│ Recognized │
└───────────────────┘

Revenue Recognition Methods

Point in Time Recognition

POINT IN TIME REVENUE
═══════════════════════════════════════════════════════════════════════════════

Scenario: Product sale with delivery

Invoice Date: January 15, 2024
Amount: $10,000
Item: Hardware Equipment

Timeline:
┌─────────────────────────────────────────────────────────────────────────────┐
│ │
│ Jan 15 Jan 20 │
│ │ │ │
│ ▼ ▼ │
│ Invoice Delivery │
│ Created Complete │
│ │ │ │
│ │ └──────▶ Revenue Recognized: $10,000 │
│ │ │
│ └──────▶ Deferred Revenue: $10,000 (until delivery) │
│ │
└─────────────────────────────────────────────────────────────────────────────┘

GL at Invoice:
┌────────────────────────────────────┬────────────┬────────────┐
│ Account │ Debit │ Credit │
├────────────────────────────────────┼────────────┼────────────┤
│ Accounts Receivable │ $10,000.00 │ │
│ Deferred Revenue │ │ $10,000.00 │
└────────────────────────────────────┴────────────┴────────────┘

GL at Delivery (Revenue Recognition):
┌────────────────────────────────────┬────────────┬────────────┐
│ Account │ Debit │ Credit │
├────────────────────────────────────┼────────────┼────────────┤
│ Deferred Revenue │ $10,000.00 │ │
│ Sales Revenue │ │ $10,000.00 │
└────────────────────────────────────┴────────────┴────────────┘

Over Time Recognition (Ratable)

RATABLE REVENUE RECOGNITION
═══════════════════════════════════════════════════════════════════════════════

Scenario: 12-month software subscription

Invoice Date: January 1, 2024
Amount: $12,000
Term: January 1 - December 31, 2024

Recognition Schedule:
┌─────────────────────────────────────────────────────────────────────────────┐
│ │
│ Month Revenue Deferred Cumulative │
│ Recognized Remaining Recognized │
│ ───────────────────────────────────────────────── │
│ Jan 1 $1,000 $11,000 $1,000 │
│ Feb 1 $1,000 $10,000 $2,000 │
│ Mar 1 $1,000 $9,000 $3,000 │
│ Apr 1 $1,000 $8,000 $4,000 │
│ May 1 $1,000 $7,000 $5,000 │
│ Jun 1 $1,000 $6,000 $6,000 │
│ Jul 1 $1,000 $5,000 $7,000 │
│ Aug 1 $1,000 $4,000 $8,000 │
│ Sep 1 $1,000 $3,000 $9,000 │
│ Oct 1 $1,000 $2,000 $10,000 │
│ Nov 1 $1,000 $1,000 $11,000 │
│ Dec 1 $1,000 $0 $12,000 │
│ │
└─────────────────────────────────────────────────────────────────────────────┘

Monthly Revenue Recognition Entry:
┌────────────────────────────────────┬────────────┬────────────┐
│ Account │ Debit │ Credit │
├────────────────────────────────────┼────────────┼────────────┤
│ Deferred Revenue │ $1,000.00 │ │
│ Subscription Revenue │ │ $1,000.00 │
└────────────────────────────────────┴────────────┴────────────┘

Percentage of Completion

PERCENTAGE OF COMPLETION REVENUE
═══════════════════════════════════════════════════════════════════════════════

Scenario: Fixed-price project contract

Contract Amount: $100,000
Estimated Costs: $70,000
Project Duration: 6 months

Progress-Based Recognition:
┌─────────────────────────────────────────────────────────────────────────────┐
│ │
│ Month Costs % Revenue Cumulative Deferred │
│ Incurred Complete Recognized Revenue Balance │
│ ──────────────────────────────────────────────────────────────── │
│ Month 1 $10,000 14.3% $14,300 $14,300 $85,700 │
│ Month 2 $15,000 35.7% $21,400 $35,700 $64,300 │
│ Month 3 $12,000 52.8% $17,100 $52,800 $47,200 │
│ Month 4 $18,000 78.5% $25,700 $78,500 $21,500 │
│ Month 5 $10,000 92.8% $14,300 $92,800 $7,200 │
│ Month 6 $5,000 100% $7,200 $100,000 $0 │
│ ──────────────────────────────────────────────────────────────── │
│ TOTAL $70,000 100% $100,000 │
│ │
│ Formula: Revenue = (Costs Incurred / Total Est. Costs) × Contract Value │
│ │
└─────────────────────────────────────────────────────────────────────────────┘

Multiple Element Arrangements

Bundled Products/Services

MULTIPLE ELEMENT ARRANGEMENT (ASC 606)
═══════════════════════════════════════════════════════════════════════════════

Scenario: Software bundle with implementation and support

Contract Total: $50,000

┌─────────────────────────────────────────────────────────────────────────────┐
│ PERFORMANCE OBLIGATIONS │
│ ──────────────────────── │
│ │
│ Element Standalone Allocated Recognition │
│ Selling Revenue Method │
│ Price │
│ ──────────────────────────────────────────────────────────────── │
│ Software License $30,000 $27,273 Point in time │
│ Implementation $15,000 $13,636 Over time (project) │
│ 1-Year Support $10,000 $9,091 Over time (12 months) │
│ ──────────────────────────────────────────────────────────────── │
│ TOTAL SSP $55,000 $50,000 │
│ │
│ Allocation: (Element SSP / Total SSP) × Contract Price │
│ │
└─────────────────────────────────────────────────────────────────────────────┘

Revenue Schedule:
┌─────────────────────────────────────────────────────────────────────────────┐
│ │
│ Month License Implementation Support Total │
│ ──────────────────────────────────────────────────────── │
│ Month 1 $27,273 $4,545 $758 $32,576 │
│ Month 2 - $4,545 $758 $5,303 │
│ Month 3 - $4,546 $758 $5,304 │
│ Month 4 - - $758 $758 │
│ ... - - $758 $758 │
│ Month 12 - - $757 $757 │
│ ──────────────────────────────────────────────────────── │
│ TOTAL $27,273 $13,636 $9,091 $50,000 │
│ │
└─────────────────────────────────────────────────────────────────────────────┘

Deferred Revenue

Deferred Revenue Lifecycle

DEFERRED REVENUE LIFECYCLE
═══════════════════════════════════════════════════════════════════════════════

INVOICE CREATED


┌───────────────────────┐
│ DEFERRED REVENUE │
│ (Liability) │
│ │
│ Balance: $12,000 │
└───────────┬───────────┘

┌────────────────┼────────────────┐
│ │ │
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ Period 1│ │ Period 2│ │ Period N│
│ $1,000 │ │ $1,000 │ ... │ $1,000 │
└────┬────┘ └────┬────┘ └────┬────┘
│ │ │
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ Revenue │ │ Revenue │ │ Revenue │
│ Account │ │ Account │ │ Account │
└─────────┘ └─────────┘ └─────────┘


Balance Sheet View:
┌─────────────────────────────────────────────────────────────────────────────┐
│ │
│ DEFERRED REVENUE │
│ ───────────────── │
│ │
│ Current Portion (due within 12 months): $8,000 │
│ Long-term Portion (beyond 12 months): $4,000 │
│ │
│ Example: 2-year contract billed upfront │
│ Year 1 (current): $8,000 to be recognized │
│ Year 2 (long-term): $4,000 to be recognized │
│ │
└─────────────────────────────────────────────────────────────────────────────┘

Common Deferred Revenue Scenarios

ScenarioInitial EntryRecognition Trigger
Annual subscriptionInvoice → DeferredMonthly over term
Prepaid maintenanceInvoice → DeferredMonthly over term
Gift card saleCash → DeferredRedemption
Customer depositCash → DeferredDelivery/Service
Milestone projectInvoice → DeferredMilestone completion
Magazine subscriptionInvoice → DeferredIssue delivery

Revenue Recognition Rules

Item-Level Configuration

ITEM REVENUE RECOGNITION SETUP
═══════════════════════════════════════════════════════════════════════════════

Item Record Configuration:
┌─────────────────────────────────────────────────────────────────────────────┐
│ │
│ Item: Annual Software Subscription │
│ ────────────────────────────────── │
│ │
│ Revenue Recognition: │
│ ├── Revenue Recognition Rule: Ratable Over Term │
│ ├── Revenue Recognition Template: [Link to template] │
│ ├── Deferred Revenue Account: 2400 Deferred Revenue │
│ ├── Revenue Account: 4100 Subscription Revenue │
│ └── Recognition Start: Contract Start Date │
│ │
│ Revenue Recognition Template Settings: │
│ ├── Recognition Period: Contract Term (from item) │
│ ├── Period Frequency: Monthly │
│ ├── Recognition Method: Straight Line │
│ └── Calculation: Days in Period / Total Days │
│ │
└─────────────────────────────────────────────────────────────────────────────┘

Recognition Methods

MethodCalculationUse Case
Straight LineEqual amounts per periodSubscriptions
Exact DaysDaily prorationPartial periods
Percentage% of completionProjects
MilestoneEvent-basedDeliverables
ManualUser-specifiedCustom scenarios

Advanced Revenue Management (ARM)

Revenue Arrangement

REVENUE ARRANGEMENT STRUCTURE
═══════════════════════════════════════════════════════════════════════════════

Source Transaction: Invoice #INV-001
┌─────────────────────────────────────────────────────────────────────────────┐
│ │
│ REVENUE ARRANGEMENT #RA-001 │
│ ──────────────────────────── │
│ │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ Revenue Element 1: Software License │ │
│ │ ───────────────────────────────────── │ │
│ │ Standalone Selling Price: $30,000 │ │
│ │ Allocated Amount: $27,273 │ │
│ │ Recognition: Point in Time │ │
│ │ Status: Recognized ($27,273) │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ Revenue Element 2: Implementation Services │ │
│ │ ───────────────────────────────────────── │ │
│ │ Standalone Selling Price: $15,000 │ │
│ │ Allocated Amount: $13,636 │ │
│ │ Recognition: Over Time (3 months) │ │
│ │ Status: Partially Recognized ($9,091 of $13,636) │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ Revenue Element 3: Annual Support │ │
│ │ ───────────────────────────────── │ │
│ │ Standalone Selling Price: $10,000 │ │
│ │ Allocated Amount: $9,091 │ │
│ │ Recognition: Over Time (12 months) │ │
│ │ Status: Partially Recognized ($2,273 of $9,091) │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘

Fair Value Allocation

FAIR VALUE ALLOCATION (SSP)
═══════════════════════════════════════════════════════════════════════════════

Step 1: Identify Standalone Selling Prices (SSP)
┌─────────────────────────────────────────────────────────────────────────────┐
│ Element SSP Source SSP Amount │
│ ────────────────────────────────────────────────────────── │
│ Software License Price List $30,000 │
│ Implementation Time & Materials $15,000 │
│ Support Renewal Rate $10,000 │
│ ────────────────────────────────────────────────────────── │
│ Total SSP $55,000 │
└─────────────────────────────────────────────────────────────────────────────┘

Step 2: Allocate Contract Price to Elements
┌─────────────────────────────────────────────────────────────────────────────┐
│ Contract Price: $50,000 │
│ │
│ Element SSP SSP % Allocation │
│ ────────────────────────────────────────────────────────── │
│ Software License $30,000 54.55% $27,273 │
│ Implementation $15,000 27.27% $13,636 │
│ Support $10,000 18.18% $9,091 │
│ ────────────────────────────────────────────────────────── │
│ TOTAL $55,000 100% $50,000 │
│ │
│ Note: Discount allocated proportionally across all elements │
└─────────────────────────────────────────────────────────────────────────────┘

Revenue Reports

Key Reports

ReportPurposeShows
Revenue Recognition SchedulePlanned recognitionFuture rev rec by period
Deferred Revenue by CustomerLiability detailDeferred balances
Revenue Arrangement SummaryARM overviewElements and status
Revenue vs BillingComparisonBilled vs recognized
Recognized RevenueActual recognitionWhat's been recognized

Revenue Query

-- Invoices with revenue details
SELECT
t.tranid,
t.trandate,
c.entityid AS customer,
i.itemid AS item,
tl.quantity,
tl.rate,
tl.netamount
FROM
transaction t
JOIN
transactionline tl ON t.id = tl.transaction
LEFT JOIN
customer c ON t.entity = c.id
LEFT JOIN
item i ON tl.item = i.id
WHERE
t.type = 'CustInvc'
AND tl.mainline = 'F'
AND tl.item IS NOT NULL
AND t.trandate >= '2024-01-01'
ORDER BY
t.trandate DESC

-- Account balances for deferred revenue accounts
SELECT
a.acctnumber,
a.accountsearchdisplayname AS account_name,
SUM(tal.amount) AS balance
FROM
transactionaccountingline tal
JOIN
account a ON tal.account = a.id
WHERE
a.accttype = 'DeferRevenue'
GROUP BY
a.acctnumber,
a.accountsearchdisplayname
HAVING
SUM(tal.amount) <> 0

Best Practices

Setup

PracticeBenefit
Define SSP methodologyConsistent allocation
Create rev rec templatesReusable configurations
Map items to templatesAutomated recognition
Separate deferred accountsClear visibility

Operations

PracticeBenefit
Run rev rec monthlyTimely recognition
Review arrangementsCatch issues early
Reconcile deferred balanceAccurate liability
Document judgmentsAudit support

Compliance

PracticeBenefit
Follow ASC 606 frameworkGAAP compliance
Maintain SSP evidenceDefensible allocation
Track modificationsProper accounting
Periodic policy reviewStay current

Next Steps