Rightshold™ Sign up

Answers · bookkeeping

How do I catch backdated entries posted into a closed month after month-end close?

Last updated

TL;DR: A lock date stops casual edits, but an admin can lift it, post an entry dated inside the closed month, and put the lock back. The report totals change and nothing in the closed period looks new. To catch that, every entry needs two dates: the date it says it happened and the date it was actually recorded, from a clock the business doesn't control. A Rightshold mirror ledger gives each sealed entry both: occurred_at (the date you give) and sealed_at (Rightshold's clock), plus a sequence number and a hash chain. At close, write down the last entry's seq and entry_hash for the month and give that close head to your accountant. Later, any entry with an occurred_at inside the closed month but a seq after the close head is a post-close entry, and it shows. Any edit to an entry at or before the close head breaks the chain against the hash the accountant already holds. This page is about finding backdated and post-close entries. Locking the period and hashing month-end reports is covered on the page about proving books weren't edited after the fact.

What should I check, step by step?

1. Lock the month in the accounting software once it's reconciled (QuickBooks Online Close the books with a password, or a Xero lock date) and keep the password or administrator role away from day-to-day entry.

  1. Seal the business's records into a mirror ledger as they happen (invoice, payment, adjustment, tip_allocation, tip_payout, dispute_note), with occurred_at set to the business date. Don't batch-seal a whole month at close, or every entry will look post-close.
  2. At close, record the close head: the seq and entry_hash of the last entry sealed for that month, and the time you recorded them. Send it to your accountant or put it in the close memo, so a copy sits outside the business.
  3. Book corrections to a closed month as new adjustment entries dated in the open month, with a note pointing at the original entry id. The mirror has no edit or delete route, so a correction is always a new entry.
  4. At review time, list the entries (owner key) and flag every entry whose occurred_at falls inside a closed month but whose seq is after that month's close head. Those are the backdated or post-close entries to explain.
  5. Check that the close head still holds: the entry at that seq must still have the same entry_hash, and GET /v1/mirror-entries/{id} must report chain_valid true. A different hash means history up to the close was changed.
  6. Compare with the accounting software: pull the QuickBooks Online audit log (or Xero History and notes) for changes made after the close date to transactions dated in the closed month, and match each one to a mirror adjustment entry.
  7. Keep the close heads, the mirror entry ids and the exported reports for as long as your tax records. QuickBooks Online's audit log only keeps events for two years.

Why doesn't a lock date alone catch backdated entries in a closed month?

QuickBooks Online's Close the books setting protects transactions dated on or before the closing date with a warning or a password. In Xero, only an administrator can set lock dates, and administrators can remove them to make changes. Both are controls run by someone inside the business.

How do two dates and a close head expose entries posted after month-end close?

Each mirror entry stores occurred_at, the date the business gives, and sealed_at, which Rightshold sets when the entry arrives. Entries are numbered in order (seq). Each entry_hash covers the ledger id, seq, type, occurred_at, a SHA-256 of the content and the previous entry's hash, so changing any earlier entry changes every hash after it.

What can an accountant check about post-close entries without logging into the books?

With an entry id, anyone can call GET /v1/mirror-entries/{id} for free: the record as sealed, occurred_at and sealed_at, its chain check and its anchor status. GET /v1/mirror-ledgers/{id} shows the neutral label, the entry count by type and the first and last seal times.

How do I ask Rightshold about this (free, no key)?

Add the MCP server https://www.rightshold.com/mcp to Claude, Cursor, ChatGPT, Grok or VS Code, then ask: “Verify the Rightshold ledger my mirror-ledger entries are written to, so my accountant can trust the close head I recorded for October.”

One-click setup

{
  "tool": "ledger_verify",
  "arguments": {}
}

Rightshold doesn't connect to QuickBooks or Xero, lock periods or check your numbers. The mirror proves what was sealed and when. It can't stop you posting a backdated entry in your own software, and it can't see entries that were never sealed. Recording close heads and matching the audit log against the mirror are steps you and your accountant run. Not legal, tax, audit or accounting advice.

What are the sources?

Related

Not legal advice. JSON · Markdown · All answers

Get a free API key in one call

No card and no email needed. 100 free credits; the license and policy checks stay free without a key.

curl -s -X POST https://www.rightshold.com/v1/accounts/signup -H "Content-Type: application/json" -d '{"accept_terms":true}'
export RIGHTSHOLD_API_KEY=rs_...   # the api_key from the reply (shown once)
curl -s https://www.rightshold.com/v1/licenses/check -H "Authorization: Bearer $RIGHTSHOLD_API_KEY" \
  -H "Content-Type: application/json" -d '{"license":"MIT","intended_use":{"commercial_use":true}}'