Fees101
Docs/Fee structure/Editing or Deleting a Fee Item After Invoices Are Already Out
Requires: Manage Fee StructureUpdated 2026-10-272 min read

Editing or Deleting a Fee Item After Invoices Are Already Out

Editing or deleting a fee item writes to the fee structure itself — it does not retroactively recalculate any invoice that was already generated. An invoice's line items, subtotal, and total are frozen at generation time, not a live calculation from the current fee structure. What DOES happen automatically now is that Fees101 flags an already-sent invoice as out of date the moment a fee it includes is edited or removed — so it's no longer possible to unknowingly leave a parent holding a stale invoice.

What changes automatically, and what doesn't

Saving a new amount on Edit Fee Item (or Edit Fee Group), or deleting a fee item entirely, never changes the actual total on an invoice that's already been generated — a parent holding an already-sent invoice still sees the OLD number on it. What Fees101 does do automatically: any already-sent, unpaid invoice whose line items include the fee you just edited or removed gets flagged needs_resend right away, the same flag that's set when any other change makes a sent invoice stale. See Understanding the "Needs Resend" Flag for what that flag actually changes in the UI.

This only flags invoices — it doesn't regenerate them. The invoice still shows its old total until someone explicitly regenerates it (see below). The flag's job is to make sure that need is visible, not to silently rewrite a document a parent may already be relying on.

Deleting a fee item (single or bulk, by name across classes) does clean up any dependent per-student opt-ins first, so you're not left with orphaned records. Both editing and deleting are blocked outright on a closed term, same as every other fee-structure edit — and the needs_resend flagging only ever applies to invoices generated for the same term the fee item belongs to.

Making an already-generated invoice catch up

Flagging tells you an invoice is stale; it doesn't fix the number on it. To actually pull a changed fee into an invoice that already exists, you have to explicitly regenerate it — either one invoice at a time, or in bulk via "regenerate stale" on the term (see Generating Invoices for a Term). Regenerating recomputes the invoice from whatever the fee structure says right now, and clears the needs_resend flag once that's done (followed by actually resending it to the parent).

  • If the recomputed total would drop below what's already been paid against that invoice, Fees101 blocks the regeneration for that one invoice rather than clawing money back. In a bulk "regenerate all," it's silently skipped and counted as locked — you'd need to resolve that one as a refund or credit decision manually.

Gotchas

The flag only fires for invoices already sent AND not yet fully paid — a draft (never-sent) invoice for the same term simply gets the new fee structure next time it's generated, with no flag needed since the parent never saw the old number. A fully paid invoice is also left alone, since clawing back or re-presenting it after payment isn't something this flag is meant to trigger.

Was this page clear?

See also

Need more help?

Still stuck?

Email our team directly and we'll help you sort it out.

Email our team