← Documentation
Text size
Innovation · License Commander

The Recharge Engine

How License Commander turns a year of software usage into a recharge you can defend line by line, reconciled to the penny against what KFS actually posted, and worked from one place: the Bursar.

Last revised:

A recharge that cannot be reconciled is a recharge nobody trusts. So License Commander works out the bill in one server-side calculation, and every place a person checks the money reads from it: the Run that builds the KFS documents, the live Ledger, and the forecast of what is still to bill.

Every year, the software a unit uses has to be turned into money: a recharge posted to a KFS account, tied to the right fiscal year, matching what was actually bought. Done loosely, the numbers drift. The spreadsheet says one thing, the dashboard another, and a fiscal officer stops believing any of them.

The hard parts are not arithmetic. They are: which fiscal year does this seat belong to? Is this account subsidized, and therefore excluded? Does the total match the purchase order the campus actually signed? Did KFS post what we asked it to? Get any of those wrong and the recharge is indefensible.

So the Recharge Engine is built around a single principle: one source of truth, reconciled against an external authority, computed once and shown everywhere the same. Since August 2026 it has a home of its own, the Bursar, where the licensing team and the Business Office work each recharge and check it against KFS, document by document.

By the numbers

1

calculation behind what the Run bills, the live Ledger, and the forecast.

To the penny

the Microsoft recharge ties out to the signed campus purchase order.

$1.33M

that organization-wide Microsoft total, reconciled exactly, not approximated.

Every line

of FY26 monthly service billing matched License Commander, with zero exceptions, when it was loaded in August 2026.

Per seat

KFS document numbers stamped back onto every record that was billed.

By rule

subsidized licenses excluded automatically, never by a hand-kept list.

One calculation, every view

The Run decides what bills. Everything else reads the Run.

There is one server-side calculation that decides what each unit owes this cycle: which seats are billable, at which price, and credited to which income account. The Run uses it to build the KFS documents. The Bursar’s Ledger and forecast don’t keep rules of their own. They ask that same calculation, so the forecast you read on Monday is the dry run you would get if you pressed the button.

The Ledger tab, which opens first, is a running check register for the next run. It refreshes every minute, lists each charge newest first with a running balance, shows queued refunds as negative lines, and keeps an “on deck” list of orders still waiting for approval, which join the bill once they are approved.

Why it is clever

Two copies of the same math drift apart sooner or later. When the forecast once disagreed with the dry run, the fix was not to tune the forecast but to delete its rules and have it call the Run. The standing rule since then: a money view that shows a different number from the Run is a bug to fix, not a rounding difference to explain away.

✓ Toil removed reconciling a forecast, a dashboard, and a billing file that each did their own arithmetic.

Knowing which year a seat belongs to

The fiscal-year cycle that decides when a license is billed.

A license is not simply billed “this year.” The university runs overlapping recharge cycles, and each record carries a marker for the cycle it belongs to, the closed prior year or the current one. That marker decides whether a seat is on this recharge or the next.

The marker also decides the price. A seat tagged for the annual Adobe or Microsoft renewal bills at the renewal price under the renewal’s token. A seat bought after July 1 without that tag bills as a monthly purchase at the mid-year price, which is what it honestly is.

Why it is clever

The marker is written at the moment billing happens, not guessed later, so a record can never be stranded off the bill or double-counted across two cycles. A seat billed in the earlier cycle and a seat billed in the later one are kept distinct, automatically.

✓ Toil removed hand-sorting which licenses belong to which recharge cycle, and the seats that fall through the cracks.

Tying out to the penny

Reconciling the whole recharge against the purchase order the campus signed.

For the largest recharge, Microsoft, the Engine pins the entire organization-wide total to the authoritative campus purchase order. The number the platform bills reconciles to the signed PO exactly, to the penny. In the app, the signed PO figure sits as a fixed reference under the running total for the current fiscal year.

Why it is clever

This is the difference between a recharge you assert and a recharge you can prove. When the total matches the purchase order the campus actually committed to, down to the cent, there is no argument to have. The Engine does not approximate the authority; it ties out to it.

✓ Toil removed defending a large recharge total with no external anchor to point to.

One source of truth, tied to the penny to the purchase order the campus signed, and checked against every document KFS posts. A recharge you can defend line by line.

The Bursar: one place to check the money

Every KFS document, matched against License Commander.

The Bursar keeps its own ledger of every Service Billing document KFS has posted, line by line, and reconciles each one against the licenses License Commander says were charged. It is open to administrators and the Business Office only.

A reconciliation here has three legs, not two: what we asked the Business Office to charge (frozen at the moment a run is generated), what KFS actually posted, and what License Commander shows today. The frozen leg never drifts, so when a seat moves to another account after it was billed, the Bursar can say exactly where it was charged and where it went.

A gap is sorted by direction. A seat that moved accounts after billing is a rebill. License Commander showing more than KFS billed is money still to collect. KFS showing more than License Commander is usually a correct charge on a frozen bill, so it is left for review rather than refunded. A refund or rebill done in the app shows up the next time the page loads.

Why it is clever

The frozen leg is the tiebreaker. KFS lines carry no per-person detail, and live records drift as people move. Keeping what was sent for billing as its own record lets the Bursar tell a real billing error from a seat that simply moved after it was charged correctly, so it stops pointing at refunds for charges that were right.

✓ Toil removed opening a KFS document beside a spreadsheet and guessing which seat each line was for.

Capturing what KFS actually posted

A KFS Pull button instead of copy and paste.

