If you’ve ever opened a trial balance in Odoo and stared at a line called Undistributed Profits/Losses, wondering whether it was an account you should be posting to, a system-generated placeholder, or something your predecessor set up wrong — you weren’t alone. That label has quietly confused accountants since it first appeared in Odoo’s year-end closing workflow, and the confusion got worse as teams across different countries tried to reconcile it with their local accounting standards.
That label is now gone. Odoo has renamed it to Result Brought Forwardin the core accounting module, while introducing country-specific labels for the United States and Canada that align with their respective GAAP frameworks. It’s the kind of change that won’t make headlines, but will prevent real misunderstandings in real accounting departments.
What the Dynamic Line Actually Does
To understand why this rename matters, you need to understand what the line represents. At the end of every fiscal year, a company has a net profit or net loss — the sum of all income minus all expenses. In Odoo, this result appears as a dynamic line in the trial balance and general ledger of the following year.
The word dynamicis important here. This isn’t a journal entry someone posted. It’s a calculated line that Odoo generates automatically to keep the trial balance balanced. Balance sheet accounts (assets, liabilities, equity) carry their balances forward across fiscal years. Profit and loss accounts reset to zero. Without the dynamic line, the trial balance would be out of balance by exactly the amount of the prior year’s net result.
The dynamic line fills that gap temporarily, until an accountant creates a manual appropriation journal entry to formally allocate the profit or loss to the correct equity accounts — retained earnings, legal reserves, dividends payable, or whatever the local accounting framework requires.
Why “Undistributed Profits/Losses” Was the Wrong Label
The old label created two problems. First, it sounded like an account name, which led some users to search for it in the chart of accounts or try to post entries to it directly. It’s not an account. It’s a computed display line. The distinction matters because you can’t debit or credit a dynamic line — you have to create a journal entry using actual appropriation accounts to clear it.
Second, the phrase “Undistributed Profits/Losses” doesn’t exist in most national accounting frameworks. US accountants think in terms of retained earnings and accumulated deficits. Canadian accountants use “unappropriated” retained earnings. European accountants often speak of “results carried forward.” A label that doesn’t match any of these frameworks forces everyone to mentally translate — and mental translation during year-end close is where mistakes happen.
The New Labels, Country by Country
The rename isn’t a simple find-and-replace across the entire system. Odoo has taken a localization-aware approach, assigning different labels depending on the fiscal localization:
Core Accounting (International)
The dynamic line in the trial balance and general ledger is now labeled Result Brought Forward. This is the default for any Odoo database that doesn’t use a US or Canadian localization package. The term aligns with IFRS-influenced accounting terminology used across Europe, Asia, and most of the rest of the world.
United States
For US localization, the Current Year Earnings account now maps to two labels: Accumulated Retained Earnings and Profit or Loss Appropriation. These are standard GAAP terms that any US-trained CPA will recognize immediately — no translation required.

Canada
Canadian databases now show Retained Earnings/Deficits, Unappropriated as the Current Year Earnings mapping. This matches the terminology used in Canadian ASPE and IFRS-based reporting, where the distinction between appropriated and unappropriated retained earnings is a fundamental classification.

The Year-End Workflow Stays the Same
Nothing about the underlying mechanics has changed. The dynamic line still appears automatically when you view the trial balance for a period that follows an unappropriated fiscal year. You still clear it by creating a manual journal entry that debits or credits one or more appropriation accounts and posts the corresponding amounts to equity accounts.
What changes is the cognitive load. When a US accountant opens the trial balance and sees “Accumulated Retained Earnings” instead of “Undistributed Profits/Losses,” they immediately know what they’re looking at and what to do with it. They don’t need to check the documentation, ask a colleague, or wonder if the system is misconfigured.

Why This Pattern Matters for ERP Localization
ERP systems have historically taken one of two approaches to international accounting terminology: either use a single generic label everywhere and hope users figure it out, or build entirely separate accounting modules for each country. Odoo is carving out a middle path — a shared architecture with localization-specific labels that adapt the interface to local accounting culture without forking the codebase.
This latest rename is a small example of that pattern, but it’s an instructive one. The underlying concept (a dynamic line that represents unallocated prior-year results) is universal. The words accountants use for that concept are not. Getting the words right doesn’t change what the software does. It changes whether accountants trust what they’re seeing — and in accounting, trust is the whole game.
The Broader Accounting Overhaul
This rename is part of a larger pattern of accounting refinements that have been landing across Odoo’s documentation and feature set. Over the past few weeks, the platform has introduced the Appropriation account type, remapped Profit and Loss statements for US GAAP, and added self-billing to the vendor bill workflow. Each change is individually small. Together, they represent a sustained push to make Odoo’s accounting module feel native to accountants in every market it serves — not like a European system with regional patches bolted on.
For teams running multi-country operations on a single Odoo database, that distinction is the difference between an accounting module your team fights with and one they forget is even there — which is exactly what good accounting software should be.