August 2, 2026

The Five-Step Revenue Model & Sales Orders in Business Central - Part 1 of 5

  • IFRS 15
  • Business Central

By Shailesh Apte, Chartered Accountant and Business Central Solution Architect

How IFRS 15's core framework maps to Dynamics 365 Business Central, using Meridian Tech Solutions, a software and hardware reseller, to show multiple performance obligations, SSP allocation, and revenue timing in practice.

“Revenue is the single largest line in most income statements, and IFRS 15 is the most comprehensive revenue standard ever written. Getting it right in Business Central starts with understanding what the standard actually requires.”

IFRS 15 Revenue from Contracts with Customers introduced a single, principles-based five-step model for recognising revenue across all industries and contract types.

This series applies IFRS 15 to Dynamics 365 Business Central across five posts. One contract, TechCo Ltd's £150,000 deal with RetailCo (the case walked through at the D365PPUG UK user group), runs through all five as a common thread. Each post then adds a second, deeper example in a different business context. This first part builds the foundation on Meridian Tech Solutions, a reseller whose software-plus-hardware bundle makes every step of the model concrete.

THE RUNNING CASE

Company: TechCo Ltd (from the D365PPUG stage)

Customer: RetailCo UK Ltd

Contract value: £150,000

Framework: IFRS 15 and UK FRS 102 Section 23

PO

Performance Obligation

Contract Price

Recognition Pattern

Business Central

1

Licence (perpetual, on-prem)

60,000

Point in Time (Day 1)

Sales Order

2

Implementation project

70,000

Over Time (% Completion)

Projects + WIP

3

Support (24 months)

20,000

Over Time (Pro Rata)

Subscription Billing

This example is the thread followed across all five parts. In this part, the detailed five-step walkthrough is carried by Meridian Tech Solutions below, whose bundle includes hardware and makes each step concrete.

DEEPER EXAMPLE

Company: Meridian Tech Solutions

Customer: Albright Manufacturing Ltd

Contract value: £185,000

Framework: IFRS 15 and UK FRS 102 Section 23

PO

Performance Obligation

Quoted £

SSP £

%

Allocated £

Recognition

1

Software licence (perpetual)

100,000

95,000

48.72

90,132

Point in Time

2

Implementation services

55,000

55,000

28.21

52,188

Over Time (% Completion)

3

Hardware (3 servers)

30,000

45,000

23.07

42,680

Point in Time

TOTAL

185,000

195,000

100.00

185,000

* Discount is spread proportionally across all three POs (IFRS 15 paragraphs 76–80), so hardware ends up recognised at more than its quoted price.

The Five-Step Model

IFRS 15 requires revenue to be recognised by applying five sequential steps to every contract with a customer. No step can be skipped. Here is each step and what it means:

1. Identify the contract with the customer

A contract exists when it has commercial substance, both parties have approved it, rights and payment terms are identifiable, and collection is probable. A contract modification (scope or price change) is accounted for separately or as part of the original contract, depending on whether it adds a distinct good or service.

→ Meridian: the signed order form and statement of work together form the contract.

2. Identify the performance obligations

A performance obligation is a promise to transfer a distinct good or service. A good or service is distinct if the customer can benefit from it on its own or with other readily available resources, and it is separately identifiable from other promises in the contract. If bundled items are not distinct, they are combined into a single performance obligation.

→ Meridian's contract has three distinct POs: software licence, implementation, hardware.

3. Determine the transaction price

The transaction price is the amount of consideration the entity expects to receive. It includes fixed amounts and estimates of variable consideration (discounts, rebates, returns, performance bonuses), but excludes amounts collected on behalf of third parties (for example, VAT). Variable consideration is included only to the extent it is highly probable that a significant revenue reversal will not occur.

→ Meridian's contract price is a fixed £185,000.

4. Allocate the transaction price to performance obligations

The transaction price is allocated to each performance obligation in proportion to its standalone selling price (SSP), the price at which the entity would sell the good or service separately. Where observable SSPs are not available, estimation methods are used: adjusted market assessment, expected cost plus margin, or the residual approach (only where SSP is highly variable or uncertain).

→ SSPs: software £95k, implementation £55k, hardware £45k (total £195k).

5. Recognise revenue when (or as) a performance obligation is satisfied