After the Business Office posts a run, each KFS eDoc used to be opened and pasted in by hand, about twenty documents for a big run. Now the Bursar lists every run with documents not yet captured and offers a KFS Pull button. On the campus machine it opens a browser at KFS, a person signs in with multi-factor authentication, and a helper reads each document, checks that its lines add up to the document total, loads it into the ledger, and refreshes the Bursar.

Why it is clever

The login stays human on purpose. There is no service account with a KFS key to protect, and the helper only reads pages and clicks Search. It works only on the machine where it is installed, and a rerun skips documents already loaded, so a hiccup halfway through costs nothing.

✓ Toil removed copying twenty KFS documents into a spreadsheet by hand after every run.

Working a run

Dry run, generate and freeze, stamp, release.

The Bursar’s Run tab takes a recharge from start to finish. A dry run shows the whole plan without writing anything: every income account, every document, every line, with the files ready to download for a look. Generate builds the KFS documents and freezes every record on them. A frozen record is read-only until the run is released, and it shows in License Commander with an amber “frozen for the run” marker, so nobody wonders why an edit was refused.

KFS limits how many lines a document can hold, so the Run splits a big recharge into documents of at most 90 lines, each named for its income account and period. An optional itemize setting writes one line per person on the annual renewals, so every name appears on the eDoc.

Canva seats renew on the anniversary of their first bill rather than all at once, so the Run tab also lists the Canva seats coming due each month. One button emails each fiscal officer once, and the seats they keep bill on that month’s run, which starts their next year. A seat that is revoked first simply drops off.

Why it is clever

Freezing makes the numbers hold still. Between the moment the documents are built and the moment KFS posts them, nobody can revoke, transfer, refund, or re-account a seat on the run without an administrator override and a written reason, so the file the Business Office uploads still matches the records when it comes back. Release then reports anything that changed underneath anyway, such as a separation that landed overnight.

✓ Toil removed a billing file that no longer matched the records by the time KFS posted it.

Stamping the ledger back

Recording the KFS document numbers onto every seat that was billed.

When a recharge posts in KFS, it comes back with document numbers. On the Run tab each document is a card. Type its KFS number and it saves on its own; press Stamp and the number and billing period are written onto every record on that document. Cards can be done in any order, a stamp can be undone, and Release stays locked until every document is stamped, behind a confirmation checkbox.

Why it is clever

A recharge is often not one clean document but many. The Engine maps each seat to the exact document that charged it, so a record is never later re-billed for a charge it already carried. Saving a number and stamping it are separate steps, so the Business Office’s work can be checked before anything is committed.

✓ Toil removed losing track of which seats were on which recharge document, and re-billing what was already charged.

Refunds that ride the same bill

Money back as a negative line, with a trail on the record.

When a charge has to be returned, License Commander queues a credit instead of starting an email thread. Credits net as negative lines on the monthly service billing, and a refund document lists them in KFS format for the Business Office. Administrators can also add a refund for a charge whose record has since moved or gone, and edit or void a credit while it is still pending.

Once a refund posts, it is stamped beside the original charge, never over it, because the charge stamp is what billing and reconciliation depend on. The record’s activity timeline then tells the whole story in order: charged on this document, refund queued, charge taken off the record, refund posted.

Why it is clever

Keeping the charge and the refund side by side means a record can always answer both questions at once: what was billed, and what was given back. Nothing about the original bill is rewritten to make the books look tidy.

✓ Toil removed refunds handled by email, outside the bill, with no trace on the record.

When KFS says an account is closed

Hold the charge, tell the fiscal officer, bill it next time.

Sometimes KFS rejects an account as closed while the Business Office is processing a document. They flag it on that document in the Run tab. The seats billed to that account are held, not charged. When the run is released, those seats reopen for editing and the fiscal officer is emailed a standard notice with a link straight to the record. Once a working account is saved, the seat bills on the next run.

A monitor on the Run tab tracks every held seat across runs and clears itself as each one moves to a good account, so nobody has to mark anything resolved. If the fiscal officer reopens the same account instead, one click clears it.

Why it is clever

The campus chart-of-accounts feed has no open or closed flag, so a closed account can’t be caught in advance. Instead the system makes the miss cheap: the charge waits, the right person is told exactly what to fix, and the monitor watches the records themselves rather than waiting for someone to report back.

✓ Toil removed chasing a bounced charge by email and re-billing it by hand a month later.

Excluding what is subsidized

Knowing which seats the recharge must never touch.

Some licenses are subsidized, paid centrally rather than recharged to the unit. The Engine recognizes them by a precise signature, a specific account paired with a document marker, and excludes them from the recharge automatically. Seats marked as centrally funded in place of a real KFS account are excluded the same way. A subsidized seat is never accidentally billed to a department.

Why it is clever

The exclusion is by an exact, checkable rule, not a hand-maintained list. Add a subsidized seat and it is excluded the same way every other one is. The recharge only ever contains what a unit genuinely owes.

✓ Toil removed hand-removing subsidized seats from every recharge, and the mis-bills when one is missed.

A recharge you can defend line by line

One calculation behind the Run, the Ledger, and the forecast; a fiscal-year marker on every seat; a Microsoft total that ties out to the signed purchase order; KFS documents captured and checked against License Commander line by line; records frozen while a run is in flight; refunds and closed accounts handled on the same bill; and subsidized licenses excluded by rule. The recharge is not a spreadsheet somebody reassembles each year. It is a computed, reconciled, provable number, the same everywhere you look.