City of SpringfieldMulti-fund invoice
Government ERP · Product Management Exercise · Brian Ference

Multi-Fund Invoice and Fund Accounting

One $30,000 vendor invoice for the City of Springfield, charged to the General Fund, the Street Fund and the Water Enterprise Fund. Follow it from entry through budget and purpose checks, approval, posting and payment, to a plain-English audit explanation.

$30,000one vendor invoice
3funds, each a separate self-balancing set of books
5approvals here: 3 department heads, Budget Officer, Finance Director (4 without a budget fix)
10 + 4posting gates and payment gates before money moves
End-to-end workflow

One $30,000 invoice, three funds: who does what and where it stops

The normal path runs left to right. The rules engine can stop the invoice at coding, budget or fund purpose, and every stop names the fix. Each action writes to an append-only event log.

Normal path Hard stop (must recode) Soft stop (Budget Officer can approve a fix) Return to AP, approvals cleared
Open SVG Download PNG On a phone, scroll sideways or tap to enlarge.
  1. Invoice entered
  2. Fund split, entered or suggested
  3. Budget check by fund
  4. Legal or restriction check
  5. GL distribution preview
  6. Approval route preview
  7. Posting and payment eligibility
  8. Audit explanation
Why separate funds

The same invoice touches three separate pots of money

A fund answers whose money and for what purpose. A department answers who spent it. Money in one fund cannot cover another fund's purpose, so the invoice is split and each line is checked against its own fund. Revenue sources and permitted uses below are scenario assumptions for a finance expert to confirm.

General · governmental

101 General Fund

$12,000
Money comes from
Property tax, sales tax and fees, unrestricted
Can pay for
General government facilities and street maintenance
Basis of accounting
Modified accrual, current financial resources
Special revenue · governmental

202 Street Fund

$8,000
Money comes from
State motor fuel tax distributions, externally restricted
Can pay for
Street maintenance only
Basis of accounting
Modified accrual, current financial resources
Enterprise · proprietary

501 Water Enterprise Fund

$10,000
Money comes from
Water rates and connection fees paid by customers
Can pay for
Water utility operations
Basis of accounting
Full accrual, economic resources
Clickable prototype

Walk the invoice through all eight steps

The prototype starts on the version keyed with three exceptions. Fix each one with the suggested resolution, approve it, then post and pay. Switch scenarios in the prototype header to see the clean path.

Presentation

Fourteen slides, each tied to an item in the brief

Click any slide to view it full size and step through with the arrow keys.

The workflow on one page

Slide 6 is the whole transaction in a swimlane: eight steps for the clerk, ten posting gates, four payment gates and the exceptions that send the invoice back.

Data model and rules

Configuration drives the controls; the transaction record drives entries and the explanation

Purpose rules, budget lines and thresholds are configuration owned by Finance, so a city can change a control without a release. The audit explanation is derived and never a source of truth.

Open SVG Download PNG
Assumptions

What a government finance expert should confirm

All names, codes, budgets and people are fictional. These assumptions are also in the prototype's assumptions panel.

Invoice typeNon-PO invoice under a master services contract, so there is no encumbrance to liquidate.
Budget controlThe legal level of budgetary control is fund plus department. Object is administrative.
Fiscal yearFY2027 runs July to June. October 2026 is period 4.
Street FundFunded by state motor fuel tax and restricted to street purposes.
Water FundRevenue restricted to the water system by rate ordinance and bond covenants.
Cash and thresholdsCash is pooled and each fund tracks its equity in the pool. Capitalization is $25,000, and Finance Director approval applies at $25,000 and up.