What can I edit on a commitment once it has been saved?
Last updated: September 30, 2026
Once a commitment has been saved, what you can still change depends on a few things: whether the commitment has ever been invoiced, whether it's been terminated, and whether it's fully inside a period the merchant has already closed their books for.
In general, the more "real" a commitment has become — the more it's actually been billed against — the more locked down it gets, to protect the accuracy of past invoices.
This article covers commitment/schedule/step edibility first, then billing term (BT) edibility separately at the bottom — the two systems are related (a commitment's billing terms inherit some locks from the commitment) but are driven by different rules.
Hard locks — the commitment is fully frozen
A commitment becomes fully locked — every field, no exceptions — in exactly two cases:
It's been terminated. See Terminate vs. Remove below.
It's fully inside a closed accounting period. If the merchant has closed their books through a given date (their "book close date"), and the last day of the commitment's last schedule falls on or before that date, the entire commitment is permanently locked — same as if it had been terminated. The idea: once every day a commitment could ever bill for is inside a closed period, there's nothing left to safely edit.
Note that simply having an end date in the past ("ended") is not by itself a lock condition. An ended-but-not-terminated, not-yet-closed-book commitment is still editable under the normal invoice-based rules below — only termination or a closed book fully freezes it.
Two other kinds of locking (short of a full freeze)
1. "Shape" Locks — as soon as a commitment is saved at all
Some fields describe the fundamental structure of the commitment and lock the moment it's first saved, regardless of whether any invoices have gone out yet:
Unit type (dollars vs. units)
Prepaid toggle and prepayment strategy
Changing these after the fact would mean fundamentally redefining what the commitment is, not just adjusting a number.
2. Invoice Locks — once at least one invoice has been sent
Other fields stay editable right up until the relevant invoice has been sent, and then lock.
Which invoice counts depends on the field:
Fields that lock once the commitment/schedule has any sent invoice: price priority, removing a schedule or step, a schedule's end date and interval.
Fields that lock based on that specific step's own sent invoices — not a sibling step's, and not the commitment's aggregate state: prepaid/overage invoice line name and item.
Fields that only ever lock on the hard lock (never merely on an invoice being sent) — see the field-by-field table below for which ones. Notably, adding a new schedule or step is in this bucket: you can add a schedule or step to a commitment at any time, even after invoices have been sent — it's only blocked once the commitment is terminated or fully inside a closed accounting period.
Field-by-field: What Locks When
Field | Locks on |
|---|---|
Commitment name | Hard lock only |
Unit type (dollars/units) | Shape lock (as soon as saved) |
Prepaid toggle | Shape lock (as soon as saved) |
Prepayment strategy | Shape lock (as soon as saved) |
True-up behavior | Any sent invoice, or hard lock |
True-up name | Any sent invoice, or hard lock |
True-up item | Any sent invoice, or hard lock |
Schedule start date | Hard lock only (see start-date rules below for what's actually allowed to change before that) |
Schedule end date | Hard lock only |
Schedule interval | Any sent invoice, or hard lock |
Schedule event types tracked | Hard lock only |
Add schedule | Hard lock only |
Remove schedule | Any sent invoice, or hard lock |
Step/commitment value (amount) | Hard lock only |
Prepaid amount | Hard lock only |
Prepaid invoice line name/item | That step's own sent invoices, or hard lock |
Price priority | Any sent invoice, or hard lock |
Billing terms linked to a step (products) | Hard lock only |
Overage pricing structure (same-as-base vs. custom, pricing type, tiers) | Shape lock (as soon as saved) — a re-rate is rejected once the step has recorded usage |
Overage invoice line name/item | That step's own sent invoices, or hard lock |
Add step | Hard lock only |
Remove step | Any sent invoice, or hard lock |
Changing a schedule's start date
Only the first schedule of a commitment can ever have its start date changed — trying to change the start date of any later schedule is rejected outright.
There are two modes:
Extend — moves only the first schedule's start earlier or later. Rejected if the new start would cross past a billing period that's already been invoiced (moving it earlier, with no invoiced period in the way, is fine even post-invoice).
Shift — translates the entire commitment timeline (every schedule) forward or backward together. Rejected outright if any non-voided invoice exists anywhere on the commitment — including on its derived prepaid/overage/true-up billing terms — since shifting moves everything at once.
Both modes are also gated by the billing terms linked to the schedule: the new start generally can't move earlier than a linked billing term's own start date, and must land on that billing term's billing-period cadence.
Note: The “shift” option is not currently available in the user platform, and only available via API. Documentation for this is found here.
Ending a commitment: Terminate vs. Remove
Terminate | Remove / Delete | |
|---|---|---|
Requires | At least one sent invoice | Zero sent invoices |
Effect | Commitment is hard-locked permanently as of the termination date | Commitment is deleted |
Use when | The commitment has been billed against and needs to stop, but its history must be preserved | The commitment was created in error or never actually billed |
Reviewing before you save an edit
Just like when creating a commitment, editing one and clicking Save opens a Review changes screen before anything is written.
In edit mode, this view shows a diff — highlighting exactly what's changing compared to the saved version — so you can confirm the edit is what you intended before clicking Confirm & save.
How commitments lock their billing terms
When a commitment is saved, Tabs creates billing terms for line items that are needed for prepayments, true-ups and overaged. These billing terms inherit extra locks driven by the commitment itself, on top of that billing term's normal editing rules.
This only applies to those three commitment-linked billing terms — a billing term that's just linked to a commitment as one of its underlying products, with no prepaid/true-up/overage role of its own, is not affected.
The specific fields locked aren't the same for every type:
Prepaid and true-up billing terms have all of the following locked by the commitment:
Start date — except on a full-upfront prepaid, where the start date specifically stays unlocked, because its single invoice is issued from that date and may still need to move.
End date
Duration
Due interval / due interval unit (cadence)
Pricing (amount/rate)
Overage billing terms have only their dates locked the same way — start date, end date, duration, due interval/unit — but not their pricing. An overage billing term's rate/tiers need to be edited directly on the billing term as opposed to on the original commitment configuration.