Skip to main content
Pending validationOdoo 20.0Community and Enterprise

How to create an account or reclassify a first-degree account

What is it for?​

The fiscaldoo chart of accounts comes with the SNC accounts. A detail sub-account of the company's own (for example 622710, under 6227) is created by hand. Once the account has journal entries, its code can no longer be typed directly: fiscaldoo makes you go through Recode account, with a reason, and records each change. A first-degree account (SNC code with 2 significant digits, such as 14) does not take new entries: fiscaldoo refuses them, because the SAF-T cannot represent it with movements. The Reclassify a first-degree account assistant is for first-degree accounts that already had movements (for example, from an old import) and moves them to a movement sub-account.

These procedures create no journal entries and do not change balances: they change the code, the target account of draft lines and the change log.

Pending validation by a certified accountant: choice of the taxonomy and code of each new account, and treatment of lines already posted on a first-degree account.

When to use it?​

  • The company needs a sub-account that the official chart does not have (for example to separate an expense).
  • You posted documents on an account with the wrong code, or outside the SNC chart, and want to correct the code without losing the entries.
  • You want to know who changed the code of an account, when and why.
  • The SAF-T refuses a first-degree account with movements.

If what you want is to choose the accounts' taxonomy, see How to assign the SNC taxonomies to accounts. If the error is in a journal entry and not in the account code, use the reversal.

Where to find it?​

  • Accounting › Configure › General › Chart of accounts, to create the account and to open an account (Portugal tab, Recode account button).
  • Accounting › Configure › Plan and legal rules › Account change history and › Reclassify a first-degree account: the Administrator sees these two items in the bar; the Certified accountant only with developer mode on (the Auditor sees only the history there; the Accountant sees neither). Without developer mode, the history of an account can also be seen in the messages on the account record.

Before you start​

  • To create an account and view the history: Certified Accountant / Fiscal Manager profile (or Administrator). With the Accountant profile, the Chart of accounts item does not appear in the bar and the account record, opened from a link, does not have the Recode account button.
  • To recode an account with entries and to reclassify a first-degree account: Fiscal officer profile. Both steps ask for a reason, which is kept in the audit log.
  • Confirm the active company: the chart of accounts is per company.
  • Choose the code before you start: digits only, starting with the SNC class (1 to 9), and without repeating an existing code.

How to use it​

Create an account​

  1. Open Accounting › Configure › General › Chart of accounts and click New.
  2. Type the Code (for example 622710), the Account Name (“Serviços de formadores”, trainer services) and choose the Type (“Expenses”). The Parent account is filled in on its own from the code prefix: here 622 Serviços especializados.
  3. In the Portugal tab, choose the Taxonomy. The field only suggests a taxonomy on its own when the code prefix has exactly one candidate: with several, it stays empty and the choice is yours. In this example, type “especializados - Outros” and choose S363 - Fornecimentos e serviços externos - Serviços especializados - Outros, the taxonomy the AT publishes for the codes 6227 and 6228.
  4. Save. The Portugal tab shows Own extension of the SNC chart ticked (the account is a detail sub-account you created, not an official account), Derives from account 622 and the SAF-T Grouping category “GM - Movement account (general accounting)”.

The account created has no entries: as long as it has none, the code can still be edited on the record.

Recode an account that already has journal entries​

  1. Open the account in Chart of accounts and go to the Portugal tab. On an account with entries the Code is read-only and the Recode account and Change account type buttons appear. In the example, the account 629200 Formação profissional has an entry of €100.00, posted in OD/2026/00105.
  2. Click Recode account. The window shows the account, the Current code, the New code and the Reason. Type 622720 and the reason (“Código fora do plano SNC: passa para 6227, serviços especializados”) and click Recode.
  3. The record now shows the new code (622720), the balance stays the same (€100.00) and the record's message log shows “Account recoded: 629200 → 622720 (reason: …)”.
  4. Check the Taxonomy: the one the account had may no longer match the new code, and the record warns you (see “Common problems”). In the example, change it to S363 - … - Outros, which matches 6227, and save.

The Change account type button, next to it, changes the type of an account with entries (also with a reason and only for the Fiscal officer) and changes the balance sheet and the income statement retroactively: it is not covered in this article.

View the change history​

Open Configure › Plan and legal rules › Account change history (developer mode). The list shows, per change, the Date/time, the Account name, the Changed field, the Value before and the New value, the User, the Reason and the Origin (“UI” when it comes from the screen). Nothing is created, edited or deleted by hand: the lines are created on their own by each recoding.

Reclassify a first-degree account​

  1. Open Configure › Plan and legal rules › Reclassify a first-degree account (developer mode).
  2. In First-degree account, choose the account; the list only offers accounts with 2 significant digits, for example 12 Depósitos à ordem. The Movement sub-account is filled in with the existing one (121) and, if missing, is created on reclassification.
  3. Type the Reason and click Reclassify. Beforehand, the window shows what is going to happen: Draft journal items to move, Posted journal items (stay) and Journals using the account, and the option Move the posted balance with a correction entry (unticked by default, and only effective if there are posted lines). On a first-degree account with no movements, such as 12 Depósitos à ordem in step 2, the three counters are at 0.
  4. The result says how many lines and journals moved to the sub-account and how many posted lines stay on the first-degree account. In the example: “0 draft journal item(s) and 0 journal(s) moved to 121. 0 posted item(s) stay on 12: they cannot be changed (certified accounting) and the SAF-T refuses that account while they are in the period — ask the certified accountant how to handle them.” The sub-account 121 Depósitos à ordem already existed, so no account was created.

