All posts
Functional5 min read

Performing Year-End Closing Entries in Odoo Accounting

Execute the year-end close in Odoo - posting closing entries for P&L accounts, zeroing retained earnings, setting the lock date, and opening the new fiscal year correctly.

Year-End Closing in Odoo Accounting#

Year-end closing zeros out income and expense accounts, transfers net income to retained earnings, and locks the fiscal year for audit. Odoo handles most of this automatically but requires a few deliberate steps.

Step 1 - Complete All Entries Before Closing#

Before closing:

  • Post all outstanding vendor bills and customer invoices
  • Reconcile all bank accounts to zero unreconciled items
  • Post all depreciation entries for the year
  • Process all prepaid expense and deferred revenue recognitions
  • Run and review the balance sheet and P&L - confirm they look correct

Step 2 - Run the Closing Report#

Accounting → Reporting → Year-End Closing:

Odoo shows:

  • Total P&L for the year
  • Accounts to be zeroed (revenue and expense accounts)
  • Proposed retained earnings movement

Review these numbers against expectations before proceeding.

Step 3 - Post the Closing Entry#

Accounting → Accounting → Actions → Close Year (or the button in the Year-End Closing report):

Odoo posts a single journal entry:

  • Debit: each revenue account (zeroing them to 0)
  • Credit: each expense account (zeroing them to 0)
  • Net difference → Credit (if net income) or Debit (if net loss): Retained Earnings / Undistributed Profit account

This single entry brings all P&L accounts to zero and adds net income to the balance sheet.

Step 4 - Set the Lock Date#

Accounting → Configuration → Settings → Lock Date:

  • Advisor Lock Date: today (or Dec 31 of the closing year)
  • User Lock Date: same date

No new entries can be posted before the lock date. This protects the closed year from accidental modification.

Step 5 - Open the New Fiscal Year#

Odoo automatically opens the new fiscal year when the lock date is set. Verify:

  • Balance sheet opening balances in the new year = closing balances from prior year
  • All asset, liability, and equity accounts carry forward correctly
  • P&L accounts start at zero in the new year

Audit Preparation#

After closing:

  1. Export Trial Balance as of Dec 31 → send to auditors
  2. Export General Ledger for the year → for detailed transaction review
  3. Export FEC or country-specific audit file (if required)
  4. Lock the advisor lock date to prevent any late adjustments without finance approval

Prior-Year Adjustments#

If an audit adjustment is needed after year-end close:

  1. Remove the advisor lock date temporarily
  2. Post the adjustment in the closed year
  3. Re-lock the date
  4. The change flows through to retained earnings in the new year automatically

Try ERPeek on your own Odoo module - ask questions, scaffold tests, and explore your codebase in plain language.

Get started free