An agency should not forecast a project invoice from its due date alone when billing depends on milestone completion, client acceptance, purchase-order details, or an internal approver. Treat each approval step as evidence with an owner and status. Then assign collection timing only after the invoice and its operational prerequisites are visible together.

Intuit explains that QuickBooks progress invoicing can connect partial invoices to an accepted estimate and track related progress invoices. That accounting link is useful, but an agency still needs a handoff from account and project teams when acceptance or documentation affects the customer's payment process.

Separate four moments

Agency teams often blur four different events:

  1. **Work complete:** The internal team believes the milestone or deliverable is finished.
  2. **Client accepted:** The customer has provided the approval required by the agreement or operating process.
  3. **Invoice accepted:** The invoice entered the customer's payable workflow with the required references.
  4. **Payment expected:** Finance has evidence supporting a collection date or week.

These moments can happen on different dates. Recording only “invoiced” hides the reason cash timing may still be uncertain.

Build an approval-blocker record

For every material progress or milestone invoice, add an operational record beside the ledger facts:

  • Project and invoice identifier
  • Milestone or billing basis
  • Internal completion date and owner
  • Client acceptance requirement and observed status
  • Purchase-order, vendor-portal, or supporting-document requirement
  • Invoice submission date and accepted destination
  • Customer approver or process owner, when appropriately known
  • Dispute or scope-change flag
  • Next internal action, owner, and review date
  • Forecast week and evidence note

Do not place sensitive customer communications or unnecessary personal data in a public-facing artifact. The operating tracker should contain only what the authorized finance team needs.

Turn blockers into internal actions

Use a small status set instead of long notes:

  • **Ready:** Required completion and approval evidence is present.
  • **Submitted:** Invoice is in the customer's process, but acceptance or scheduling is not confirmed.
  • **Blocked:** A named requirement is missing or disputed.
  • **Unclear:** The team cannot identify the current step or owner.
  • **Resolved:** The blocker was cleared; record the date and evidence.

Blocked and unclear invoices should remain visible in the action queue. They should not automatically inherit a forecast week from the contractual due date. The invoice assumptions template shows how to keep uncertain timing outside supported weekly totals.

For customers that require a payable portal, the supplier-portal acceptance framework separates upload, acceptance, rejection, and hold states. It turns a vague “submitted” note into a reviewable blocker without changing this page's agency handoff intent.

Run a concise weekly handoff

Before the finance review, ask account and project owners to update only changed facts: milestones newly completed, approvals received, invoices accepted, disputes raised, and owners changed. Finance can then compare the handoff with the accounts receivable forecast template and decide whether an invoice has enough evidence for a week-one through week-four assumption.

This workflow is distinct from a generic agency cash forecast. It focuses on the operational gap between project billing and a defensible invoice-level collection assumption.

Use the agency WIP vs. accounts receivable boundary to keep work in progress, invoice proposals, issued invoices, and collected cash in separate stages.

AR Pulse works from an authorized QuickBooks receivables export and adds a ranked action list plus four-week collections view. It does not contact agency clients, change the books, or promise collections. Agencies that need an evidence-backed review can apply for AR Pulse.