Year-end closing

Year-end closing is vital for maintaining financial accuracy, complying with regulations, making informed decisions, and ensuring transparency in reporting.

See also

Tax return

Fiscal years

By default, the fiscal year is set to last 12 months and ends on December 31st. However, its duration and end date can vary due to cultural, administrative, and economic considerations.

To modify these values, go to Accounting ‣ Configuration ‣ Settings. Under the Fiscal Year section, change the Last Day field if necessary.

If the period lasts more than or less than 12 months, enable Fiscal Years and Save. Then click Fiscal Years, click New, and give it a Name and both a Start Date and End Date.

Fiscal years can also be managed from Accounting ‣ Configuration ‣ Accounting ‣ Fiscal Year.

Note

Once the set fiscal period is over, Odoo automatically reverts to the default periodicity, considering the value specified in the Last Day field.

Year-end checklist

Before closure

Before closing a fiscal year, ensure that everything is accurate and up-to-date:

Closing a fiscal year

Then, to close the fiscal year:

  • Run a tax report, and verify that all tax information is correct.

  • Reconcile all accounts on the balance sheet:

    • Update the bank balances in Odoo according to the actual balances found on the bank statements.

    • Reconcile all transactions in the cash and bank accounts by running the aged receivables and aged payables reports.

    • Audit all accounts, fully understanding all transactions and their nature, including loans and fixed assets.

    • Optionally, match payments to validate any open vendor bills and customer invoices with their payments. While this step is optional, it could assist the year-end closing process if all outstanding payments and invoices are reconciled, potentially finding errors or mistakes in the system.

Next, the accountant likely verifies balance sheet items and book entries for:

  • year-end manual adjustments,

  • work in progress,

  • depreciation journal entries,

  • loans,

  • tax adjustments,

  • etc.

During the year-end audit, the accountant may print paper copies of all balance sheet items (e.g., loans, bank accounts, prepayments, sales tax statements) to compare them against the balances recorded in Odoo.

Tip

As part of this process, setting a lock date to the last day (inclusive) of the preceding fiscal year is good practice. This ensures that journal entries with an accounting date on or before the lock date cannot be created or modified during the audit.

Lock dates

Setting a lock date prevents modifications to any posted journal entries with an accounting date on or before the lock date. It also prevents posting new entries with an accounting date on or before the lock date; in such cases, the entry is postponed to a later date in accordance with its journal’s sequence.

To set the lock dates, go to Accounting ‣ Accounting ‣ Lock Dates. The Lock your Fiscal Period window groups them in two:

Management Closing
  • Sales Lock Date — blocks customer entries only.

  • Purchase Lock Date — blocks vendor entries only.

  • Tax Return Lock Date — blocks entries with taxes, see tax lock date.

Account Period Closing
  • Lock Date for All Users — blocks every entry up to and including that date. It is the field shown as Global Lock Date in the settings.

  • Hard Lock Date — same effect, but irreversible and without any possible exception.

Click Save to apply them.

The same fields are also available under Accounting ‣ Configuration ‣ Settings, in the Fiscal Period Closing section.

Warning

The Hard Lock Date is irreversible and is intended to ensure the data inalterability required to comply with accounting regulations in certain countries. It cannot be changed or overridden, regardless of access rights, so set it only once the period is confirmed correct.

screenshot: accounting-year-end-lock-dates
menu
Accounting ‣ Accounting ‣ Lock Dates
shows
The "Lock your Fiscal Period" dialog with the "Management Closing" group (Sales Lock Date, Purchase Lock date, Tax Return Lock Date) and the "Account Period Closing" group (Lock Date for All Users, Hard Lock Date), and the Save button.
highlight
The "Account Period Closing" group (red frame).
data
Lock Date for All Users set to 12/31/2025, Hard Lock Date empty.
module
om_fiscal_year
notes
English UI, light theme, dialog only.

Current year’s earnings

Odoo uses a unique account type called current year’s earnings to display the difference between the income and expense accounts.

Note

The chart of accounts can only contain one account of this type. By default, it is a 999999 account named Undistributed Profits/Losses.

To allocate the current year’s earnings, create a new miscellaneous entry with a date set to the end of the fiscal year to book them to any equity account.

Then, verify whether the current year’s earnings on the balance sheet correctly show a zero balance. If so, a Hard Lock Date can be set to the last day of the fiscal year in Accounting ‣ Accounting ‣ Lock Dates.