Revenue is recognised when control of the promised good or service transfers to the customer, either at a point in time (most goods) or over time (services where the customer simultaneously receives and consumes the benefit, or where the entity's performance creates an asset controlled by the customer). Over-time recognition requires a reasonable measure of progress.

→ Hardware and licence: point in time. Implementation: over time, on a percentage-of-completion basis.

A NOTE ON FRS 102 SECTION 23

Both case studies in this series are tagged IFRS 15 and UK FRS 102 Section 23 because most mid-market Business Central customers will meet one or the other, and the posting mechanics in BC do not change between them. The frameworks are not identical, though, and the gaps matter more as the series goes on:

  • Section 23 has no explicit five-step model. It reaches a similar answer through recognition criteria based on the transfer of risks and rewards and stage of completion, so the same contract can be analysed correctly under both without the steps lining up one-for-one.

  • There is no residual allocation method and no formal “highly probable” constraint on variable consideration under Section 23; both are judgement calls rather than rule-based tests. This becomes more visible in Post 2, where variable consideration is estimated.

  • Multiple-element arrangements are split by judgement under Section 23 rather than the distinct-good-or-service test in IFRS 15 paragraphs 27–30, so the same bundle could, in principle, be unitised differently.

None of this changes the Business Central configuration shown above. Where it matters is the judgement behind the numbers that go into it, which is why this note sits here rather than being folded into the worked example.

Setting It Up in Business Central: Three Surfaces, One Contract

Business Central has no cross-module SSP-allocation engine, and no single document holds all three obligations. Only the goods belong on a Sales Order (the perpetual licence and the hardware), and they bill at their quoted prices. The implementation service is a Project (Job). The SSP allocation touches none of these documents: it is a recognition-only calculation, posted by journal. What ties the three together is the CONTRACT dimension, not a shared header.

Configure related documents:

1. Sales Order

Sales Order in Business Central, billing the licence and hardware at quoted prices.

Watch out: the allocated amount never goes on the order

The Sales Order bills what the customer agreed: £100,000 for the licence, £30,000 for the hardware. Do not overwrite the unit price with the allocated figure (£90,132 / £42,680); that would invoice the customer for something they never signed.

Allocation is a recognition exercise, not a billing one: the billing lines stay at the quoted prices, and the SSP delta posts by journal to a Balance Sheet contract-control account.

2. Project

Project (Job) in Business Central, tracking the implementation service against the same contract.

The implementation service does not belong on a Sales Order at all. It is set up as a Project (Job) against the same contract, with planning lines and WIP Method = Percentage of Completion. It bills by milestone and recognises revenue over time as hours are posted. (The mechanics of this are the subject of Post 4. Had the contract also carried a support element, that would be a third surface again: a Subscription contract, billed and released monthly, covered in Post 3.)

3. Where the allocation actually lives

The SSP allocation is worked out once, in a revenue-allocation worksheet (or an ISV that stores an IFRS 15 recognition schedule per obligation), never as a field on the Sales Order or the Project. Each module keeps billing at its quoted price; the difference between billed and allocated posts to a Balance Sheet contract-control account by journal, tagged with the CONTRACT dimension.

Business Central is the execution engine; the allocation is the practitioner's overlay. There is no native “Multiple PO Allocation” method or IFRS 15 template that does this for you.

Step-by-Step Posting in Business Central

1. Deposit on signing

On contract signing, Meridian is eligible for 50% of payment, i.e. £92,500 (50% × £185,000). Under IFRS 15, this creates a contract liability: Meridian has received (or is entitled to receive) payment before transferring the goods or services. It is not revenue yet.

Using the standard prepayment invoice for the goods portion (50% of the £130,000 quoted for licence and hardware combined) against the Sales Order creates the following accounting entry:

Account Type

Account Name

Debit (£)

Credit (£)

Customer

Albright Manufacturing Ltd

65,000

General Ledger

Contract Liability

65,000

Configuring the correct accounts and generating a sales invoice (50% of the £55,000 implementation price) from the Project module creates the following accounting entry:

Account Type

Account Name

Debit (£)

Credit (£)

Customer

Albright Manufacturing Ltd

27,500

General Ledger

Contract Liability

27,500

2. Delivery of hardware and licence

When the hardware and licence are delivered, posting the Sales Invoice from the Sales Order creates the following accounting entries:

Account Type

Account Name

Debit (£)

Credit (£)

General Ledger

Contract Liability

65,000

Customer

Albright Manufacturing Ltd

65,000

General Ledger

Revenue – Hardware Sales

30,000

General Ledger

Revenue – Software Licences

100,000

Since there is no native SSP engine in Business Central, an extension needs to be developed; otherwise the following journal needs to be posted manually:

Account Type

Account Name

Debit (£)

Credit (£)

General Ledger

Revenue Allocation Clearing Account

12,680

General Ledger

Revenue – Hardware Sales (42,680 – 30,000)

12,680

General Ledger

Revenue – Software Licences (100,000 – 90,132)

9,868

General Ledger

Revenue Allocation Clearing Account

9,868

3. Implementation services: revenue over time (% completion)

Implementation services of £52,188 are recognised over time using the input method: hours worked as a proportion of total estimated hours (220). As consultants post time to the job in Business Central, revenue is released incrementally as the related WIP is posted.

Account Type

Account Name

Debit (£)

Credit (£)

General Ledger

Job Cost (40% of £40,000 estimated total cost)

16,000

General Ledger

Job Cost Applied

16,000

General Ledger

Contract Liability (40% of £55,000)

22,000

General Ledger

Revenue – Implementation Services

22,000

* The balance of the implementation fee (50%) is invoiced per the milestone schedule agreed with the customer, posted as a sales invoice from the Project: Dr Customer / Cr Contract Liability £27,500.

Additionally, a proportionate journal for release of the Revenue Allocation Clearing balance must be posted:

Account Type

Account Name

Debit (£)

Credit (£)

General Ledger

Revenue – Implementation Services (55,000 – 52,188 = 2,812; 2,812 × 40%)

1,125

General Ledger

Revenue Allocation Clearing Account

1,125

Contract Asset vs Contract Liability

A contract asset arises when Meridian has performed but does not yet have an unconditional right to payment. A contract liability arises when cash (or an unconditional right to it) arrives before the related good or service transfers. Both must be shown separately on the balance sheet.

UP NEXT – POST 2

Service Contracts, Variable Consideration & Customer Prepayments

Vantage Facilities Management signs a 3-year cleaning and maintenance contract with a performance bonus clause. We work through variable consideration estimation, the constraint principle, customer prepayments creating contract liabilities, and how BC Service Contracts reconcile billing schedules that don't align with revenue recognition.

THIS SERIES

Part 1 The Five-Step Revenue Model & Sales Orders in Business Central (this post)

Part 2 Service Contracts, Variable Consideration & Customer Prepayments

Part 3 Subscription Billing & Recognising Revenue Pro Rata Over Time

Part 4 Projects, WIP & Percentage-of-Completion Mechanics

Part 5 coming soon

📝 This post reflects the author's professional views and is for informational purposes only. It does not constitute legal, financial, or accounting advice.