Expected result​

  • New account: it exists in the chart with the right parent account, the chosen taxonomy and the “Own extension of the SNC chart” mark. There are no entries.
  • Recoding: the code changes, the balance and the entries stay (account 622720 still has the €100.00 of OD/2026/00105, as a debit, with the credit counterpart on 111 Caixa) and there is a new line in the history.
  • Reclassification: draft lines and journals move to the sub-account (in the example, 0 and 0, and the sub-account 121 already existed). Posted lines are never changed (the accounting is certified): they stay on the first-degree account and the SAF-T keeps refusing that account while they are in the period. There is an option Move the posted balance with a correction entry, which creates a new journal entry, dated today, moving the balance to the sub-account.
  • What could not be proven on screen. A first-degree account can only have lines if it already had them before: fiscaldoo refuses to post on it (“Account 12 is an aggregating account; choose a movement account (121). Entries can only be posted to movement accounts (the SAF-T and the SNC do not allow them on aggregating accounts).”), both in draft and posted, so no test lines can be created. Moving draft lines and the correction entry for posted lines are described from the on-screen text and were not run. Pending validation on screen: reclassification with draft and posted lines and the correction entry (such data only exists in migrated databases). Pending validation by a certified accountant: how to handle the lines already posted.

Important notes​

Accounts of periods already exported cannot be recoded​

fiscaldoo refuses recoding when the account has entries in a closed period or one already exported to SAF-T. In that case, archive the account and create another with the right code: the old entries stay on the archived account.

The code is not chosen at random​

A code outside the official SNC chart (for example 629100, when the AT only publishes the sub-groups 621 to 626) has no matching taxonomy: the account is left without a consistent taxonomy and the SAF-T and the IES cannot put it on the right line. Choose the code within an official sub-group.

Common problems​

“The account code "12AB34" must contain digits only”​

  • Symptom: when saving a new account, Validation Error window: “The account code "12AB34" must contain digits only (SNC classes 1 to 9). Remove the letters or symbols.”
  • Cause: the code has letters or symbols.
  • What to do: type digits only, starting with 1 to 9.

“Account codes must be unique”​

  • Symptom: “Account codes must be unique. You can't create accounts with these duplicate codes: 622710.”
  • Cause: an account with that code already exists in the company.
  • What to do: choose another code, or use the account that already exists.

“Enter a new code, different from the current one”​

  • Symptom: Invalid Operation window when recoding with the same code: “Enter a new code, different from the current one (629100).”
  • What to do: type the new code in the window and click Recode.

“Some required fields are empty” when recoding​

  • Cause: the Reason is empty.
  • What to do: type the reason and click again.

“cannot be recoded: it has entries in … a period already exported to SAF-T”​

  • Symptom: Validation Error: “Account 2111 Clientes gerais cannot be recoded: it has entries in 01/08/2026 – 31/08/2026, a period already exported to SAF-T (…). Archive it and create a new account instead.”
  • Cause: the account has entries in a period already exported or closed.
  • What to do: archive the account and create a new account with the right code.

“The taxonomy … does not match the account”​

  • Symptom: after recoding, the record shows “The taxonomy “S357 - …” does not match the account 622720: the Tax Authority publishes it for other account codes, so the balance of this account would go to the wrong line of the balance sheet, the IES and the SAF-T.”
  • What to do: choose one of the taxonomies that match the code (in the example, S363). Only the system administrator can confirm an exception, in the Portugal tab.

“Give the reason for the reclassification” or “Choose the first-degree account to reclassify”​

  • Cause: the Reclassify a first-degree account window was confirmed without an account or without a reason.
  • What to do: choose the account, type the reason and click Reclassify again.

“The account … is a first-degree account and cannot take entries”​

  • Symptom: when posting on an account with a 2-digit SNC code (for example 12), “Account 12 is an aggregating account; choose a movement account (121). Entries can only be posted to movement accounts (the SAF-T and the SNC do not allow them on aggregating accounts).”
  • What to do: post on a movement sub-account (here 121). If the first-degree account already had movements from before, use Reclassify a first-degree account.

“The account code … does not start with any official account of the SNC chart”​

  • Symptom: when creating an account with a code outside the chart (for example 190000), “The account code "190000" does not start with any official account of the SNC chart (no official account starts with "19"). The closest valid prefix is "14" (Outros instrumentos financeiros): create the detail account under it, for example "140000".”
  • What to do: choose a code within an official sub-group.
Versions: Odoo 20.0Community and Enterprisefiscaldoo 20.0 (master f16f4a3e)ID DOC-0078
Was this page helpful?