Skip to main content
Back to overview

Watch one contract become a journal entry.

Fourteen pages of prose, the five ASC 606 steps, and one entry at month end. Here is every stage in between — including the one where it stops and waits for you.

First, it reads the document.

You see the contract’s terms laid out line by line: the term, each thing you sold, the consideration and how it’s billed. The review screen lays them out step by step, so you can check each one against the contract before anything else happens.

How the reading works

Three passes, not one. The first reads the contract and records what it finds. The second writes the ASC 606 determination from those recorded facts, not from the document. Contracts that trip a flag go to a third, more capable pass.

Scanned, image-only PDFs are turned back with a request to run text recognition and retry, rather than guessed at.

Order form · CON-0007

term
12 months
commencement
Effective Date
element
Platform licence
element
Implementation services
consideration
53,000.00 USD
billing
annual, in advance

Illustrative — not a customer contract

Then it works the five steps.

Not a summary of them — the five the standard actually specifies, in order, each producing something you can read and disagree with.

Step four is the one people assume is automatic. It isn’t: the proposed split of the price is checked independently, and if it’s off by more than five cents you get a question to answer, not a silent fix.

  1. Step 1: Identify the contract

    CON-0007 · executed · 12-month term

  2. Step 2: Identify the performance obligations

    2 obligations · 1 over time, 1 point in time

  3. Step 3: Determine the transaction price

    53,000.00 USD · no variable component

  4. Step 4: Allocate the price

    48,000.00 · 5,000.00 · residual ties to 0.00

  5. Step 5: Recognize as obligations are satisfied

    12 monthly periods · 4,000.00 / mo

Then it stops.

Nothing has posted. Nothing has been created in your ledger, because at this point no contract record exists at all — what exists is a proposal: the determination, the judgments behind it, the paragraphs it turned on, and the alternative it weighed and set aside.

It waits there for a person with the authority to approve it. Approve it, change it and certify your version, or reject it with a reason that stays on the record. Only then does a contract exist.

The accounting judgment stays yours. The engine does the arithmetic and keeps the evidence.

Determination · draftAwaiting your sign-off
Proposed treatment
2 obligations · ratable + point in time
Judgments raised
1 · allocation within tolerance
Citations attached
606-10-25 · 606-10-32 · 606-10-55
Posted to your ledger
nothing

Now it’s a schedule.

Twelve periods, derived from the treatment you approved. The waterfall is recomputed from the contract and its approved template every time you open it — there is no stored number to drift out of agreement with the contract.

The rounding residual lands on the last period, so the schedule ties to the transaction price exactly rather than to within a cent.

Twelve equal monthly recognition periods of 4,000.00 US dollars for the platform licence, plus 5,000.00 recognised at go-live for implementation.

Platform licence
48,000.00
over time
Implementation
5,000.00
at go-live
Residual
0.00
ties exactly

One entry, and a person who posts it.

At month end the engine drafts the recognition entry from the approved treatment and queues it for review. Approving it does not send it anywhere.

By default the month posts as a single consolidated entry, and someone holding posting rights — re-authenticated — is the one who posts it. Two people, two moments, both on the record.

  • Prepared for QuickBooks, with your chart-of-accounts codes resolved onto the lines
  • A retry never posts the same entry twice
  • Posted entries are checked daily, and any difference is reported to you, never silently repaired
Journal entry · draftAwaiting approval
Draft monthly recognition entry: debit deferred revenue 4,000.00, credit revenue 4,000.00.
AccountDebitCredit
Deferred revenue4,000.00—
Revenue — subscription—4,000.00

Illustrative. The consolidated month pools one deferred-revenue debit against a revenue line per contract.

Pick a month. Trace it to the ledger.

Illustrative worked example · CON-0007

Monthly revenue · Acme Cloud

May 2026 · $4,000.00

May 2026: $4,000 of platform revenue. Implementation was recognized in March.

01 · Contract

CON-0007

Acme Cloud · $53,000 · signed order form · 2 performance obligations

02 · Approval

APR-118

Treatment V1 · controller approved · rule signature verified

03 · Schedule

SCH-0007

Row 03 / 12 · $4,000.00 · deterministic execution

04 · Journal entry

JE-1074

DR deferred revenue · CR revenue · $4,000.00

05 · QuickBooks

QBO JE #3292

Posted after approval · linked to JE-1074

Recognition your auditor can retrace.

Drafted treatments, with their reasoning

Every proposal carries ASC citations, a confidence read, and the alternative it weighed — persisted as a judgment record before anything executes.

Penny-perfect allocation

All money math runs in decimal arithmetic, and the rounding residual lands on the last element — so schedule totals tie to the transaction price exactly.

Contract modification math

Upgrades, downgrades, and cancellations recalculate through the same review. You see the reworked schedule before it takes effect, never after.

The rule you approved is the rule that runs

Each recognition rule runs exactly as you approved it. A change becomes a new version for you to approve; nothing is edited in place.

What you approve is what ships

If the analysis changes while you're reading it, approval stops and asks you to review the new version. You can't approve one analysis and ship another.

Period locking

Once you hard-close a period, it can't be edited. Corrections land in the next open period as reversals, the way your auditor expects.

Start with one signed contract.

See the treatment, the waterfall, and the prepared entry before you connect your GL — sample contracts included.