[IMP] l10n: odoo 18 update of the german l10n
Based on information from CBE and PR #11417
X-original-commit: abdcb372ba
@ -2,222 +2,150 @@
|
|||||||
Germany
|
Germany
|
||||||
=======
|
=======
|
||||||
|
|
||||||
German Chart of Accounts
|
Accounting
|
||||||
========================
|
==========
|
||||||
|
|
||||||
The chart of accounts SKR03 and SKR04 are both supported in Odoo. You can choose the
|
Chart of accounts
|
||||||
one you want by going in :menuselection:`Accounting --> Configuration` then choose the
|
-----------------
|
||||||
package you want in the Fiscal Localization section.
|
|
||||||
|
|
||||||
Be careful, you can only change the accounting package as long as you have not created any accounting entry.
|
Both SKR03 and SKR04 charts of accounts are supported in Odoo. When you create a new Odoo Online
|
||||||
|
database, SKR03 is installed by default.
|
||||||
|
|
||||||
.. tip::
|
Verify which is installed by going to :menuselection:`Accounting --> Configuration --> Settings`
|
||||||
|
and checking the :guilabel:`Package` field under the :guilabel:`Fiscal Localization` section.
|
||||||
|
|
||||||
When you create a new Odoo Online database, the SKR03 is installed by default.
|
.. warning::
|
||||||
|
Selecting another package is only possible if you have not created an accounting entry. If one
|
||||||
|
was posted, a new company or database must be set up to select another package. In
|
||||||
|
addition, all journal entries will need to be created again.
|
||||||
|
|
||||||
German Accounting Reports
|
Reports
|
||||||
=========================
|
-------
|
||||||
|
|
||||||
Here is the list of German-specific reports available on Odoo Enterprise:
|
The following German-specific reports available on Odoo Enterprise:
|
||||||
|
|
||||||
- Balance Sheet
|
- Balance Sheet
|
||||||
- Profit & Loss
|
- Profit & Loss
|
||||||
- Tax Report (Umsatzsteuervoranmeldung)
|
- Tax Report (Umsatzsteuervoranmeldung)
|
||||||
- Partner VAT Intra
|
- EC Sales List
|
||||||
|
- Intrastat
|
||||||
|
|
||||||
Export from Odoo to Datev
|
Exporting entries from Odoo to DATEV
|
||||||
=========================
|
------------------------------------
|
||||||
|
|
||||||
It is possible to export your accounting entries from Odoo to Datev. To be able to use this
|
Provided that one of the German :ref:`fiscal localization packages
|
||||||
feature, the german accounting localization needs to be installed on your Odoo Enterprise database.
|
<fiscal_localizations/accounting>` is installed, you can export your accounting entries from Odoo to
|
||||||
Then you can go in :menuselection:`Accounting --> Reporting --> General Ledger` then click on the
|
DATEV from the general ledger.
|
||||||
**Export Datev (csv)** button.
|
|
||||||
|
|
||||||
.. _germany/pos:
|
Two types of exports are needed: first the DATEV ATCH export, then the DATEV DATA export.
|
||||||
|
|
||||||
Point of Sale in Germany: Technical Security System
|
|
||||||
===================================================
|
|
||||||
|
|
||||||
The **Kassensicherungsverordnung** (The Act on Protection against Manipulation of Digital Records)
|
|
||||||
requires that electronic record-keeping systems - including the :doc:`point of sale
|
|
||||||
</applications/sales/point_of_sale>` systems - must be equipped with a **Technical Security System**
|
|
||||||
(also called **TSS** or **TSE**).
|
|
||||||
|
|
||||||
Odoo offers a service that is compliant with the help of `fiskaly <https://fiskaly.com>`_, a
|
|
||||||
*cloud-based solution*.
|
|
||||||
|
|
||||||
.. important::
|
|
||||||
Since this solution is cloud-based, a working internet connection is required.
|
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
The only VAT rates allowed are given by fiskaly. You can check these rates by consulting:
|
Both are needed at different stages to transfer the data correctly to DATEV, as DATEV works with
|
||||||
`fiskaly DSFinV-K API: VAT Definition
|
two interfaces, one for clients (DUO - DATEV Unternehmen Online) and one for tax advisors (DATEV
|
||||||
<https://developer.fiskaly.com/api/dsfinvk/v0/#tag/VAT-Definition>`_.
|
Rechnungswesen).
|
||||||
|
|
||||||
Configuration
|
1. DATEV ATCH
|
||||||
-------------
|
~~~~~~~~~~~~~
|
||||||
|
|
||||||
Modules installation
|
Go to :menuselection:`Accounting --> Reporting --> General Ledger`, click the :icon:`fa-cog`
|
||||||
~~~~~~~~~~~~~~~~~~~~
|
(:guilabel:`Actions`) button, and select :guilabel:`Datev ATCH (zip)`.
|
||||||
|
|
||||||
#. If your database was created before June 2021, :ref:`upgrade <general/upgrade>` your **Point of
|
.. image:: germany/datev-export.png
|
||||||
Sale** app (`point_of_sale`) and the **Restaurant** module (`pos_restaurant`).
|
:alt: General ledger's actions menu with DATEV exports
|
||||||
#. :ref:`Install <general/install>` the **Germany - Certification for Point of Sale**
|
|
||||||
(`l10n_de_pos_cert`) and **Germany - Certification for Point of Sale of type restaurant**
|
|
||||||
(`l10n_de_pos_res_cert`) modules.
|
|
||||||
|
|
||||||
.. tip::
|
Upload the downloaded ZIP file via the `DATEV Belegtransfer software <https://www.datev.de/web/de/service-und-support/software-bereitstellung/download-bereich/betriebliches-rechnungswesen/belegtransfer>`_.
|
||||||
If these modules are not listed, :ref:`update the app list <general/install>`.
|
|
||||||
|
|
||||||
.. image:: germany/pos-upgrade.png
|
If you do not have the DATEV Belegtransfer software installed on your computer, ask your tax advisor
|
||||||
:align: center
|
to help you with this.
|
||||||
:alt: Upgrading Odoo Point of Sale from the Apps dashboard
|
|
||||||
|
|
||||||
Register your company at the financial authority
|
.. warning::
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
The DATEV ATCH ZIP file includes the files (reports) linked to an Odoo invoice or bill. For
|
||||||
|
customer invoices, the file must have been generated by using the :guilabel:`Send` button. For
|
||||||
|
vendor bills, the file must have been received via an email alias or uploaded by using the
|
||||||
|
:guilabel:`Upload` button.
|
||||||
|
|
||||||
To register your company, go to :menuselection:`Settings --> General Settings --> Companies -->
|
.. admonition:: DATEV ATCH ZIP file
|
||||||
Update Info`, fill out the following fields and *Save*.
|
|
||||||
|
|
||||||
- **Company name**
|
The ZIP file contains two types of files:
|
||||||
- Valid **address**
|
|
||||||
- **VAT** number
|
|
||||||
- **St.-Nr** (Steuernummer): this number is assigned by the tax office to every taxable natural or
|
|
||||||
legal person. (e.g., `2893081508152`)
|
|
||||||
- **W-IdNr** (Wirtschafts-Identifikationsnummer): this number is used as a permanent
|
|
||||||
identification number for economically active persons.
|
|
||||||
|
|
||||||
You can then **register your company through fiskaly** by opening the *fiskaly* tab and clicking on
|
- the individual invoice/bill files (PDF, JPEG, etc.) for the selected period on the general
|
||||||
the *fiskaly Registration* button.
|
ledger, and
|
||||||
|
- a :file:`document.xml` file used to generate a unique ID (GUID) for each file.
|
||||||
|
|
||||||
.. image:: germany/fiskaly-registration.png
|
These unique IDs are essential as they allow DATEV to automatically link the files to the
|
||||||
:align: center
|
individual journal items, which will be imported with the DATEV DATA file in the next step.
|
||||||
:alt: Button to register a company through fiskaly in Odoo
|
|
||||||
|
|
||||||
.. tip::
|
2. DATEV DATA
|
||||||
If you do not see the *fiskaly Registration* button, make sure that you *saved* your company
|
~~~~~~~~~~~~~
|
||||||
details and are not in *editing mode* anymore.
|
|
||||||
|
|
||||||
Once the registration has been finalized, new fields appear:
|
Go to :menuselection:`Accounting --> Reporting --> General Ledger`, click the :icon:`fa-cog`
|
||||||
|
(:guilabel:`Actions`) button, and select :guilabel:`Datev DATA (zip)`.
|
||||||
|
|
||||||
- **fiskaly organization ID** refers to the ID of your company at the fiskaly side.
|
Transfer the downloaded ZIP file to your tax advisor. They should import the ZIP file into DATEV
|
||||||
- **fiskaly API key** and **secret** are the credentials the system uses to access the services
|
Rechnungswesen.
|
||||||
offered by fiskaly.
|
|
||||||
|
|
||||||
.. image:: germany/fiskaly-keys.png
|
Check with your tax advisor how often they need these files.
|
||||||
:align: center
|
|
||||||
:alt: fiskaly keys as displayed on Odoo
|
|
||||||
|
|
||||||
.. note::
|
.. admonition:: DATEV ATCH ZIP file
|
||||||
It is possible to request new credentials if there is any issue with the current ones.
|
|
||||||
|
|
||||||
Create and link a Technical Security System to your PoS
|
The ZIP file contains three CSV files:
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
.. image:: germany/create-tss.png
|
- the :file:`EXTF_customer_accounts.csv` file containing all information related to your
|
||||||
:align: right
|
customers,
|
||||||
:alt: Create TSS option from a point of sale
|
- the :file:`EXTF_vendor_accounts.csv` file containing all information related to your vendors,
|
||||||
|
and
|
||||||
To use your point of sale in Germany, you first have to create a :abbr:`TSS (Technical Security
|
- the :file:`EXTF_accounting_entries.csv` containing all journal items for the period defined on
|
||||||
System)` for it.
|
the general ledger, as well as the unique IDs (GUID) so that the journal items can be linked to
|
||||||
|
the files inside the DATEV ATCH ZIP file.
|
||||||
To do so, go to :menuselection:`Point of Sale --> Configuration --> Point of Sale`, open the point
|
|
||||||
of sale you want to edit, then check the box next to **Create TSS** and *Save*.
|
|
||||||
|
|
||||||
.. image:: germany/tss-ids.png
|
|
||||||
:align: right
|
|
||||||
:alt: Example of TSS ID and Client ID from fiskaly in Odoo Point of Sale
|
|
||||||
|
|
||||||
Once the creation of the TSS is successful, you can find your **TSS ID** and **Client ID** under the
|
|
||||||
*fiskaly API* section.
|
|
||||||
|
|
||||||
- **TSS ID** refers to the ID of your TSS at fiskaly's side.
|
|
||||||
- **Client ID** refers to your PoS but at fiskaly's side.
|
|
||||||
|
|
||||||
DSFinV-K
|
|
||||||
--------
|
|
||||||
|
|
||||||
.. image:: germany/dsfinv-k-export.png
|
|
||||||
:align: right
|
|
||||||
:alt: Menu to export DSFinV-K
|
|
||||||
|
|
||||||
Whenever you close a PoS session, the orders' details are sent to the :abbr:`DSFinV-K (Digitale
|
|
||||||
Schnittstelle der Finanzverwaltung für Kassensysteme)` service of fiskaly.
|
|
||||||
|
|
||||||
In case of an audit, you can export the data sent to DSFinV-K by going to :menuselection:`Point of
|
|
||||||
Sale --> Orders --> DSFinV-k exports`.
|
|
||||||
|
|
||||||
These fields are mandatory:
|
|
||||||
|
|
||||||
- **Name**
|
|
||||||
- **Start Datetime** (export data with dates larger than or equal to the given start date)
|
|
||||||
- **End Datetime** (export data with dates smaller than or equal to the given end date)
|
|
||||||
|
|
||||||
Leave the **Point of Sale** field blank if you want to export the data of all your points of sale.
|
|
||||||
Specify a Point of Sale if you want to export this specific PoS' data only.
|
|
||||||
|
|
||||||
The creation of a DSFinV-K export triggers on export at fiskaly's side.
|
|
||||||
|
|
||||||
.. image:: germany/dsfinv-k-export-fields.png
|
|
||||||
:align: center
|
|
||||||
:alt: Pending DSFinV-K export on Odoo
|
|
||||||
|
|
||||||
As you can see, the **State** is *Pending*. This means that the export has been successfully
|
|
||||||
triggered and is being processed. You have to click on *Refresh State* to check if it is ready.
|
|
||||||
|
|
||||||
.. _germany/gobd:
|
.. _germany/gobd:
|
||||||
|
|
||||||
German Tax Accounting Standards: Odoo's guide to GoBD Compliance
|
GoBD compliance
|
||||||
================================================================
|
---------------
|
||||||
|
|
||||||
**GoBD** stands for *Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung von Büchern,
|
**GoBD** stands for *Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung von Büchern,
|
||||||
Aufzeichnungen und Unterlagen in elektronischer Form sowie zum Datenzugriff*.
|
Aufzeichnungen und Unterlagen in elektronischer Form sowie zum Datenzugriff*. In short, it is a
|
||||||
In short, it is a **guideline for the proper management and storage of books, records, and documents
|
guideline for the proper management and storage of books, records, and documents in electronic form,
|
||||||
in electronic form, as well as for data access**, that is relevant for the German tax authority, tax
|
as well as for data access, that is relevant for the German tax authority, tax declaration, and
|
||||||
declaration, and balance sheet.
|
balance sheet.
|
||||||
|
|
||||||
These principles have been written and published by the Federal Ministry of Finance (BMF) in
|
These principles have been written and published by the Federal Ministry of Finance (BMF) in
|
||||||
November 2014. Since January 2015, **they have become the norm** and replace previously accepted
|
November 2014. Since January 2015, **they have become the norm** and have replaced previously
|
||||||
practices linked to computer-based accounting. Several changes have been made by the BMF in 2019 and
|
accepted practices linked to computer-based accounting. Several changes have been made by the BMF in
|
||||||
January 2020 to specify some of the content and due to the development of digital solutions (cloud
|
2019 and January 2020 to specify some of the content due to the development of digital solutions
|
||||||
hosting, paperless companies, etc.).
|
(cloud hosting, paperless companies, etc.).
|
||||||
|
|
||||||
.. important::
|
.. important::
|
||||||
Odoo gives you **the means to be compliant with GoBD**.
|
Odoo is certified **GoBD-compliant**.
|
||||||
|
|
||||||
What do you need to know about GoBD when relying on accounting software?
|
Understanding GoBD in relation to accounting software
|
||||||
------------------------------------------------------------------------
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
.. note::
|
The **GoBD is binding for companies that have to present accounts**, which includes SMEs,
|
||||||
If you can, the best way to understand GoBD is to Read the `Official GoBD text
|
freelancers, and entrepreneurs, to the financial authorities. As such, **the taxpayer himself is the
|
||||||
<https://ao.bundesfinanzministerium.de/ao/2021/Anhaenge/BMF-Schreiben-und-gleichlautende-Laendererlasse/Anhang-64/anhang-64.html>`_.
|
sole responsible** for the complete and exhaustive keeping of fiscal-relevant data (above-mentioned
|
||||||
It is a bit long but quite readable for non-experts. But in short, here is what to expect:
|
|
||||||
|
|
||||||
The **GoBD is binding for companies that have to present accounts, which includes SMEs, freelancers,
|
|
||||||
and entrepreneurs, to the financial authorities**. As such, **the taxpayer himself is the sole
|
|
||||||
responsible** for the complete and exhaustive keeping of fiscal-relevant data (above-mentioned
|
|
||||||
financial and related data).
|
financial and related data).
|
||||||
|
|
||||||
Apart from software requirements, the user is required to ensure Internal control systems (*in
|
Apart from software requirements, the user is required to ensure internal control systems (*in
|
||||||
accordance with sec. 146 of the Fiscal Code*):
|
accordance with sec. 146 of the Fiscal Code*):
|
||||||
|
|
||||||
- Access rights control;
|
- access rights control;
|
||||||
- Segregation of Duties, Functional separating;
|
- segregation of duties, functional separating;
|
||||||
- Entry controls (error notifications, plausibility checks);
|
- entry controls (error notifications, plausibility checks);
|
||||||
- Reconciliation checks at data entry;
|
- reconciliation checks at data entry;
|
||||||
- Processing controls;
|
- processing controls; and
|
||||||
- Measures to prevent intentional or unintentional manipulation of software, data, or documents.
|
- measures to prevent intentional or unintentional manipulation of software, data, or documents.
|
||||||
|
|
||||||
The user must distribute tasks within its organization to the relevant positions (*control*) and
|
The user must distribute tasks within their organization to the relevant positions (*control*) and
|
||||||
verify that the tasks are properly and completely performed (*supervision*). The result of these
|
verify that the tasks are properly and completely performed (*supervision*). The result of these
|
||||||
controls must be recorded (*documentation*), and should errors be found during these controls,
|
controls must be recorded (*documentation*), and should errors be found during these controls,
|
||||||
appropriate measures to correct the situation should be put into place (*prevention*).
|
appropriate measures to correct the situation should be put into place (*prevention*).
|
||||||
|
|
||||||
What about data security?
|
Data security
|
||||||
-------------------------
|
~~~~~~~~~~~~~
|
||||||
|
|
||||||
**The taxpayer must secure the system against any data loss due to deletion, removal, or theft of
|
The taxpayer must **secure the system against any data loss** due to deletion, removal, or theft of
|
||||||
any data**. If the entries are not sufficiently secured, the bookkeeping will be regarded as not in
|
any data. If the entries are not sufficiently secured, the bookkeeping will be regarded as not in
|
||||||
accordance with the GoBD guidelines.
|
accordance with the GoBD guidelines.
|
||||||
|
|
||||||
Once bookings have been finally posted, they can no longer be changed or deleted via the
|
Once bookings have been finally posted, they can no longer be changed or deleted via the
|
||||||
@ -229,104 +157,183 @@ application.
|
|||||||
.. seealso::
|
.. seealso::
|
||||||
`Odoo Cloud Hosting - Service Level Agreement <https://www.odooo.com/cloud-sla>`_
|
`Odoo Cloud Hosting - Service Level Agreement <https://www.odooo.com/cloud-sla>`_
|
||||||
|
|
||||||
- If the server is operated locally, it is the responsibility of the user to create the necessary
|
- If the server is operated locally, the user is responsible for creating the necessary backup
|
||||||
backup infrastructure.
|
infrastructure.
|
||||||
|
|
||||||
.. important::
|
.. important::
|
||||||
In some cases, data has to be kept for ten years or more, so always have backups saved. It is
|
In some cases, data has to be kept for ten years or more, so always have backups saved. It is
|
||||||
even more important if you decide to change software provider.
|
even more important if you decide to change software provider.
|
||||||
|
|
||||||
Responsibility of the software editor
|
Responsibility of the software editor
|
||||||
-------------------------------------
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
Considering GoBD only applies between the taxpayer and the financial authority, **the software
|
Considering GoBD applies only to the taxpayer, **the software editor can by no means be held
|
||||||
editor can by no means be held responsible for the accurate and compliant documentation of financial
|
responsible for the accurate and compliant documentation of their users' financial transactional
|
||||||
transactional data of their users**. It can merely provide the necessary tools for the user to
|
data**. It can merely provide the necessary tools for the user to respect the software-related
|
||||||
respect the software related guidelines described in the GoBD.
|
guidelines described in the GoBD.
|
||||||
|
|
||||||
How can Odoo help you achieve Compliance?
|
Ensuring compliance through Odoo
|
||||||
-----------------------------------------
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
The key words, when it comes to GoBD, are: **traceable, verifiable, true, clear, and continuous**.
|
The keywords, when it comes to GoBD are: **traceable, verifiable, true, clear, and continuous**.
|
||||||
In short, you need to have audit-proof archiving in place and Odoo provides you with the means to
|
In short, you need to have audit-proof archiving in place, and Odoo provides you with the means to
|
||||||
achieve all of these objectives:
|
achieve all of these objectives:
|
||||||
|
|
||||||
#. | **Traceability and verifiability**
|
#. | **Traceability and verifiability**
|
||||||
| Each record in Odoo is stamped with the creator of the document, the creation date, the
|
| Each record in Odoo is stamped with the creator of the document, the creation date, the
|
||||||
modification date, and who modified it. In addition, relevant fields are tracked thus it can be
|
modification date, and who modified it. In addition, relevant fields are tracked. Thus, it can
|
||||||
seen which value was changed by whom in the chatter of the relevant object.
|
be seen which value was changed by whom in the chatter of the relevant object.
|
||||||
#. | **Completeness**
|
#. | **Completeness**
|
||||||
| All financial data must be recorded in the system, and there can be no gaps. Odoo ensures that
|
| All financial data must be recorded in the system, and there can be no gaps. Odoo ensures that
|
||||||
there is no gap in the numbering of the financial transactions. It is the responsibility of the
|
there is no gap in the numbering of the financial transactions. It is the responsibility of the
|
||||||
user to encode all financial data in the system. As most financial data in Odoo is generated
|
user to encode all financial data in the system. As most financial data in Odoo is generated
|
||||||
automatically, it remains the responsibility of the user to encode all vendor bills and
|
automatically, it remains the responsibility of the user to encode all vendor bills and
|
||||||
miscellaneous operations completely.
|
miscellaneous operations completely.
|
||||||
#. | **Accuracy**
|
#. | **Accuracy**
|
||||||
| Odoo ensures with the correct configuration that the correct accounts are used. In addition,
|
| Odoo ensures that, with the correct configuration, the correct accounts are used. In addition,
|
||||||
the control mechanisms between purchase orders and sales orders and their respective invoices
|
the control mechanisms between purchase orders and sales orders and their respective invoices
|
||||||
reflect the business reality. It is the responsibility of the user to scan and attach the
|
reflect the reality of the business. It is the responsibility of the user to scan and attach
|
||||||
paper-based vendor bill to the respective record in Odoo. *Odoo Document helps you automate
|
the paper-based vendor bill to the respective record in Odoo. *Odoo Documents helps you
|
||||||
this task*.
|
automate this task*.
|
||||||
#. | **Timely booking and record-keeping**
|
#. | **Timely booking and record-keeping**
|
||||||
| As most financial data in Odoo is generated by the transactional objects (for example, the
|
| As most financial data in Odoo is generated by the transactional objects (for example, the
|
||||||
invoice is booked at confirmation), Odoo ensures out-of-the-box timely record-keeping. It is
|
invoice is booked at confirmation), Odoo ensures out-of-the-box timely record-keeping. It is
|
||||||
the responsibility of the user to encode all incoming vendor bills in a timely manner, as well
|
the responsibility of the user to encode all incoming vendor bills in a timely manner, as well
|
||||||
as the miscellaneous operations.
|
as the miscellaneous operations.
|
||||||
#. | **Order**
|
#. | **Order**
|
||||||
| Financial data stored in Odoo is per definition ordered and can be reordered according to most
|
| Financial data stored in Odoo is, per definition, ordered and can be reordered according to
|
||||||
fields present in the model. A specific ordering is not enforced by the GoBD, but the system
|
most fields present in the model. A specific ordering is not enforced by the GoBD, but the
|
||||||
must ensure that a given financial transaction can be quickly found by a third-party expert.
|
system must ensure that a given financial transaction can be quickly found by a third-party
|
||||||
Odoo ensures this out-of-the-box.
|
expert. Odoo ensures this out-of-the-box.
|
||||||
#. | **Inalterability**
|
#. | **Inalterability**
|
||||||
| With the German Odoo localization, Odoo is in standard configured in such a way that the
|
| With the German Odoo localization, Odoo is in standard configured in such a way that the
|
||||||
inalterability clause can be adhered to without any further customization.
|
inalterability clause can be adhered to without any further customization.
|
||||||
|
|
||||||
Do you need a GoBD-Export?
|
GoBD export
|
||||||
--------------------------
|
~~~~~~~~~~~
|
||||||
|
|
||||||
In the case of fiscal control, the fiscal authority can request three levels of access to the
|
In the case of fiscal control, the fiscal authority can request three levels of access to the
|
||||||
accounting system (Z1, Z2, Z3). These levels vary from direct access to the interface to the
|
accounting system (Z1, Z2, Z3). These levels vary from direct access to the interface to the
|
||||||
handover of the financial data on a storage device.
|
handover of the financial data on a storage device.
|
||||||
|
|
||||||
In case of a handover of the financial data on a storage device, the format is **not** enforced by
|
In the case of a handover of financial data to a storage device, the GoBD does **not** enforce the
|
||||||
the GoBD. It can be, for example, in XLS, CSV, XML, Lotus 123, SAP-format, AS/400-format, or else.
|
format. It can be, for example, in XLS, CSV, XML, Lotus 123, SAP-format, AS/400-format, or else.
|
||||||
Odoo supports the CSV and XLS-export of financial data out-of-the-box. The GoBD **recommends** the
|
Odoo supports the CSV and XLS export of financial data out of the box. The GoBD **recommends** the
|
||||||
export in a specific XML-based GoBD-format (see "Ergänzende Informationen zur
|
export in a specific XML-based GoBD format (see "Ergänzende Informationen zur
|
||||||
Datenntträgerüberlassung" §3) but it is not binding.
|
Datenträgerüberlassung" §3), but it is not binding.
|
||||||
|
|
||||||
What is the role and meaning of the compliance certification?
|
Non-compliance
|
||||||
-------------------------------------------------------------
|
~~~~~~~~~~~~~~
|
||||||
|
|
||||||
The GoBD clearly states that due to the nature of a state of the art accounting software, their
|
In the event of an infringement, you can expect a fine and a court order demanding the
|
||||||
configuration possibilities, changing nature, and various forms of use, **no legally binding
|
implementation of specific measures.
|
||||||
certification can be given**, nor can the software be made liable towards a public authority.
|
|
||||||
Third-party certificates can indeed have **an informative value** for customers to make software
|
|
||||||
buying decisions but are by no means legally binding or of any other legal value (A. 12, § 181).
|
|
||||||
|
|
||||||
A GoBD certificate states nothing more than that if you use the software according to its
|
.. _germany/pos:
|
||||||
guidelines, the software will not refrain you from respecting the GoBD. These certifications are
|
|
||||||
very expensive in terms of time and cost, and their value is very relative. Thus we focus our
|
Point of Sale
|
||||||
efforts on ensuring GoBD compliance rather than pay for a marketing tool which does not, however,
|
=============
|
||||||
offer our customer any legal certainty.
|
|
||||||
|
Technical security system
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
The **Kassensicherungsverordnung** (The Act on Protection against Manipulation of Digital Records)
|
||||||
|
requires that electronic record-keeping systems - including the :doc:`point of sale
|
||||||
|
</applications/sales/point_of_sale>` systems - must be equipped with a **technical security system**
|
||||||
|
(also called **TSS** or **TSE**).
|
||||||
|
|
||||||
|
Odoo offers a service that is compliant with the help of `fiskaly <https://fiskaly.com>`_, a
|
||||||
|
*cloud-based solution*.
|
||||||
|
|
||||||
.. important::
|
.. important::
|
||||||
The BMF actually states the following in the `Official GoBD text
|
Since this solution is cloud-based, a working internet connection is required.
|
||||||
<https://ao.bundesfinanzministerium.de/ao/2021/Anhaenge/BMF-Schreiben-und-gleichlautende-Laendererlasse/Anhang-64/anhang-64.html>`_:
|
|
||||||
|
|
||||||
- 180. Positive attestations on the correctness of the bookkeeping - and thus on the correctness
|
.. note::
|
||||||
of IT-based bookkeeping systems - are not issued either in the context of a tax field audit or
|
The only VAT rates allowed are given by fiskaly. You can check these rates by consulting
|
||||||
in the context of binding information.
|
`fiskaly DSFinV-K API: VAT Definition
|
||||||
- 181. "Certificates" or "attestations" from third parties can serve as a decision criterion for
|
<https://developer.fiskaly.com/api/dsfinvk/v0/#tag/VAT-Definition>`_.
|
||||||
the company when selecting a software product, but develop from the in margin no. 179 is not
|
|
||||||
binding on the tax authorities.
|
|
||||||
|
|
||||||
.. note::
|
Configuration
|
||||||
The previous content was `automatically translated from German with Google Translate
|
~~~~~~~~~~~~~
|
||||||
<https://translate.google.com/?sl=de&tl=en&text=180.%0APositivtestate%20zur%20Ordnungsm%C3%A4%C3%9Figkeit%20der%20Buchf%C3%BChrung%20-%20und%20damit%20zur%20Ordnungsm%C3%A4%C3%9Figkeit%20DV-gest%C3%BCtzter%20Buchf%C3%BChrungssysteme%20-%20werden%20weder%20im%20Rahmen%20einer%20steuerlichen%20Au%C3%9Fenpr%C3%BCfung%20noch%20im%20Rahmen%20einer%20verbindlichen%20Auskunft%20erteilt.%0A%0A181.%0A%E2%80%9EZertifikate%E2%80%9C%20oder%20%E2%80%9ETestate%E2%80%9C%20Dritter%20k%C3%B6nnen%20bei%20der%20Auswahl%20eines%20Softwareproduktes%20dem%20Unternehmen%20als%20Entscheidungskriterium%20dienen%2C%20entfalten%20jedoch%20aus%20den%20in%20Rz.%20179%20genannten%20Gr%C3%BCnden%20gegen%C3%BCber%20der%20Finanzbeh%C3%B6rde%20keine%20Bindungswirkung.%20&op=translate>`_.
|
|
||||||
|
|
||||||
|
:ref:`Install <general/install>` the **Germany - Certification for Point of Sale**
|
||||||
|
(`l10n_de_pos_cert`) and **Germany - Certification for Point of Sale of type restaurant**
|
||||||
|
(`l10n_de_pos_res_cert`) modules.
|
||||||
|
|
||||||
What happens if you are not compliant?
|
.. tip::
|
||||||
--------------------------------------
|
If these modules are not listed, :ref:`update the app list <general/install>`.
|
||||||
|
|
||||||
In the event of an infringement, you can expect a fine but also a court order demanding the
|
Company registration at the financial authority
|
||||||
implementation of specific measures.
|
***********************************************
|
||||||
|
|
||||||
|
To register your company, open the :guilabel:`Settings` app, click :guilabel:`Update Info` under the
|
||||||
|
:guilabel:`Companies` section, and fill in the following fields:
|
||||||
|
|
||||||
|
- :guilabel:`Company Name`
|
||||||
|
- :guilabel:`Address`
|
||||||
|
- :guilabel:`VAT`
|
||||||
|
- :guilabel:`St.-Nr.` (Steuernummer) this number is assigned by the tax office to every taxable
|
||||||
|
natural or legal person (e.g., `2893081508152`).
|
||||||
|
- :guilabel:`W-IdNr.` (Wirtschafts-Identifikationsnummer) this number is used as a permanent
|
||||||
|
identification number for economically active persons.
|
||||||
|
|
||||||
|
You can then **register your company through fiskaly** by opening the :guilabel:`Fiskaly` tab and
|
||||||
|
clicking the :guilabel:`Fiskaly Registration` button.
|
||||||
|
|
||||||
|
.. tip::
|
||||||
|
If you do not see the :guilabel:`Fiskaly Registration` button, make sure that you *saved* your
|
||||||
|
company details and are not in *editing mode* anymore.
|
||||||
|
|
||||||
|
Once the registration has been finalized, new fields appear:
|
||||||
|
|
||||||
|
- :guilabel:`Fiskaly Organization ID` refers to the ID of your company on fiskaly's side.
|
||||||
|
- :guilabel:`Fiskaly API Key` and :guilabel:`Fiskaly API Secret` are the credentials the system
|
||||||
|
uses to access the services offered by fiskaly.
|
||||||
|
|
||||||
|
.. image:: germany/fiskaly-registration.png
|
||||||
|
:alt: Fiskaly registration tab
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
It is possible to request new credentials if there is any issue with the current ones by clicking
|
||||||
|
the :guilabel:`New keys` button.
|
||||||
|
|
||||||
|
Create a technical security system and link it to a POS
|
||||||
|
*******************************************************
|
||||||
|
|
||||||
|
To use a point of sale in Germany, first create a :abbr:`TSS (Technical Security System)` by going
|
||||||
|
to :menuselection:`Point of Sale --> Configuration --> Point of Sale`, selecting the
|
||||||
|
:guilabel:`Point of Sale` to edit, then checking the :guilabel:`Create TSS` box under the
|
||||||
|
:guilabel:`Fiskaly API` section.
|
||||||
|
|
||||||
|
Once the creation of the TSS is successful, you can find the:
|
||||||
|
|
||||||
|
- :guilabel:`TSS ID`, which refers to the ID of your TSS on fiskaly's side, and
|
||||||
|
- :guilabel:`Fiskaly Client ID`, which refers to your POS on fiskaly's side.
|
||||||
|
|
||||||
|
.. image:: germany/fiskaly-tss.png
|
||||||
|
:alt: Fiskaly API section
|
||||||
|
|
||||||
|
DSFinV-K export
|
||||||
|
~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Whenever you close a PoS session, the details of the orders are sent to the :abbr:`DSFinV-K
|
||||||
|
(Digitale Schnittstelle der Finanzverwaltung für Kassensysteme)` service of fiskaly.
|
||||||
|
|
||||||
|
In case of an audit, you can export the data sent to DSFinV-K by going to :menuselection:`Point of
|
||||||
|
Sale --> Orders --> DSFinV-K Exports --> New`.
|
||||||
|
|
||||||
|
.. image:: germany/pos-orders-menu.png
|
||||||
|
:alt: Menu to export DSFinV-K
|
||||||
|
|
||||||
|
These fields are mandatory:
|
||||||
|
|
||||||
|
- :guilabel:`Start Datetime`: export data with dates larger than or equal to the given start date
|
||||||
|
- :guilabel:`End Datetime`: export data with dates smaller than or equal to the given end date
|
||||||
|
|
||||||
|
Leave the :guilabel:`Point of Sale` field blank to export the data of all your points of sale;
|
||||||
|
specify one if you want to export data for this specific POS only.
|
||||||
|
|
||||||
|
.. image:: germany/dsfinv-k-export.png
|
||||||
|
:alt: Exporting DSFinV-K
|
||||||
|
|
||||||
|
When an export is successfully triggered and is being processed, the :guilabel:`State` field should
|
||||||
|
mention :guilabel:`Pending`. Click :guilabel:`Refresh State` to check if it is ready.
|
||||||
|
Before Width: | Height: | Size: 3.6 KiB |
After Width: | Height: | Size: 5.4 KiB |
Before Width: | Height: | Size: 7.1 KiB |
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 6.0 KiB |
Before Width: | Height: | Size: 6.4 KiB |
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 9.1 KiB |
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 6.1 KiB |
Before Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 11 KiB |