Odoo is the world's easiest all-in-one management software. It includes hundreds of business apps:
CRM | e-Commerce | Accounting | Inventory | PoS | Project management | MRP | etc.
Here in Czech Republic the invoices have 3 dates.
Tax Due Date
The third one is the date when the sale was made (as I understand right from the accountant) so it would be the Sale Confirm date.
Is there an option or a module that does this or it takes customization?
Before you start customizing, you should know what this is all about and what your accountant tries to explain to you.
This issue is about VAT and the system how tax is calculated, applied and tax returns are created and filed. All EU countries have the same VAT rules based on the EU Directives on VAT, but also most other countries with a VAT system have more or less the same rules.
The rule relevant here is about the time, when a tax position has to be posted. The relevant time for a taxable event in the case of a delivery of goods or services for example is usually the time of the delivery. This time may be different from the time of the invoice and in some cases, these two may not fall into the same tax period. The technical term for this is "time of chargeable event".
Delivery of goods: 31 August 2018
Date of Invoice: 1 September 2018
VAT Tax Period: monthly
In this case the the tax on the invoice has to be filed (and therefore is due) in the tax return for the month August and not in September.
How to handle this in Odoo?
It must be ensured that the posting (accounting) date of the journal entries of the invoice is the time of the delivery in our example, means a different accounting date (31 August) from the invoice date (1 Sept). In Odoo 8.0 you can do that in the invoice form on the tab "Other info" and there you can force the proper accounting (=tax) period.
From Odoo 9.0 on there is no accounting period anymore, so you have to set a different accounting date than the invoice date. In the community editions I can remember that this field "accounting date" was available also on the tab "Other info", but meanwhile it has disappeared. The field "date" in the model account.invoice (with the description "accounting date") was made read-only and is not displayed anymore in the form view in the "Other info" tab. Maybe somebody knows when and why this regression happened.
According to my knowledge and experience, but I'm not a developer, you should create a little module which makes this field editable and displays it again in the "Other info" tab. By default, the accounting date should be the same as the invoice date. By this I assume that the journal entries of the invoice posting are still posted on the date of the field "date" and not on the date of the field "date_invoice" of the account.invoice model.
This is the correct way to ensure that your tax accounting and filing is handled properly.
And if you are a nice guy and want to give something back to the community, please make a pull request for such a module on the OCA github repository.