Period Close

Closing a period — month, quarter, or year — is the operation that moves your books from "data still arriving" to "this period is settled." It's the reconciliation discipline that makes financial reports trustworthy and the audit-trail tripwire that keeps people from accidentally editing settled history.

This page is a step-by-step walkthrough. Most of the underlying mechanics are covered in the General Ledger module; here we focus on the what to do, in what order.

The close cadence

PeriodCadenceCost of getting it wrong
MonthlyWithin ~5–10 business days of month-endBooks drift; finding errors weeks later is hard
QuarterlyAfter the third month of each quarterSmall businesses often skip; annual close becomes painful
AnnualWithin 30–60 days of fiscal year-endTax-prep timing; lender/investor reporting

The discipline is more important than the schedule. A monthly close that takes 10 days each month is fine; one that takes 3 days catches errors faster. Pick the cadence you'll actually do.

Pre-close checklist

Before "closing" a period, the data needs to be complete. Solid's close-readiness view (in development) automates this checklist; for now, work through it manually.

Bank reconciliation

Reconcile every bank account — and every credit card account — to the statement that ended on or after the last day of the period. See Banking → Reconciliation for the flow.

After reconciliation:

  • Every transaction on the statement has a matching entry in Solid
  • Every Solid entry up through the statement date is either matched, voided, or correctly outstanding (deposits-in-transit, uncashed checks)
  • The reconciliation completes with $0.00 difference (or a documented discrepancy adjustment)

Accounts receivable review

Run the AR Aging report. For each customer with a balance:

  • Unpaid current invoices — fine, leave them
  • Recently overdue (30 days) — send a friendly reminder
  • Significantly overdue (60+) — collections call; may need a partial write-down to Allowance for Doubtful Accounts
  • Unapplied payments — investigate; usually the payment was applied to the wrong invoice
  • Negative balances — credits not yet applied; either apply to a future invoice or refund

Post any allowance-for-doubtful-accounts adjustment as an adjusting journal entry.

Accounts payable review

Run AP Aging. For each vendor:

  • Unpaid current bills — your scheduled cash outflow
  • Overdue bills — pay them or document why not (vendor in dispute, etc.)
  • Vendor credits — ensure they're applied where appropriate

If you've received goods/services in the period but not yet a bill, post an Accrued Expense entry to capture the liability for the period it belongs to. Reverse the accrual in the next period when the bill arrives.

Inventory count and adjustment

For inventory businesses: do a physical count and reconcile to the Inventory Valuation report. Differences post as inventory adjustments to a Shrinkage or Inventory Adjustment expense account.

For most months you skip the full count; an annual count at year-end is often sufficient.

Fixed assets — depreciation

Run the depreciation runner. Solid posts one journal entry per active fixed asset for the depreciation period — DR Depreciation Expense / CR Accumulated Depreciation. See Fixed Assets module for the underlying math.

Loan amortization

Verify all loan payments for the period are recorded. The Loans module handles principal/interest splits per the schedule — confirm each payment posted as expected and the loan balance matches the lender's reported balance.

Recurring transactions

Confirm any recurring transactions due in the period have generated. Open the Recurring Due queue; post anything outstanding.

Sales tax accrual

Run the Sales Tax Liability report for the period. The total owed should match the Sales Tax Payable account balance at period-end. Discrepancies usually mean tax codes weren't applied to some sales.

Payroll review

If you process payroll: ensure all payroll entries (whether manual journal entries or via the Payroll API integration) are posted for the period. The payroll-tax-payable accounts should reflect what's owed and not yet remitted.

Adjusting entries

After the pre-close checklist, post any adjusting journal entries. Common ones:

AdjustmentWhy
Accrued expensesGoods/services received in the period, bill arrives later
Accrued revenueWork delivered in the period, invoice issued later
Prepaid expensesA bill paid this period for next period's coverage — defer to Prepaid Expense asset
Deferred revenueA customer paid this period for future-period delivery — defer to Deferred Revenue liability
Inventory adjustmentPhysical count differences
Bad debt write-offCustomer balance you've decided is uncollectible
DepreciationIf not already auto-posted
Insurance / loan amortizationSpreading prepayments across the period
ReclassificationsMoving an entry from the wrong account to the right one

