Odoo 單據編號如何按年/月/日重置?完整解析序列(Sequence)自動編號機制

全面解析 Odoo 單據編號的重置機制,包括如何通過序列(Sequence)設置按年、月、日重新編號,如何修改前綴、填充位數,以及為何某些模組(如發票)在 UI 中看不到編號設置。本指南適用於 Odoo 17,幫助企業正確規劃編號規則,滿足審計、財務和業務管理需求。

Can Odoo's document numbers really restart by year, month, or day? Let me find out

In enterprise management systems, document numbers often serve not only as identification codes but also frequently carry functions such as process management, financial reconciliation, and audit tracking.

So the question is: In Odoo, can we make document numbers automatically renumber every year, month, or even every day?

Many people who first encounter Odoo often ask:

    • Can sales orders (SO) be renumbered annually, starting from SO/2025/001?
    • Can the invoice number be reset by month?
    • Is there a way to start numbering from 1 every day to meet the serial number requirements of certain industries?
    • What modes does Odoo 17 actually support? Do you still need to write code?

These questions repeatedly appear in communities and forums, so I decided to compile a comprehensive explanation for Odoo 17.

Can Odoo reset numbering by year/month/day?

The answer is Yes! And it's fully built-in, no development required!

​The core mechanism for all numbering in Odoo is Sequence.

Simply turn on developer mode to find these sequences, and the sequences themselves support the following reset periods:

    • Yearly
    • Monthly
    • Daily (by day)
    • No reset

In other words, Odoo can natively achieve:

    • Numbering restarts from 1 each year
    • Numbering restarts from 1 each month
    • Numbering restarts from 1 each day
    • Never reset, continuous cumulative growth

So, can all documents be operated in this way?

Why can't I see the numbering settings in some interfaces, such as invoices?

Many people here are confused:

"I seem to be able to find the sequence for sales orders, but where is the sequence for invoices? Why is it not in the UI?"

Actually, the reason is:

  • Odoo does not place the sequence on the document interface for you to modify
  • But the numbering of all documents still comes from the sequence (ir.sequence)

Therefore, although there is no front-end entry for invoices, bills, and accounting entries, the underlying system is still controlled by the same sequence mechanism.

In other words:

​Not finding the sequence does not mean it does not exist.

​Not being able to find the UI entry does not mean it cannot be modified.

Simply enter Developer Mode → "Settings → Technical → Sequences" to find the numbering rules for all documents.

What else can sequences do?

Many people don't know that Odoo's sequences are actually very powerful; they can not only be reset but also customize numbering formats through variables.

For example, you can set the prefix to:

    • SO/%(year)s/
    • INV/%(year)s/%(month)s/
    • WH/%(year)s/%(month)s/%(day)s/
    • %(company_id)s/%(year)s/%(month)s/N°

You can even customize the number length, for example:

    • 001, 0001, 000001

This enables the construction of a rigorous, audit-compliant, and identifiable numbering system.

A few pitfalls to note

1. Modifying the sequence will not affect historical documents

If the business wishes to "reorganize historical numbers," it is almost always not recommended or even not allowed (especially in the accounting module).

2. In a multi-company environment, each company's sequence is independent

You need to adjust them separately.

3. Modification numbers of certain modules may have legal implications

For example, in some countries, strict regulations on invoices do not allow arbitrary changes to the numbering format.

So, how should Odoo's document numbering be planned?

This is one of the most common doubts when an enterprise is being established:

  • Do you want to reset annually?
  • Is it necessary to include the month?
  • Should each business type (e.g., domestic vs. international orders) have separate sequences?
  • Do you need to add a company code?

These must be determined based on business scenarios, audit rules, and cross-company processes.

Conclusion: Odoo's sequences are very powerful, but you need to use them correctly

If you are planning Odoo's numbering system, you might ask yourself:

  • Does our numbering really need to be reset every year?
  • Are there accounting compliance requirements?
  • Do business personnel need to infer time from the number?
  • Is it necessary to unify the format in the case of multiple companies?

By thinking through these issues and leveraging the flexibility of Odoo sequences, you can implement almost any numbering rule.

关于我们

​我们致力于帮助中小企业实现数字化转型,我们的团队由一群充满激情和创新思维的专业人士组成,他们具备丰富的行业经验和技术专长。

扫一扫获取顾问以及手册

归档
登入 發表評論
Odoo 19 首次登入自動建立資料庫方案:自動生成 Demo 庫的最佳實踐