Books Lock
Books Lock makes prior-period transactions read-only so you can't accidentally backdate a fix into a closed month or year. It's the desktop equivalent of QuickBooks' closing date, with a full audit trail of any change you do make, plus a review-lock workflow for sending books to your CPA.
Optional, off by default. If you never lock, nothing changes. The feature only activates when you set a lock date.
Locking the books
Open the Company page from the sidebar and scroll to the Books Lock section. Click Lock the books. The dialog offers two preset dates and a custom option:
- End of last month for monthly closes
- End of last tax year for year-end
- Custom date for anything else
You can add an optional note (for example, "Monthly close, reconciled") and a reviewer name (for example, "Sarah Chen, CPA"). Both show up in the Lock History so you can see why each lock was applied.
Once locked, any transaction dated on or before the lock date becomes read-only. The lock badge appears in the top bar and a "Books locked through [date]" line shows under the title of every report.
To extend an existing lock forward (for example, advancing a Jan 31 lock to Feb 28 after the next monthly close), use the Advance lock date button on the Books Lock section. There's no need to unlock first.
Review lock vs final lock
When you lock, you can check This is a review lock. A review lock works the same as a normal lock but acknowledges that you expect to make small adjustments after your CPA reviews. The badge changes from π to π so you can tell the difference at a glance.
On a review lock, the per-transaction Edit anyway button is available for small fixes. When the review is done, click Mark as reviewed to convert it to a final lock. After that, Edit anyway is hidden and any further change requires the full Unlock flow. This is a UI nudge, not a backend rule. Both flows write to the same audit trail.
Use a review lock during the close cycle, then mark it reviewed once you and your CPA agree the books are final.
Editing a locked transaction
Open any locked transaction and you'll see a yellow banner at the top:
π This transaction is in a locked period
Books locked through Dec 31, 2025.
On a review lock, the banner includes an Edit anyway button on the right. Clicking it opens a small dialog asking for a reason (for example, "Fixing account coding error"). Once you confirm, the form unlocks for that one save. The change is written to the audit log with a full before/after snapshot of the transaction, your reason, and a timestamp.
On a final lock (after Mark as reviewed), the banner has no Edit anyway button. The sub-text reads "Unlock the books to edit transactions in this period." Use the Unlock flow described below for any change.
Edit anyway works on invoices, bills, expenses, credit memos, vendor credits, and journal/transfer/deposit/refund entries. Voiding and deleting a locked transaction go through the same flow.
Unlocking for bulk corrections
If you need to make several changes (for example, applying a stack of CPA adjusting journal entries), use Unlock to make changes on the Books Lock section of the Company page instead of clicking Edit anyway on every transaction.
Unlock requires a reason and clears the lock date. While unlocked, the top-bar badge shows β Books unlocked as a reminder to re-lock when you're done. Every change you make to a transaction in the previously-locked range is automatically written to the audit log using your unlock reason. No per-transaction prompts.
When you're finished, return to the Company page and click Re-lock books. The previous lock date and reviewer name pre-fill so you can lock back to the same place in one click.
Lock history
Click the lock badge in the top bar (or open Lock history from the Books Lock section of the Company page) to see a timeline of every lock, unlock, and re-lock event. Each entry shows:
- Event type (lock, unlock, or re-lock)
- The lock date applied
- The note and reviewer name you entered
- The reason given (for unlock and Edit anyway events)
- Timestamp
The lock history is append-only. Nothing is deleted, even if you unlock and discard your changes. Combined with the per-change audit log, this gives you a defensible record of every adjustment to closed books.
What's still allowed in a locked period
The lock applies to the date of the transaction being changed, not to anything that touches a locked transaction. These actions are always allowed without a prompt:
- Reconciling a locked-period bank line, or unmarking it as reconciled
- Recording a payment dated today against a locked-period invoice
- Applying a credit memo or vendor credit dated in an open period to a locked invoice or bill
- Refunds dated in an open period
- Editing customer or vendor profiles (name, contact info, payment terms)
- Renaming or inactivating accounts
- Editing a recurring template (changes only affect future generations)
- Editing estimates (estimates aren't accounting documents)
The intent is that you can keep running the business normally. The lock only catches you when you try to change history.
Imports and recurring transactions
Bulk imports are the easiest way to silently insert backdated transactions, so the lock is enforced at preview time:
- Bank CSV/OFX import: the preview screen counts how many rows fall in a locked period and skips them on import
- QuickBooks Desktop import: same warning on the review step
- QuickBooks Online import: same warning on the review step
If you actually need to import locked-period rows, unlock the books first, run the import, then re-lock.
Recurring transactions behave the same way. If a scheduled occurrence would fall in a locked period, it's skipped silently (no error, no notification). The bottom of the Recurring page shows a collapsible "[N] skipped recurring generations" toggle whenever there are skipped entries, so you can see what didn't fire and decide what to do.
Estimate conversion
Converting an accepted estimate to an invoice creates the new invoice dated today. If today happens to fall inside a locked period (uncommon, but possible if you set a future lock date), the conversion is blocked with a clear error. Unlock the books and try again.
Reports show lock state
Every report on the Reports page and the General Ledger renders a "Books locked through [date]" line under its title. That includes Profit & Loss, Balance Sheet, Trial Balance, Cash Flow Statement, Journal, General Ledger, Chart of Accounts, AR/AP Aging, Customer Statements, Customer/Vendor Lists, 1099 Contractor Summary, and Schedule C.
This makes it easy for a CPA or reviewer to see at a glance that the underlying numbers are frozen.
Current limitations
- The lock date can only move forward. To roll a lock back to an earlier date, unlock first and then re-lock at the new date.
- Per-transaction overrides are recorded in the database with full before/after snapshots, but don't yet have a dedicated viewer screen. The Lock History panel covers all lock, unlock, and re-lock events.
- Imports don't have an "import anyway" override path. If you need to import locked-period rows, unlock the books first.
- The date picker in transaction forms doesn't yet show an inline warning when you type a locked date. The form-level banner catches it on save.
Tip: Lock at the end of every month once you've reconciled. It takes ten seconds and prevents the most common form of accidental backdating.