Mark adjusting entries with is_adjusting = 1 so they show separately on the Adjusted Trial Balance report.

Run the trial balance

After all posts: run Reports → Trial Balance for the close date. Confirm:

  • Total debits = total credits (always — this is automatic in Solid)
  • The balance sheet equation holds (Assets = Liabilities + Equity)
  • Every account balance looks reasonable

Compare against last period: large unexplained changes are flags. A 3x jump in Office Supplies is either a real change or a posting error — investigate.

Compare to the budget (optional but useful)

If you have a budget for the period, run Profit & Loss vs Budget. Variances over ~10% are the conversation starters: are we above budget on this expense because of a one-off, a price change, or sustained drift? See Budgets → Variance reports.

Close the period

In Solid: Company → Set Closing Date. Pick the last day of the period.

What this does:

  • Locks the GL — no new entries with dates inside the closed period without an Admin override
  • Records who closed the period and when
  • Stamps every entry in the closed period with the close timestamp (so reports for closed periods are reproducible)

For year-end close specifically: an additional step posts a closing entry (transaction_type = 'closing_entry') that moves the period's net income into Retained Earnings and zeros out the income/expense accounts for the new fiscal year. See General Ledger → Periods and closing.

Re-opening a closed period

Closing isn't permanent. If you discover an error after closing:

  • An Admin can post a corrected entry into the closed period (logged in the audit trail with a "post-to-closed-period" flag)
  • Or Company → Re-Open Period — un-locks the period entirely so anyone can edit. Re-opening is logged.

The post-to-closed-period flag is preferred for one-off corrections; re-opening is for major restatements where you really do need free editing access.

Year-end close additional steps

The annual close has extras beyond the monthly checklist:

1099 review

Run the 1099 report for the calendar year. Confirm:

  • All 1099-eligible vendors have their TIN on file
  • Year-to-date payment totals look right
  • Excluded-by-IRS-rule payments (credit-card and third-party-network) are excluded

File 1099s before the IRS deadline (Jan 31 for 1099-NEC, Feb 28 paper / Mar 31 electronic for others).

Tax export

Generate the TXF export for your tax preparer. They handle the actual tax filing.

Accountant copy

If your accountant works in their own copy of Solid (recommended for clean separation): generate an Accountant Copy file at year-end, hand it over, and continue working in your live file. Their adjustments come back as a journal-entry batch you import.

Schedule the next year's budget

Most businesses do a budget for the upcoming year as part of year-end close. See Budgets module — populate-from-prior-actual is the fast starting point.

Roll over the fiscal year

The closing entry zeroes out income/expense for the new year. Solid handles this automatically when you close the last fiscal period of the year. Verify after close: every income and expense account starts the new year at zero; Retained Earnings reflects the cumulative prior-year results.

Common gotchas

Trial balance won't equal at close. Should be impossible — Solid validates DR=CR on every entry. If you genuinely see an imbalance, contact support; this is a corruption-level issue, not a user error.

Closed the period, now I need to edit. Use the post-to-closed-period flow if it's one or two corrections, or re-open if it's a major restatement. Both are logged. Don't overwrite history without it being audited.

Wrong fiscal-year start date. If you discover your fiscal year is configured wrong (Jan 1 when you actually run a July 1 fiscal year), edit Company → Preferences. Existing closes don't shift, but new closes follow the corrected calendar. Older periods stay tagged to whichever fiscal year they originally closed under.

Year-end closing entry didn't post or is wrong. Manual journal entry to fix: DR Income / CR Retained Earnings (positive net income) or vice versa for losses. Mark is_adjusting = 1 so it's traceable.

Accountant edited my closed period and now my reports show different numbers. They posted post-to-closed-period adjustments. Their changes are visible in the audit trail with their user-id stamp. Run reports for "as posted" vs "as reported" to see both views.

Cross-references