Three billing operations that finance teams encounter regularly in KEBS are: validating the data on a YTB (Yet to Bill) milestone before raising a billing advice, understanding the difference between an Accrued milestone and a Billed one, and reverting a milestone back to YTB when a billing advice has been raised in error. This article covers all three in detail, and introduces the milestone action buttons, the billing advice detail screen, and the Advance and Revert controls that manage milestone progression.
Milestone Statuses: A Complete Reference
Give finance and project teams a shared vocabulary for milestone status so that every member of the team knows at a glance whether a milestone needs action, is awaiting payment, or has already been settled.
Each milestone in the Billing tab carries a status badge that reflects exactly where it sits in the billing lifecycle. The status is always shown beneath the milestone name alongside the billing advice icon. Understanding what each status means tells you both what has happened and what action is available next.
Not yet due
The milestone period has not started or delivery is still in progress. No billing action is available yet.
Yet to Bill
The milestone period has ended and delivery is complete. A billing advice can now be raised. This is the action trigger status for finance teams.
Revenue accrued
A billing advice has been raised and revenue has been recognised, but the invoice has not yet been formally sent or recorded as Billed.
Invoice raised
A billing advice has been approved, an invoice has been generated, and the amount has moved into Account Receivable pending client payment.
Advanced billing
The milestone has been billed before its scheduled date, typically to align with a client’s advance payment requirement or a contractual pre-billing clause.
Milestones move forward through statuses automatically as billing actions are completed. However, two manual controls allow finance teams to override the default flow: Advance (to bill a future milestone early) and Revert (to undo a billing action and return a milestone to YTB). Both controls appear as buttons on the right side of each milestone card and are only shown when the action is permitted for that milestone’s current state.
The Billing Advice Screen: Validating YTB Data
Prevent billing errors and client disputes by giving finance teams a detailed, resource-level view of the hours and values that make up each billing advice before it is raised, so that the invoice amount is always evidenced and agreed internally before it reaches the client.
Clicking the Billing Advice icon on a YTB milestone opens the Billing Advice screen. This screen has two steps: Billing Advice (step 1, where you validate data) and Invoice Details (step 2, where you complete the invoice information before submission). The step indicator at the top shows which step you are on.
The header bar at the top of the Billing Advice screen provides the financial context for this milestone:
The resource grid below the header lists every associate allocated to the project for this period. Each row represents one associate and contains the following columns:
| Column | What it shows |
|---|---|
| AID | The associate ID of the resource, linking the row to the associate’s KEBS record |
| Name | The associate’s name and role (e.g. AI/ML Engineer, Application Manager) |
| Billable | A flag indicating whether this associate’s time is billable to the client for this milestone period |
| Location | The work location of the associate, which determines the applicable rate card row |
| Timesheet Hrs: Billable | The hours logged by this associate that have been marked as billable in their approved timesheet submissions for this period |
| Timesheet Hrs: Non Billable | The hours logged that are not billable to the client, such as internal meetings or non-project activities |
| Billable Hrs: Allocated | The number of hours this associate was planned to work on the project for this period, as defined in the resource allocation plan |
| Billable Hrs: Actual | The actual hours being used as the basis for billing in this advice. Highlighted in orange when it differs from the Allocated figure, signalling a variance that should be reviewed before submission. |
| Per Hour Rate | The billing rate for this associate’s position, pulled from the rate card. This is the client-facing rate, not the internal cost rate. |
| Value | The billing value for this associate line, calculated as Actual Billable Hours multiplied by Per Hour Rate. The sum of all Value rows equals the Billing Advice Value shown in the header. |
Accrued Milestones: Revenue Recognised Before Invoicing
Enable finance teams to accurately report revenue recognised in a period even when the formal invoice has not yet been raised, ensuring that the project revenue figure in KEBS matches the revenue recognised in the general ledger.
A milestone enters Accrued status when a billing advice has been raised and the revenue has been recognised in the system, but the invoice has not yet been formally issued to the client. This state allows finance teams to record revenue in the correct accounting period (when the work was delivered) independently of when the invoice is physically sent.
The key differences between an Accrued and a Billed milestone are:
| Attribute | Accrued | Billed |
|---|---|---|
| Revenue recognised | Yes | Yes |
| Invoice formally raised | No | Yes |
| Invoice record in Invoices module | No | Yes |
| Appears in Account Receivable | No | Yes |
| Billing Advice Value populated | Yes | Yes |
| Can be reverted to YTB | Yes, via Revert action | Yes, via Revert action (restricted) |
An Accrued milestone advances to Billed status when the finance team completes step 2 (Invoice Details) of the billing advice workflow and formally issues the invoice. Until that step is completed, the milestone sits in Accrued and the billing advice document exists internally in KEBS but has not been transmitted to the client.
Reverting a Milestone to YTB
Give finance teams a controlled mechanism to correct billing advice errors without creating credit notes or voiding invoices in downstream systems, keeping the audit trail clean and the project financial records accurate.
When a billing advice has been raised against a milestone in error, either because the hours data was wrong, the billing advice value was incorrect, or the milestone should not have been billed yet, the Revert action undoes the billing advice and returns the milestone to YTB status. The Revert button appears as the circular arrow icon on the right side of the milestone card when a revert is permitted.
- 1Locate the milestone you need to revert in the Billing tab. It should currently be in Accrued or YTB status with a billing advice already raised.
- 2Click the circular arrow Revert icon on the right side of the milestone card. A confirmation prompt will appear asking you to confirm the action.
- 3Confirm the revert. KEBS removes the billing advice record for this milestone and returns the status to YTB.
- 4The Billing Advice Value on the milestone card is cleared and the Revenue figure in the financial summary bar is reduced accordingly.
- 5The milestone is now available to have a new, corrected billing advice raised against it by clicking the Billing Advice icon again.
Advance Billing and Reading the Financial Summary
Enable finance and project managers to manage non-standard billing timelines, such as early client payments or project accelerations, while maintaining accurate financial summary figures that reflect the true revenue, billed, and receivable position at any point in time.
The Advance button appears on milestones that are scheduled for a future period but are eligible for early billing. It is shown as a blue button on the right of the milestone card. Clicking Advance initiates the same billing advice workflow as a standard YTB milestone, but marks the resulting invoice as an advance billing event. This is reflected in the milestone status badge, which shows Advance rather than Billed or Accrued.
The financial summary bar at the top of the Billing tab is the fastest way to assess the overall billing health of a project. Reading all five metrics together tells a complete story:
| Metric | Current value | What it tells you |
|---|---|---|
| Order Value | USD 299,280.00 | The total contracted value of the engagement. All billing must stay within this ceiling unless a change request has increased the scope. |
| Revenue | USD 146,640.00 | Revenue recognised to date. Increases when milestones move to Accrued or Billed. If this is significantly below the proportional elapsed time of the project, delivery may be behind schedule. |
| Billed Value | USD 140,120.00 | The total amount formally invoiced to the client. Lower than Revenue when some milestones are Accrued but not yet invoiced. |
| Unbilled Revenue | USD 6,520.00 | The gap between Revenue and Billed Value. A positive value means revenue has been recognised but not yet invoiced. A negative value means more has been billed than has been recognised, which can occur with advance billing. |
| Account Receivable | USD 93,720.00 | The total outstanding amount owed by the client across all invoices raised. This is the primary cash collection figure and should be monitored against payment terms to identify overdue invoices. |



