diff --git a/README.md b/README.md index 769f01d..bf49756 100644 --- a/README.md +++ b/README.md @@ -15,11 +15,11 @@ Available addons ---------------- addon | version | maintainers | summary --- | --- | --- | --- -[account_ebics](account_ebics/) | 19.0.1.2.0 | | EBICS banking protocol -[account_ebics_batch](account_ebics_batch/) | 19.0.1.0.1 | | EBICS Files automated import and processing -[account_ebics_batch_payment](account_ebics_batch_payment/) | 19.0.1.2.0 | | Upload Batch Payment via EBICS -[account_ebics_oe](account_ebics_oe/) | 19.0.1.0.0 | | Deploy account_ebics module on Odoo Enterprise -[account_ebics_payment_order](account_ebics_payment_order/) | 19.0.1.0.0 | | Upload Payment Order via EBICS +[account_ebics](account_ebics/) | 19.0.1.3.0 | | Download bank statements and upload payment files directly from Odoo, using the European EBICS standard +[account_ebics_batch](account_ebics_batch/) | 19.0.1.0.1 | | Download and process your EBICS files automatically, on a schedule +[account_ebics_batch_payment](account_ebics_batch_payment/) | 19.0.1.3.0 | | Send an Odoo Enterprise batch payment to the bank over EBICS +[account_ebics_oe](account_ebics_oe/) | 19.0.1.0.0 | | Place the EBICS menus in the Odoo Enterprise accounting application +[account_ebics_payment_order](account_ebics_payment_order/) | 19.0.1.1.0 | | Send an OCA payment order to the bank over EBICS [//]: # (end addons) diff --git a/account_ebics/README.rst b/account_ebics/README.rst index bd4afa3..39423ae 100644 --- a/account_ebics/README.rst +++ b/account_ebics/README.rst @@ -1,219 +1,261 @@ -.. image:: https://img.shields.io/badge/license-LGPL--3-blue.png - :target: https://www.gnu.org/licenses/lgpl - :alt: License: LGPL-3 - ====================== -EBICS banking protocol +EBICS Banking Protocol ====================== -Implementation of the EBICS banking protocol. +**Exchange files directly with your banks from Odoo, with no portal and nobody logging in.** -This module facilitates the exchange of files with banks via the EBICS protocol. +EBICS, the Electronic Banking Internet Communication Standard, is the channel European +banks open to companies that want their software to talk to the bank. Bank statements are +downloaded on a schedule and payment files are uploaded from Odoo, authenticated by your +own cryptographic keys instead of a login page. -| +This module implements that protocol in Odoo. It is developed and maintained by +Noviat, and follows each new version of Odoo, which matters when a bank connection has to +survive your next migration. -Installation +If you are still working out whether EBICS is the right channel for you, we explain it +without the jargon, with screen recordings of the flow in Odoo, on +`noviat.com/ebics `_. + +.. image:: https://raw.githubusercontent.com/Noviat/account_ebics/19.0/account_ebics/static/description/ebics_flow.png + :alt: Statements come down as camt.053 or camt.052 files, payment files go up as pain.001 or pain.008, and your keys stay on your own server + :width: 100% + +What you get ============ -The module depends upon +- **Statements that arrive on their own.** A scheduled task collects the files your bank + publishes, for every account, and processes them into bank statements. +- **Payments that leave the same way.** A payment batch or a payment order is uploaded to + the bank in the format the bank expects, without exporting a file and re-uploading it + somewhere else. +- **Several companies, one connection.** Keys are held per bank rather than per company: + when fifteen entities bank with the same institution, the bank sends a single daily file + carrying fifteen statements and the module puts each statement in the right company. +- **No bank credentials in Odoo.** The connection uses your own company keys, generated on + your side and kept on your server. Access to the EBICS configuration is a permission of + its own ('EBICS Manager'), separate from ordinary accounting rights. +- **A test mode, where your bank offers one.** French banks accept a test flag, so a file + can be submitted and validated before anything is switched to production. German and + Swiss banks generally do not: there the first payment is a real one, kept small and sent + to an account you control. +- **A trace of every exchange.** Each download and each upload is a record, with the file + it carried, the moment it happened and the user behind it. -- https://pypi.python.org/pypi/fintech -- https://pypi.python.org/pypi/cryptography +**EBICS 2.4**, **EBICS 2.5** and **EBICS 3.0** are supported. EBICS 3.0, the current +specification since December 2022, names what is exchanged with BTF instead of the +country-specific order type codes of EBICS 2.x. Many banks still run 2.4 or 2.5 in parallel. -Remark: +What travels over the link +========================== -The EBICS 'Test Mode' for uploading orders requires fintech 4.3.4 or higher for EBICS 2.x -and fintech 7.2.7 or higher for EBICS 3.0. +- **Coming in:** camt.053 for the end of day statement, camt.052 for intraday movements + where the bank offers them, and national formats such as the French CFONB. +- **Going out:** pain.001 for credit transfers and pain.008 for direct debits, generated by + Odoo from your payment batches. -SWIFT 3SKey support requires fintech 6.4 or higher. +We do not process MT940 statements: the format carries bank and country specific variations, +and the Odoo community stopped maintaining a general parser for it after Odoo 10. Where a +bank publishes camt.053 alongside it, which is now the usual case, that is the format to use. -| +Which banks +=========== -We also recommend to consider the installation of the following modules: +Any bank that publishes an EBICS access point can be connected. The standard is maintained by +EBICS SC, a company held by the German, French, Swiss and Austrian banking bodies +(DK, CFONB, SIX and PSA), and it is the standard corporate channel in those countries. -| +To check a specific bank before you start, joonis publishes a public directory at +`joonis.de/en/fintech/banks `_. Enter a BIC and it +returns the SEPA services the bank offers, the EBICS versions it supports and its Host-ID. -- account_ebics_oe +A bank missing from that directory is not a no: it is joonis' own list, not an official +register. Ask your bank whether it publishes an EBICS access point. - Required if you are running Odoo Enterprise +What it costs +============= - Cf. https://github.com/Noviat/account_ebics +**This module is free software**, published under LGPL-3. There is no licence fee, no +subscription and no per-connection charge from Noviat. -| +It does however rely on the `fintech `_ library from +joonis, and that library requires a **commercial licence for production use**: as soon as +you upload SEPA files with more than five transactions, retrieve statements older than the +last three days, or use the distributed signature. The licence is contracted directly with +joonis, not with Noviat. -- account_ebics_batch +joonis charges a one-off setup fee plus a monthly fee per EBICS user id. Current pricing is +published on +`joonis.de `_. - This module adds a cron job for the automated import of EBICS files. +Your bank may also charge a subscription for the EBICS channel itself. It varies from one +bank to another and is billed by the bank, separately from anything on the Odoo side. - Cf. https://github.com/Noviat/account_ebics +Requirements +============ -| +The module depends on two Python libraries: -- account_ebics_batch_payment +- `fintech `_ +- `cryptography `_ - Recommended if you are using the Odoo Enterprise account_batch_payment module +Because the connection needs a Python library and your key files on the server, it runs on +**Odoo.sh** or on an **on-premise** installation. - Cf. https://github.com/Noviat/account_ebics +The EBICS test mode for uploads requires fintech 4.3.4 or higher for EBICS 2.x and fintech +7.2.7 or higher for EBICS 3.0. SWIFT 3SKey support requires fintech 6.4 or higher, and the signature passphrase +fintech 7.3.1 or higher. -| - -- account_usability - - Recommended if you have multiple financial journals. - This module adds a number of accounting menu entries such as bank statement list view - which allows to see all statements downloaded via the ir.cron automated EBICS download. - - Cf. https://github.com/OCA/account-financial-tools - -| - -- account_ebics_payment_order - - Required if you are using the OCA account_payment_order module. - - Cf. https://github.com/OCA/bank-payment - -| - -- account_ebics_oca_statement_import - - Required if you are using the OCA Bank Statement import modules. - - https://github.com/OCA/bank-statement-import - -| - -- account_statement_import_fr_cfonb - - Required to handle french CFONB files. - - Cf. https://github.com/OCA/l10n_france - -| - -- account_statement_import_camt - - Required to handle camt.052 and camt.054 files. - - Cf. https://github.com/OCA/bank-statement-import - -| - - -Fintech license +Fintech licence --------------- -If you have a valid fintech.ebics license, you should add the following -licensing parameters to the [options] section of the odoo server configuration file: +With a fintech licence, add its parameters to the ``[options]`` section of the Odoo server +configuration file: +- ``fintech_register_name``: the name of the licensee; +- ``fintech_register_keycode``: the keycode of the licensed version. -- fintech_register_name - -The name of the licensee. - -- fintech_register_keycode - -The keycode of the licensed version. - -| -| Example: -| - -:: +Example:: ; fintech fintech_register_name = MyCompany fintech_register_keycode = AB1CD-E2FG-3H-IJ4K-5L -| +Companion modules +================= -Cf. https://www.joonis.de/en/fintech/prices/ +From this repository: -| +- **EBICS - Odoo Enterprise Integration** (``account_ebics_oe``): required on Odoo + Enterprise; installed automatically. +- **EBICS - Scheduled File Import** (``account_ebics_batch``): downloads and processes the + files of every connection on a schedule. +- **EBICS - Batch Payments (Odoo Enterprise)** (``account_ebics_batch_payment``): uploads + the batch payments of the Odoo Enterprise ``account_batch_payment`` module. +- **EBICS - Payment Orders (OCA)** (``account_ebics_payment_order``): uploads the payment + orders of the OCA ``account_payment_order`` module + (`OCA/bank-payment `_). + +To process the downloaded statements, install the module of each format you receive: + +- **camt.053, camt.052 and camt.054**: ``account_statement_import_camt`` + (`OCA/bank-statement-import `_). For + camt.053, the Odoo Enterprise ``account_bank_statement_import_camt`` works too. +- **French CFONB**: ``account_statement_import_fr_cfonb`` + (`OCA/l10n-france `_). + +Recommended with several financial journals: ``account_usability`` +(`OCA/account-financial-tools `_), which adds +accounting menus such as a list of all bank statements, including those downloaded by the +scheduled import. + +Getting your bank online +======================== + +The configuration on the Odoo side takes fifteen to thirty minutes. What sets the pace of a +project is the bank, and it is almost never for a technical reason: + +- **The bank opens the access.** You receive the host ID, the address of the access point, + your partner and user identifiers, and a letter carrying the hash values of the bank's keys. +- **INI and HIA.** Odoo generates your key pairs for signature, authentication and encryption, + sends the public keys to the bank and produces the initialisation letters, which you print, + sign and send. The bank compares them by hand with the keys it received online. +- **HPB.** Once the bank has activated your access, you retrieve its public keys and compare + their hash values with the letter it sent you. That comparison is what makes the channel + trustworthy. +- **The first exchange.** Statements come down first. Payments follow, as a test file where + the bank supports the test flag, otherwise as a real transfer of a small amount. + +Count in weeks per bank rather than days, and start the contract and the paperwork early. Configuration ============= -Go to **Settings > Users** +The menus are those of Odoo Enterprise; on Odoo Community, the application is called +*Invoicing* instead of *Accounting*. -Add the users that are authorised to maintain the EBICS configuration to the 'EBICS Manager' Group. +**Who may configure.** In *Settings > Users*, add the users who maintain the EBICS +configuration to the **EBICS Manager** group. -| +**File formats.** In *Accounting > Configuration > EBICS > EBICS File Formats*, check that the +formats you exchange with your banks are defined; the common ones are created at +installation. A missing format can be reported on +`GitHub `_. -Go to **Accounting > Configuration > Miscellaneous > EBICS > EBICS File Formats** +A download format can carry a **Download Process Method**, run by the *Process* button of a +downloaded file: ``camt.053``, ``camt.052``, ``camt.054`` and ``cfonb120``. Each needs the +module of its format (see Companion modules); Odoo tells you which one when it is missing. -Check if the EBICS File formats that you want to process in Odoo are defined. +**Bank connections.** In *Accounting > Configuration > EBICS > EBICS Configuration*, create one +connection per bank contract, with the identifiers your bank sent you. -Most commonly used formats for which support is available in Odoo should be there already. - -Please open an issue on https://github.com/Noviat/account_ebics to report missing EBICS File Formats. - -For File Formats of type 'Downloads' you can also specify a 'Download Process Method'. - -This is the method that will be executed when hitting the 'Process' button on the downloaded file. - -The following methods are currently available: - -- cfonb120 -- camt.053 -- camt.052 -- camt.054 - -All these methods require complimentary modules to be installed (cf. Installation section supra). - -You'll get an error message when the required module is not installed on your Odoo instance. - -| - -Go to **Accounting > Configuration > Miscellaneous > EBICS > EBICS Configuration** - -Configure your EBICS configuration according to the contract with your bank. - -| +.. image:: https://raw.githubusercontent.com/Noviat/account_ebics/19.0/account_ebics/static/description/ebics_download.png + :alt: A downloaded camt.053 statement file in Odoo, before processing + :width: 100% Usage ===== -Go to **Accounting > Bank and Cash > EBICS Processing** +The **EBICS Processing** menu, in the top bar of the Accounting application, lists the +downloaded and uploaded files and offers manual downloads and uploads. -| +Downloaded files are processed into bank statements. Uploads are launched from the payment +batch or the payment order, with the format set in the configuration: on the payment +mode for a payment order, on the journal's payment method for a batch payment. + +.. image:: https://raw.githubusercontent.com/Noviat/account_ebics/19.0/account_ebics/static/description/ebics_upload.png + :alt: Uploading a pain.001 SEPA credit transfer file over EBICS 3.0, with the test mode option + :width: 100% Diagnostics =========== -Add the following to your Odoo config file in order to diagnose -issues with the EBICS connection with your bank: +To diagnose the connection with your bank, add this line to the Odoo server configuration +file:: -log_handler = fintech.ebics:DEBUG + log_handler = fintech.ebics:DEBUG -| - -EBICS Return Codes +EBICS return codes ------------------ -During the processing of your EBICS upload/download, your bank may return an Error Code, e.g. +During an upload or a download, your bank may return an error code, for example:: -EBICS Functional Error: -EBICS_NO_DOWNLOAD_DATA_AVAILABLE (code: 90005) + EBICS Functional Error: + EBICS_NO_DOWNLOAD_DATA_AVAILABLE (code: 90005) -A detailed explanation of the codes can be found on http://www.ebics.org. -You can also find this information in the doc folder of this module (file EBICS_Annex1_ReturnCodes). - -| +The codes are explained on `ebics.org `_ and in the ``doc`` folder of +this module (``EBICS_Annex1_ReturnCodes``). Electronic Distributed Signature (EDS) -------------------------------------- -This is supported via external signing apps, e.g. BankingVEU: +Where your bank supports EBICS T, Odoo prepares the file and holds no signing credentials +at all: the payment is approved in your own signing application, which is what a segregation +of duties policy usually demands. Where it does not, which happens with German and Swiss +banks, the signing key sits on your Odoo server, and you can protect it with a separate +signature passphrase that is never stored and is asked for every signed transaction. -- https://play.google.com/store/apps/details?id=subsembly.bankingveu -- https://apps.apple.com/de/app/bankingveu/id1578694190 +External signing apps include BankingVEU +(`Android `_, +`iOS `_). +Roadmap +======= -Known Issues / Roadmap -====================== +- Import externally generated keys and certificates (today only the 3SKey signature + certificate). +- Support the SWIFT 3SKey signing JavaScript library + (`SConnect `_). -- The end user is currently not able to change his passphrases (only the users with 'EBICS Manager' rights can do so). -- Add support to import externally generated keys & certificates (currently only 3SKey signature certificate). -- Add support for SWIFT 3SKey signing javascript lib (SConnect, cf https://www2.swift.com/3skey/help/sconnect.html). +Issues and pull requests are welcome on +`GitHub `_. +Credits +======= + +This module is developed and maintained by `Noviat `_, Odoo +integrator in Belgium, specialised in accounting and finance since 2009. + +We implement it, we configure the connection with your banks and we support you through the +first cycles. If you want help getting a bank online, tell us which banks you use: +https://www.noviat.com/ebics diff --git a/account_ebics/__init__.py b/account_ebics/__init__.py index 168985a..ecdeb04 100644 --- a/account_ebics/__init__.py +++ b/account_ebics/__init__.py @@ -1,5 +1,8 @@ +import functools import logging +from odoo import api + _logger = logging.getLogger(__name__) try: @@ -7,3 +10,22 @@ try: from . import wizards except Exception: _logger.warning("Import Error, check if fintech lib has been installed") + + +@functools.cached_property +def neutralized(self): + return bool( + self["ir.config_parameter"].sudo().get_param("database.is_neutralized") + or self["ir.ui.view"] + .sudo() + .search_count( + [ + ("key", "in", ("web.neutralize_banner", "website.neutralize_ribbon")), + ("active", "=", True), + ] + ) + ) + + +api.Environment.neutralized = neutralized +neutralized.__set_name__(api.Environment, "neutralized") diff --git a/account_ebics/__manifest__.py b/account_ebics/__manifest__.py index 2038fb9..970f31c 100644 --- a/account_ebics/__manifest__.py +++ b/account_ebics/__manifest__.py @@ -2,8 +2,10 @@ # License LGPL-3 or later (https://www.gnu.org/licenses/lgpl). { - "name": "EBICS banking protocol", - "version": "19.0.1.2.0", + "name": "EBICS Banking Protocol", + "summary": "Download bank statements and upload payment " + "files directly from Odoo, using the European EBICS standard", + "version": "19.0.1.3.0", "license": "LGPL-3", "author": "Noviat", "website": "https://www.noviat.com/", @@ -29,5 +31,5 @@ "cryptography", ] }, - "images": ["static/description/cover.png"], + "images": ["static/description/banner.png"], } diff --git a/account_ebics/i18n/account_ebics.pot b/account_ebics/i18n/account_ebics.pot index bd1746a..df5997a 100644 --- a/account_ebics/i18n/account_ebics.pot +++ b/account_ebics/i18n/account_ebics.pot @@ -25,6 +25,13 @@ msgstr "" msgid "%(st_cnt)s bank statement%(sp)s been imported: " msgstr "" +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "" +"'%(filename)s' has been uploaded via EBICS (OrderID: %(order_number)s)." +msgstr "" + #. module: account_ebics #: model:ir.model.fields,help:account_ebics.field_ebics_file__date_from msgid "'Date From' as entered in the download wizard." @@ -370,6 +377,7 @@ msgstr "" #. module: account_ebics #: model:ir.model.fields.selection,name:account_ebics.selection__ebics_config__state__draft +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__pain_state__draft #: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__state__draft #: model:ir.model.fields.selection,name:account_ebics.selection__ebics_userid__state__draft #: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_search @@ -621,9 +629,8 @@ msgid "EBICS Mark as Downloaded" msgstr "" #. module: account_ebics -#. odoo-python -#: code:addons/account_ebics/wizards/ebics_xfer.py:0 -msgid "EBICS OrderID: %s" +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__ebics_order_number +msgid "EBICS OrderID" msgstr "" #. module: account_ebics @@ -859,6 +866,11 @@ msgid "" "statement." msgstr "" +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__pain_state__error +msgid "Error" +msgstr "" + #. module: account_ebics #. odoo-python #: code:addons/account_ebics/wizards/ebics_xfer.py:0 @@ -1236,6 +1248,11 @@ msgstr "" msgid "Origin: %s" msgstr "" +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__pain_state +msgid "Pain State" +msgstr "" + #. module: account_ebics #. odoo-python #: code:addons/account_ebics/models/ebics_userid.py:0 @@ -1640,6 +1657,11 @@ msgstr "" msgid "Upload Only" msgstr "" +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__pain_state__uploaded +msgid "Uploaded" +msgstr "" + #. module: account_ebics #: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form msgid "" diff --git a/account_ebics/i18n/de.po b/account_ebics/i18n/de.po new file mode 100644 index 0000000..bedbfbc --- /dev/null +++ b/account_ebics/i18n/de.po @@ -0,0 +1,1925 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_ebics +# +# Weblate Translation Memory , 2026. +# Jérémy Didderen , 2026. +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 19.0+e\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2026-10-11 21:18+0000\n" +"Last-Translator: Weblate Translation Memory \n" +"Language-Team: German \n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 2026.9.1\n" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid " has" +msgstr " wurde" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "%(st_cnt)s bank statement%(sp)s been imported: " +msgstr "%(st_cnt)s Kontoauszug%(sp)s importiert: " + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "" +"'%(filename)s' has been uploaded via EBICS (OrderID: %(order_number)s)." +msgstr "" +"'%(filename)s' wurde über EBICS hochgeladen (Auftrags-ID: %(order_number)s)." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file__date_from +msgid "'Date From' as entered in the download wizard." +msgstr "'Startdatum', wie im Download-Assistenten eingegeben." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file__date_to +msgid "'Date To' as entered in the download wizard." +msgstr "'Enddatum', wie im Download-Assistenten eingegeben." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__swift_3skey_certificate +msgid "3SKey Certficate" +msgstr "3SKey-Zertifikat" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__swift_3skey_certificate_fn +msgid "3SKey Certificate Filename" +msgstr "Dateiname des 3SKey-Zertifikats" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "3SKey certificate missing." +msgstr "3SKey-Zertifikat fehlt." + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "" +"Distinguished Name attributes used to create self-signed X.509 " +"certificates:" +msgstr "" +"Attribute des Distinguished Name zur Erstellung selbstsignierter " +"X.509-Zertifikate:" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_config__ebics_key_version__a005 +msgid "A005 (RSASSA-PKCS1-v1_5)" +msgstr "A005 (RSASSA-PKCS1-v1_5)" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_config__ebics_key_version__a006 +msgid "A006 (RSASSA-PSS)" +msgstr "A006 (RSASSA-PSS)" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "Account activated" +msgstr "Konto aktiviert" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__active +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__active +msgid "Active" +msgstr "Aktiv" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_userid__state__active_keys +msgid "Active Keys" +msgstr "Aktive Schlüssel" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_form +msgid "Additional Information" +msgstr "Zusätzliche Informationen" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__allowed_format_ids +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__allowed_format_ids +msgid "Allowed EBICS File Formats" +msgstr "Zulässige EBICS-Dateiformate" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__transaction_rights +msgid "Allowed Transactions" +msgstr "Erlaubte Transaktionen" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__btf_container +msgid "BTF Container" +msgstr "BTF-Container" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__btf_format +msgid "BTF Format" +msgstr "BTF-Format" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__btf_message +msgid "BTF Message Name" +msgstr "BTF-Nachrichtenname" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__btf_message +msgid "" +"BTF Message Name\n" +"The message name consisting of up to 10 alphanumeric characters [a-z0-9.] (eg. pain.001, pain.008, camt.053)" +msgstr "" +"BTF-Nachrichtenname\n" +"Der Nachrichtenname aus bis zu 10 alphanumerischen Zeichen [a-z0-9.] (z. B. " +"pain.001, pain.008, camt.053)" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__btf_option +msgid "BTF Option" +msgstr "BTF-Option" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__btf_scope +msgid "BTF Scope" +msgstr "BTF-Geltungsbereich" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__btf_service +msgid "BTF Service" +msgstr "BTF-Dienst" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__btf_service +msgid "" +"BTF Service Name)\n" +"The service code name consisting of 3 alphanumeric characters [A-Z0-9] (e.g. SCT, SDD, STM, EOP)" +msgstr "" +"BTF-Servicename)\n" +"Der Servicecodename aus 3 alphanumerischen Zeichen [A-Z0-9] (z. B. SCT, SDD, " +"STM, EOP)" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__btf_variant +msgid "BTF Variant" +msgstr "BTF-Variante" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__btf_version +msgid "BTF Version" +msgstr "BTF-Version" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__journal_ids +msgid "Bank Accounts" +msgstr "Bankkonten" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "Bank Keys Verified" +msgstr "Bankschlüssel überprüft" + +#. module: account_ebics +#: model:ir.model,name:account_ebics.model_account_bank_statement +msgid "Bank Statement" +msgstr "Kontoauszug" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_form +msgid "Bank Statements" +msgstr "Kontoauszüge" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_change_passphrase_view_form +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_download +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_mark_as_downloaded +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_upload +msgid "Cancel" +msgstr "Abbrechen" + +#. module: account_ebics +#: model:ir.model,name:account_ebics.model_ebics_change_passphrase +msgid "Change EBICS keys passphrase" +msgstr "" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_change_passphrase_view_form +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "Change Passphrase" +msgstr "Passphrase ändern" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_admin_order_view_form_result +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_change_passphrase_view_form_result +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_form_result +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_result +msgid "Close" +msgstr "Schließen" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_key_x509_dn_cn +msgid "Common Name [CN]" +msgstr "Allgemeiner Name [CN]" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__company_ids +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__company_ids +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__company_ids +msgid "Companies" +msgstr "Unternehmen" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_config__company_ids +#: model:ir.model.fields,help:account_ebics.field_ebics_userid__company_ids +msgid "Companies sharing this EBICS contract." +msgstr "Unternehmen, die diesen EBICS-Vertrag gemeinsam nutzen." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file__company_ids +msgid "Companies sharing this EBICS file." +msgstr "Unternehmen, die diese EBICS-Datei gemeinsam nutzen." + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_config_view_form +msgid "Confirm" +msgstr "Bestätigen" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_config__state__confirm +msgid "Confirmed" +msgstr "Bestätigt" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_config__ebics_host +msgid "" +"Contact your bank to get the EBICS HostID.\n" +"In France the BIC is usually allocated to the HostID whereas in Germany it tends to be an institute specific string of 8 characters." +msgstr "" +"Wenden Sie sich an Ihre Bank, um die EBICS-HostID zu erhalten.\n" +"In Frankreich wird der HostID in der Regel der BIC zugewiesen, während es " +"sich in Deutschland meist um eine institutsspezifische Zeichenfolge aus 8 " +"Zeichen handelt." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_config__ebics_url +msgid "Contact your bank to get the EBICS URL." +msgstr "Wenden Sie sich an Ihre Bank, um die EBICS-URL zu erhalten." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_key_x509_dn_c +msgid "Country Name [C]" +msgstr "Ländername [C]" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__create_uid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__create_uid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__create_uid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__create_uid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__create_uid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__create_uid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__create_uid +msgid "Created by" +msgstr "Erstellt von" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__create_date +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__create_date +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__create_date +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__create_date +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__create_date +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__create_date +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__create_date +msgid "Created on" +msgstr "Erstellt am" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "Currency %(cc)s not found." +msgstr "Währung %(cc)s nicht gefunden." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__date +msgid "Date" +msgstr "Datum" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__date_from +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__date_from +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__date_from +msgid "Date From" +msgstr "Startdatum" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__date_to +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__date_to +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__date_to +msgid "Date To" +msgstr "Enddatum" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_userid__signature_class +msgid "" +"Default signature class.This default can be overriden for specific EBICS " +"transactions (cf. File Formats)." +msgstr "" +"Standard-Unterschriftsklasse. Dieser Standard kann für bestimmte EBICS-" +"Transaktionen übersteuert werden (vgl. Dateiformate)." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__description +msgid "Description" +msgstr "Artikelnr. & Bezeichnung" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_account_bank_statement__display_name +#: model:ir.model.fields,field_description:account_ebics.field_account_journal__display_name +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__display_name +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__display_name +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__display_name +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__display_name +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__display_name +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__display_name +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__display_name +msgid "Display Name" +msgstr "Anzeigename" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__state__done +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_search +msgid "Done" +msgstr "Erledigt" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "Doublecheck your EBICS Passphrase and UserID settings." +msgstr "Überprüfen Sie Ihre Einstellungen für EBICS-Passphrase und UserID." + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file_format__type__down +#: model:ir.ui.menu,name:account_ebics.ebics_file_menu_download +msgid "Download" +msgstr "Herunterladen" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_form +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_list +msgid "Download Date" +msgstr "Downloaddatum" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_download +msgid "Download Files" +msgstr "Dateien herunterladen" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_userid__transaction_rights__down +msgid "Download Only" +msgstr "Nur Download" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__download_process_method +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__download_process_method +msgid "Download Process Method" +msgstr "Verarbeitungsmethode für Downloads" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_userid__transaction_rights__both +msgid "Download and Upload" +msgstr "Download und Upload" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_config__state__draft +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__pain_state__draft +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__state__draft +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_userid__state__draft +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_search +msgid "Draft" +msgstr "Entwurf" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__upload_fname_dummy +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__upload_fname_dummy +msgid "Dummy Upload Filename" +msgstr "Dummy-Dateiname für Upload" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__name +msgid "" +"E.g. camt.xxx.cfonb120.stm, pain.001.001.03.sct.\n" +"Specify camt.052, camt.053, camt.054 for camt Order Types such as C53, Z53, C54, Z54.\n" +"This name has to match the 'Request Type' in your EBICS contract for Order Type 'FDL' or 'FUL'.\n" +msgstr "" +"Z. B. camt.xxx.cfonb120.stm, pain.001.001.03.sct.\n" +"Geben Sie camt.052, camt.053, camt.054 für camt-Auftragsarten wie C53, Z53, " +"C54, Z54 an.\n" +"Dieser Name muss mit der 'Antragsart' in Ihrem EBICS-Vertrag für die " +"Auftragsart 'FDL' oder 'FUL' übereinstimmen.\n" + +#. module: account_ebics +#: model:ir.ui.menu,name:account_ebics.ebics_menu +#: model:res.groups.privilege,name:account_ebics.res_groups_privilege_ebics_manager +msgid "EBICS" +msgstr "EBICS" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_admin_order__order_type +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__order_type +#: model:ir.model.fields,help:account_ebics.field_ebics_xfer__order_type +msgid "" +"EBICS 3.0: BTD (download) or BTU (upload).\n" +"EBICS 2.0: E.g. C53 (check your EBICS contract). For most banks in France you should use the format neutral Order Types 'FUL' for upload and 'FDL' for download." +msgstr "" +"EBICS 3.0: BTD (Download) oder BTU (Upload).\n" +"EBICS 2.0: z. B. C53 (prüfen Sie Ihren EBICS-Vertrag). Für die meisten " +"Banken in Frankreich sollten Sie die formatneutralen Auftragsarten 'FUL' für " +"den Upload und 'FDL' für den Download verwenden." + +#. module: account_ebics +#: model:ir.actions.act_window,name:account_ebics.ebics_admin_order_action +#: model:ir.model,name:account_ebics.model_ebics_admin_order +msgid "EBICS Administrative Order" +msgstr "EBICS-Verwaltungsauftrag" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_admin_order.py:0 +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_admin_order_view_form_result +msgid "EBICS Administrative Order result" +msgstr "Ergebnis des EBICS-Verwaltungsauftrags" + +#. module: account_ebics +#: model:ir.ui.menu,name:account_ebics.ebics_admin_order_menu +msgid "EBICS Administrative Orders" +msgstr "EBICS-Verwaltungsaufträge" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_account_journal__ebics_config_id +msgid "EBICS Config" +msgstr "EBICS-Konfiguration" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_account_journal__ebics_config_ids +msgid "EBICS Configs" +msgstr "EBICS-Konfigurationen" + +#. module: account_ebics +#: model:ir.actions.act_window,name:account_ebics.ebics_config_action +#: model:ir.model,name:account_ebics.model_ebics_config +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__ebics_config_id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_config_id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__ebics_config_id +#: model:ir.ui.menu,name:account_ebics.ebics_config_menu +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_config_view_form +msgid "EBICS Configuration" +msgstr "EBICS-Konfiguration" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_account_bank_statement__ebics_file_id +msgid "EBICS Data File" +msgstr "EBICS-Datendatei" + +#. module: account_ebics +#: model:ir.ui.menu,name:account_ebics.ebics_xfer_menu_download +msgid "EBICS Download" +msgstr "EBICS-Download" + +#. module: account_ebics +#: model:ir.actions.act_window,name:account_ebics.ebics_file_action_download +msgid "EBICS Download Files" +msgstr "EBICS-Dateien herunterladen" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "EBICS File '%s' is available for further processing." +msgstr "EBICS-Datei '%s' steht zur weiteren Verarbeitung bereit." + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_download +msgid "EBICS File Download" +msgstr "EBICS-Datei-Download" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__format_id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__ebics_file_format_ids +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__format_id +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_format_view_form +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_format_view_search +msgid "EBICS File Format" +msgstr "EBICS-Dateiformat" + +#. module: account_ebics +#: model:ir.actions.act_window,name:account_ebics.ebics_file_format_action +#: model:ir.model,name:account_ebics.model_ebics_file_format +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__format_id +#: model:ir.ui.menu,name:account_ebics.ebics_file_format_menu +msgid "EBICS File Formats" +msgstr "EBICS-Dateiformate" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_result +msgid "EBICS File Transfer" +msgstr "EBICS-Dateiübertragung" + +#. module: account_ebics +#: model:ir.actions.act_window,name:account_ebics.ebics_xfer_action_download +msgid "EBICS File Transfer - Download" +msgstr "EBICS-Dateiübertragung – Herunterladen" + +#. module: account_ebics +#: model:ir.actions.act_window,name:account_ebics.ebics_xfer_action_upload +msgid "EBICS File Transfer - Upload" +msgstr "EBICS-Dateiübertragung – Hochladen" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_upload +msgid "EBICS File Upload" +msgstr "EBICS-Datei-Upload" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "EBICS File has been uploaded (OrderID %s)." +msgstr "EBICS-Datei wurde hochgeladen (OrderID %s)." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "" +"EBICS File with name '%s' has already been downloaded.\n" +"Please check this file and rename in case there is no risk on duplicate transactions." +msgstr "" +"EBICS-Datei mit dem Namen '%s' wurde bereits heruntergeladen.\n" +"Bitte überprüfen Sie diese Datei und benennen Sie sie um, falls kein Risiko " +"doppelter Transaktionen besteht." + +#. module: account_ebics +#: model:ir.ui.menu,name:account_ebics.ebics_file_menu +msgid "EBICS Files" +msgstr "EBICS-Dateien" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "" +"EBICS Functional Error during download of File Format %(name)s " +"(%(order_type)s):" +msgstr "" +"Funktionaler EBICS-Fehler beim Herunterladen des Dateiformats %(name)s (%" +"(order_type)s):" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "EBICS Functional Error:" +msgstr "EBICS-Funktionsfehler:" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__ebics_host +msgid "EBICS HostID" +msgstr "EBICS-HostID" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_ini_letter +msgid "EBICS INI Letter" +msgstr "EBICS-INI-Brief" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "EBICS Initialisation" +msgstr "EBICS-Initialisierung" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "" +"EBICS Initialisation - After the account has been activated the public bank " +"keys must be downloaded and checked for consistency." +msgstr "" +"EBICS-Initialisierung - Nachdem das Konto aktiviert wurde, müssen die " +"öffentlichen Bankschlüssel heruntergeladen und auf Übereinstimmung geprüft " +"werden." + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "" +"EBICS Initialisation - Push this button when the account has been activated " +"by the bank." +msgstr "" +"EBICS-Initialisierung - Klicken Sie auf diese Schaltfläche, wenn das Konto " +"von der Bank aktiviert wurde." + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "" +"EBICS Initialisation - Push this button when the public have been checked " +"for consistency." +msgstr "" +"EBICS-Initialisierung - Klicken Sie auf diese Schaltfläche, wenn die " +"öffentlichen Schlüssel auf Übereinstimmung geprüft wurden." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "EBICS Initialisation Error:" +msgstr "EBICS-Initialisierungsfehler:" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "EBICS Initialization Error:" +msgstr "EBICS-Initialisierungsfehler:" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_change_passphrase.py:0 +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_change_passphrase_view_form +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_change_passphrase_view_form_result +msgid "EBICS Keys Change Passphrase" +msgstr "Passphrase der EBICS-Schlüssel ändern" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__ebics_keys +msgid "EBICS Keys Root" +msgstr "EBICS-Schlüsselstammverzeichnis" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_config.py:0 +msgid "" +"EBICS Keys Root Directory %(dir)s is not available.\n" +"Please contact your system administrator." +msgstr "" +"Das EBICS-Schlüssel-Stammverzeichnis %(dir)s ist nicht verfügbar.\n" +"Bitte wenden Sie sich an Ihren Systemadministrator." + +#. module: account_ebics +#: model:res.groups,name:account_ebics.group_ebics_manager +msgid "EBICS Manager" +msgstr "EBICS-Manager" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_mark_as_downloaded +msgid "EBICS Mark as Downloaded" +msgstr "EBICS als heruntergeladen markieren" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__ebics_order_number +msgid "EBICS OrderID" +msgstr "EBICS-Auftrags-ID" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__ebics_partner +msgid "EBICS PartnerID" +msgstr "EBICS-PartnerID" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__ebics_passphrase +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_passphrase +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__ebics_passphrase +msgid "EBICS Passphrase" +msgstr "EBICS-Passphrase" + +#. module: account_ebics +#: model:ir.ui.menu,name:account_ebics.ebics_processing_menu +msgid "EBICS Processing" +msgstr "EBICS-Verarbeitung" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_public_bank_keys +msgid "EBICS Public Bank Keys" +msgstr "Öffentliche EBICS-Bankschlüssel" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_public_bank_keys_fn +msgid "EBICS Public Bank Keys Filename" +msgstr "Dateiname der öffentlichen EBICS-Bankschlüssel" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_userid__ebics_public_bank_keys +msgid "EBICS Public Bank Keys to be checked for consistency." +msgstr "" +"Öffentliche EBICS-Bankschlüssel, die auf Übereinstimmung geprüft werden " +"müssen." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__ebics_sig_passphrase +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_sig_passphrase +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__ebics_sig_passphrase +msgid "EBICS Signature Passphrase" +msgstr "EBICS-Signatur-Passphrase" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__ebics_passphrase_stored +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__ebics_passphrase_stored +msgid "EBICS Stored Passphrase" +msgstr "Gespeicherte EBICS-Passphrase" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "" +"EBICS Technical Error during download of File Format %(name)s " +"(%(order_type)s):" +msgstr "" +"Technischer EBICS-Fehler beim Herunterladen des Dateiformats %(name)s (%" +"(order_type)s):" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_admin_order.py:0 +msgid "EBICS Technical Error during execution of order %(order_type)s:" +msgstr "" +"Technischer EBICS-Fehler bei der Ausführung des Auftrags %(order_type)s:" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "EBICS Technical Error:" +msgstr "EBICS-Technischer Fehler:" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__ebics_url +msgid "EBICS URL" +msgstr "EBICS-URL" + +#. module: account_ebics +#: model:ir.ui.menu,name:account_ebics.ebics_xfer_menu_upload +msgid "EBICS Upload" +msgstr "EBICS-Upload" + +#. module: account_ebics +#: model:ir.actions.act_window,name:account_ebics.ebics_file_action_upload +msgid "EBICS Upload Files" +msgstr "EBICS-Dateien hochladen" + +#. module: account_ebics +#: model:ir.model,name:account_ebics.model_ebics_userid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__ebics_userid_id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__ebics_userid_id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__ebics_userid_ids +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__ebics_userid_id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__name +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__ebics_userid_id +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "EBICS UserID" +msgstr "EBICS-Benutzer-ID" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_config_view_form +msgid "EBICS Users" +msgstr "EBICS-Benutzer" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "" +"EBICS Verification Error during download of File Format %(name)s " +"(%(order_type)s):" +msgstr "" +"EBICS-Verifizierungsfehler beim Herunterladen des Dateiformats %(name)s (%" +"(order_type)s):" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "EBICS Verification Error:" +msgstr "EBICS-Verifizierungsfehler:" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_admin_order.py:0 +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "EBICS client setup failed for connection '%s'" +msgstr "Einrichtung des EBICS-Clients für die Verbindung '%s' fehlgeschlagen" + +#. module: account_ebics +#: model:ir.model,name:account_ebics.model_ebics_xfer +msgid "EBICS file transfer" +msgstr "" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__note +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__note +msgid "EBICS file transfer Log" +msgstr "Protokoll der EBICS-Dateiübertragung" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "EBICS file transfer result" +msgstr "Ergebnis der EBICS-Dateiübertragung" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__ebics_key_bitlength +msgid "EBICS key bitlength" +msgstr "EBICS-Schlüssellänge" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_config.py:0 +msgid "EBICS key bitlength must be >= 2048." +msgstr "Die Bitlänge des EBICS-Schlüssels muss >= 2048 sein." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__ebics_key_version +msgid "EBICS key version" +msgstr "EBICS-Schlüsselversion" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "EBICS keys change passphrase" +msgstr "Passphrase der EBICS-Schlüssel ändern" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__ebics_version +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__ebics_version +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_version +msgid "EBICS protocol version" +msgstr "EBICS-Protokollversion" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_format_view_search +msgid "EBICS version 2" +msgstr "EBICS-Version 2" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_format_view_search +msgid "EBICS version 3" +msgstr "EBICS-Version 3" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "EBICS version mismatch." +msgstr "EBICS-Versionskonflikt." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_keys_fn +msgid "Ebics Keys Fn" +msgstr "Dateiname der EBICS-Schlüssel" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_keys_found +msgid "Ebics Keys Found" +msgstr "EBICS-Schlüssel gefunden" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_passphrase_invisible +msgid "Ebics Passphrase Invisible" +msgstr "EBICS-Passphrase unsichtbar" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_passphrase_required +msgid "Ebics Passphrase Required" +msgstr "EBICS-Passphrase erforderlich" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_passphrase_store_readonly +msgid "Ebics Passphrase Store Readonly" +msgstr "EBICS-Passphrase speichern schreibgeschützt" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__ebics_sig_passphrase_invisible +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__ebics_sig_passphrase_invisible +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_sig_passphrase_invisible +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__ebics_sig_passphrase_invisible +msgid "Ebics Sig Passphrase Invisible" +msgstr "EBICS-Signatur-Passphrase unsichtbar" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_key_x509_dn_e +msgid "Email Address" +msgstr "E-Mail-Adresse" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__swift_3skey +msgid "Enable 3SKey support" +msgstr "3SKey-Unterstützung aktivieren" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file__download_process_method +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__download_process_method +msgid "" +"Enable processing within Odoo of the downloaded file via the 'Process' " +"button.E.g. specify camt.053 to import a camt.053 file and create a bank " +"statement." +msgstr "" +"Aktiviert die Verarbeitung der heruntergeladenen Datei in Odoo über die " +"Schaltfläche 'Verarbeiten'. Geben Sie z. B. camt.053 an, um eine camt.053-" +"Datei zu importieren und einen Kontoauszug zu erstellen." + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__pain_state__error +msgid "Error" +msgstr "Fehler" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "" +"Error detected during download of File Format %(name)s (%(order_type)s):" +msgstr "" +"Fehler beim Herunterladen des Dateiformats %(name)s (%(order_type)s) " +"festgestellt:" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "Error while accessing the EBICS Keys:" +msgstr "Fehler beim Zugriff auf die EBICS-Schlüssel:" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "Error while accessing the EBICS UserID:" +msgstr "Fehler beim Zugriff auf die EBICS-UserID:" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "Errors" +msgstr "Fehler" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_admin_order_view_form +msgid "Execute" +msgstr "Ausführen" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__data +msgid "File" +msgstr "Datei" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_search +msgid "File Format" +msgstr "Dateiformat" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_config_view_form +msgid "File Formats" +msgstr "Dateiformate" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file__date +msgid "File Upload/Download date" +msgstr "Datum des Datei-Uploads/-Downloads" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__upload_data +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__upload_data +msgid "File to Upload" +msgstr "Hochzuladende Datei" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__name +msgid "Filename" +msgstr "Dateiname" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "Force Active Keys" +msgstr "Aktive Schlüssel erzwingen" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__bank_statement_ids +msgid "Generated Bank Statements" +msgstr "Generierte Kontoauszüge" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "Get Bank Keys" +msgstr "Bankschlüssel abrufen" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_userid__state__get_bank_keys +msgid "Get Keys from Bank" +msgstr "Schlüssel von der Bank abrufen" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_config__ebics_version__h003 +msgid "H003 (2.4)" +msgstr "H003 (2.4)" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_config__ebics_version__h004 +msgid "H004 (2.5)" +msgstr "H004 (2.5)" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_config__ebics_version__h005 +msgid "H005 (3.0)" +msgstr "H005 (3.0)" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_config__ebics_userid_ids +#: model:ir.model.fields,help:account_ebics.field_ebics_userid__name +msgid "" +"Human users or a technical system that is/are assigned to a customer. \n" +"On the EBICS bank server it is identified by the combination of UserID and PartnerID. The technical subscriber serves only for the data exchange between customer and financial institution. The human user also can authorise orders." +msgstr "" +"Menschliche Benutzer oder ein technisches System, die einem Kunden " +"zugeordnet ist/sind. \n" +"Auf dem EBICS-Bankserver wird er durch die Kombination aus UserID und " +"PartnerID identifiziert. Der technische Teilnehmer dient ausschließlich dem " +"Datenaustausch zwischen Kunde und Kreditinstitut. Der menschliche Benutzer " +"kann zudem Aufträge autorisieren." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_account_bank_statement__id +#: model:ir.model.fields,field_description:account_ebics.field_account_journal__id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__id +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__id +msgid "ID" +msgstr "ID" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_ini_letter_fn +msgid "INI-letter Filename" +msgstr "Dateiname des INI-Briefs" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_userid__ebics_ini_letter +msgid "INI-letter PDF document to be sent to your bank." +msgstr "INI-Brief als PDF-Dokument, das an Ihre Bank zu senden ist." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "Import EBICS File" +msgstr "EBICS-Datei importieren" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_account_bank_statement__import_format +msgid "Import Format" +msgstr "Importformat" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "" +"Incorrect CFONB120 file:\n" +"the file is not divisible in 120 char lines" +msgstr "" +"Ungültige CFONB120-Datei:\n" +"die Datei lässt sich nicht in Zeilen zu 120 Zeichen aufteilen" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_change_passphrase.py:0 +msgid "Incorrect old passphrase." +msgstr "Falsche alte Passphrase." + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_userid__state__init +msgid "Initialisation" +msgstr "Initialisierung" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "Initialise EBICS Bank Keys" +msgstr "EBICS-Bankschlüssel initialisieren" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "Invalid XML file." +msgstr "Ungültige XML-Datei." + +#. module: account_ebics +#: model:ir.model,name:account_ebics.model_account_journal +msgid "Journal" +msgstr "Journal" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__write_uid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__write_uid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__write_uid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__write_uid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__write_uid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__write_uid +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__write_uid +msgid "Last Updated by" +msgstr "Zuletzt aktualisiert durch" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__write_date +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__write_date +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__write_date +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__write_date +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__write_date +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__write_date +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__write_date +msgid "Last Updated on" +msgstr "Zuletzt aktualisiert am" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_key_x509_dn_l +msgid "Locality Name [L]" +msgstr "Ortsname [L]" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_mark_as_downloaded +msgid "Mark as Downloaded" +msgstr "Als heruntergeladen markieren" + +#. module: account_ebics +#: model:ir.actions.act_window,name:account_ebics.ebics_xfer_action_mark_as_downloaded +#: model:ir.ui.menu,name:account_ebics.ebics_xfer_menu_mark_as_downloaded +msgid "Mark files as Downloaded" +msgstr "Dateien als heruntergeladen markieren" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__btf_format +msgid "" +"Message format consisting of 1-4 alphanumeric characters [A-Z0-9] (eg. XML, " +"JSON, PDF)." +msgstr "" +"Nachrichtenformat aus 1-4 alphanumerischen Zeichen [A-Z0-9] (z. B. XML, " +"JSON, PDF)." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__btf_variant +msgid "Message variant consisting of 3 numeric characters [0-9] (eg. 001)." +msgstr "Nachrichtenvariante aus 3 numerischen Zeichen [0-9] (z. B. 001)." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__btf_version +msgid "Message version consisting of 2 numeric characters [0-9] (eg. 03)." +msgstr "Nachrichtenversion aus 2 numerischen Zeichen [0-9] (z. B. 03)." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__name +msgid "Name" +msgstr "Name" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__new_pass +msgid "New Passphrase" +msgstr "Neue Passphrase" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__new_pass_check +msgid "New Passphrase (verification)" +msgstr "Neue Passphrase (Bestätigung)" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__new_sig_pass +msgid "New Signature Passphrase" +msgstr "Neue Signatur-Passphrase" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__new_sig_pass_check +msgid "New Signature Passphrase (verification)" +msgstr "Neue Signatur-Passphrase (Bestätigung)" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_change_passphrase.py:0 +msgid "New passphrase equal to old passphrase." +msgstr "Die neue Passphrase ist identisch mit der alten Passphrase." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_change_passphrase.py:0 +msgid "New passphrase verification error." +msgstr "Fehler bei der Überprüfung der neuen Passphrase." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_change_passphrase.py:0 +msgid "New signature passphrase equal to old signature passphrase." +msgstr "" +"Die neue Signatur-Passphrase ist identisch mit der alten Signatur-Passphrase." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_change_passphrase.py:0 +msgid "New signature passphrase verification error." +msgstr "Fehler bei der Überprüfung der neuen Signatur-Passphrase." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "No bank account number found." +msgstr "Keine Bankkontonummer gefunden." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "No bank defined for the financial journal of the EBICS Config" +msgstr "Keine Bank für das Finanzjournal der EBICS-Konfiguration definiert" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "No financial journal found for Account Number %(nbr)s, Currency %(cc)s" +msgstr "Kein Finanzjournal für Kontonummer %(nbr)s, Währung %(cc)s gefunden" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__note +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__note +msgid "Notes" +msgstr "Notizen" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "Number of errors: %(nr)s" +msgstr "Anzahl Fehler: %(nr)s" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "Number of warnings: %(nr)s" +msgstr "Anzahl Warnungen: %(nr)s" + +#. module: account_ebics +#: model:ir.model,name:account_ebics.model_ebics_file +msgid "Object to store EBICS Data Files" +msgstr "" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__old_pass +msgid "Old Passphrase" +msgstr "Alte Passphrase" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_change_passphrase__old_sig_pass +msgid "Old Signature Passphrase" +msgstr "Alte Signatur-Passphrase" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__admin_order_type +msgid "Order" +msgstr "Auftrag" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__order_number +msgid "Order Number" +msgstr "Auftragsnummer" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_config.py:0 +msgid "" +"Order Number should comply with the following pattern:\n" +"[A-Z]{1}[A-Z0-9]{3}" +msgstr "" +"Die Auftragsnummer muss folgendem Muster entsprechen:\n" +"[A-Z]{1}[A-Z0-9]{3}" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__order_type +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__order_type +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__order_type +msgid "Order Type" +msgstr "Bestelltyp" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_key_x509_dn_o +msgid "Organization Name [O]" +msgstr "Name der Organisation [O]" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_key_x509_dn_ou +msgid "Organizational Unit Name [OU]" +msgstr "Name der Organisationseinheit [OU]" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_config__ebics_partner +msgid "" +"Organizational unit (company or individual) that concludes a contract with the bank. \n" +"In this contract it will be agreed which order types (file formats) are used, which accounts are concerned, which of the customer's users (subscribers) communicate with the EBICS bank server and the authorisations that these users will possess. \n" +"It is identified by the PartnerID." +msgstr "" +"Organisationseinheit (Unternehmen oder Einzelperson), die einen Vertrag mit " +"der Bank abschließt. \n" +"In diesem Vertrag wird vereinbart, welche Auftragsarten (Dateiformate) " +"verwendet werden, welche Konten betroffen sind, welche Benutzer (Teilnehmer) " +"des Kunden mit dem EBICS-Bankserver kommunizieren und welche Berechtigungen " +"diese Benutzer besitzen. \n" +"Sie wird durch die PartnerID identifiziert." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "Origin: %s" +msgstr "Herkunft: %s" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__pain_state +msgid "Pain State" +msgstr "Pain-Status" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "Passphrase mismatch." +msgstr "Passphrasen stimmen nicht überein." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__signature_class +msgid "" +"Please doublecheck the security of your Odoo ERP system when using class 'E' to prevent unauthorised users to make supplier payments.\n" +"Leave this field empty to use the default defined for your EBICS UserID." +msgstr "" +"Bitte überprüfen Sie die Sicherheit Ihres Odoo-ERP-Systems, wenn Sie die " +"Klasse 'E' verwenden, um zu verhindern, dass unbefugte Benutzer " +"Lieferantenzahlungen ausführen.\n" +"Lassen Sie dieses Feld leer, um den für Ihre EBICS-UserID definierten " +"Standard zu verwenden." + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_form +msgid "Process" +msgstr "Prozess" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_form_result +msgid "Process EBICS File" +msgstr "EBICS-Datei verarbeiten" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__note_process +msgid "Process Notes" +msgstr "Verarbeitungsnotizen" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "Process file %(fn)s results:" +msgstr "Ergebnisse der Verarbeitung der Datei %(fn)s:" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_form +msgid "Process the EBICS File" +msgstr "EBICS-Datei verarbeiten" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "Renew Bank Keys" +msgstr "Bankschlüssel erneuern" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__name +msgid "Request Type" +msgstr "Antragsart" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_admin_order_view_form_result +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_change_passphrase_view_form_result +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_form_result +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_result +msgid "Results :" +msgstr "Ergebnisse:" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_config__ebics_keys +msgid "Root Directory for storing the EBICS Keys." +msgstr "Stammverzeichnis zum Speichern der EBICS-Schlüssel." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__btf_scope +msgid "" +"Scope of service.\n" +"Either an ISO-3166 ALPHA 2 country code or an issuer code of 3 alphanumeric characters [A-Z0-9]." +msgstr "" +"Geltungsbereich des Service.\n" +"Entweder ein Ländercode nach ISO-3166 ALPHA 2 oder ein Herausgebercode aus 3 " +"alphanumerischen Zeichen [A-Z0-9]." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_admin_order__format_id +#: model:ir.model.fields,help:account_ebics.field_ebics_xfer__format_id +msgid "" +"Select EBICS File Format to upload/download.\n" +"Leave blank to download all available files." +msgstr "" +"Wählen Sie das hoch- bzw. herunterzuladende EBICS-Dateiformat aus.\n" +"Lassen Sie das Feld leer, um alle verfügbaren Dateien herunterzuladen." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_admin_order__test_mode +#: model:ir.model.fields,help:account_ebics.field_ebics_xfer__test_mode +msgid "" +"Select this option to test if the syntax of the upload file is correct.\n" +"This option is only available for Order Type 'FUL'." +msgstr "" +"Wählen Sie diese Option, um zu testen, ob die Syntax der Upload-Datei " +"korrekt ist.\n" +"Diese Option ist nur für die Auftragsart 'FUL' verfügbar." + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_download +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_mark_as_downloaded +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_upload +msgid "Select your bank :" +msgstr "Wählen Sie Ihre Bank:" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_upload +msgid "Select your file :" +msgstr "Wählen Sie Ihre Datei:" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "Set a passphrase." +msgstr "Legen Sie eine Passphrase fest." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "Set state to 'Get Keys from Bank'." +msgstr "Status auf 'Schlüssel von Bank abrufen' setzen." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "Set state to 'Initialisation'." +msgstr "Status auf 'Initialisierung' setzen." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "Set state to 'Verification'." +msgstr "Status auf 'Verifizierung' setzen." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "Set state to 'draft' before Bank Key (re)initialisation." +msgstr "" +"Setzen Sie den Status vor der (Neu-)Initialisierung des Bankschlüssels auf " +"'Entwurf'." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "" +"Set the EBICS Configuation record to 'Draft' before starting the Key Renewal" +" process." +msgstr "" +"Setzen Sie den EBICS-Konfigurationsdatensatz auf 'Entwurf', bevor Sie den " +"Schlüsselerneuerungsprozess starten." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_userid__ebics_key_x509 +msgid "Set this flag in order to work with self-signed X.509 certificates" +msgstr "" +"Aktivieren Sie diese Option, um mit selbstsignierten X.509-Zertifikaten zu " +"arbeiten" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_form +msgid "Set to Done" +msgstr "Auf Erledigt setzen" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_config_view_form +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_form +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "Set to Draft" +msgstr "Auf Entwurf setzen" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_config_view_form +msgid "Set to Draft in order to change the EBICS configuration parameters." +msgstr "Setzen Sie auf Entwurf, um die EBICS-Konfigurationsparameter zu ändern." + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "Set to Draft in order to reinitialize your bank connection." +msgstr "Setzen Sie auf Entwurf, um Ihre Bankverbindung neu zu initialisieren." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__signature_class +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__signature_class +msgid "Signature Class" +msgstr "Signaturklasse" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file_format__signature_class__e +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_userid__signature_class__e +msgid "Single signature" +msgstr "Einzelunterschrift" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__suffix +msgid "" +"Specify the filename suffix for this File Format.\n" +"E.g. c53.xml" +msgstr "" +"Geben Sie das Dateinamensuffix für dieses Dateiformat an.\n" +"Z. B. c53.xml" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_config__order_number +msgid "" +"Specify the number for the next order.\n" +"This number should match the following pattern : [A-Z]{1}[A-Z0-9]{3}" +msgstr "" +"Geben Sie die Nummer für den nächsten Auftrag an.\n" +"Diese Nummer muss folgendem Muster entsprechen: [A-Z]{1}[A-Z0-9]{3}" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_config__state +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__state +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__state +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_search +msgid "State" +msgstr "Status" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_key_x509_dn_st +msgid "State Or Province Name [ST]" +msgstr "Bundesland oder Provinz [ST]" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "Statement %(st)s dated %(date)s (Company: %(cpy)s)" +msgstr "Kontoauszug %(st)s vom %(date)s (Unternehmen: %(cpy)s)" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "Statement %(st_name)s dated %(date)s has already been imported." +msgstr "Kontoauszug %(st_name)s vom %(date)s wurde bereits importiert." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "Statement for Account Number %(nr)s has not been processed." +msgstr "Kontoauszug für Kontonummer %(nr)s wurde nicht verarbeitet." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__ebics_passphrase_store +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_passphrase_store +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__ebics_passphrase_store +msgid "Store EBICS Passphrase" +msgstr "EBICS-Passphrase speichern" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__suffix +msgid "Suffix" +msgstr "Suffix" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__test_mode +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__test_mode +msgid "Test Mode" +msgstr "Testmodus" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_mark_as_downloaded +msgid "" +"The EBICS Files (Bank Statements) selected via this screen will not become available in Odoo as EBICS files but will be marked by your bank as downloaded.\n" +"
\n" +" As a consequence, these Bank Statements will not be retrieved by the next 'EBICS Batch Import' scheduled action." +msgstr "" +"Die über diesen Bildschirm ausgewählten EBICS-Dateien (Kontoauszüge) werden " +"in Odoo nicht als EBICS-Dateien verfügbar, sondern von Ihrer Bank als " +"heruntergeladen markiert.\n" +"
\n" +" Folglich werden diese Kontoauszüge von der nächsten " +"geplanten Aktion „EBICS Batch Import“ nicht abgerufen." + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_config_view_form +msgid "" +"The EBICS configuration must be confirmed before it can used for bank " +"transactions." +msgstr "" +"Die EBICS-Konfiguration muss bestätigt werden, bevor sie für " +"Banktransaktionen verwendet werden kann." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "The EBICS response could not be verified." +msgstr "Die EBICS-Antwort konnte nicht verifiziert werden." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "The Passphrase must be at least 8 characters long" +msgstr "Die Passphrase muss mindestens 8 Zeichen lang sein" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "The Signature Passphrase must be at least 8 characters long" +msgstr "Die Signatur-Passphrase muss mindestens 8 Zeichen lang sein" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_config__ebics_key_bitlength +msgid "" +"The bit length of the generated keys. \n" +"The value must be between 1536 and 4096." +msgstr "" +"Die Bitlänge der generierten Schlüssel. \n" +"Der Wert muss zwischen 1536 und 4096 liegen." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "" +"The current version of the 'account_ebics' module has no support to " +"automatically process EBICS files with format %s." +msgstr "" +"Die aktuelle Version des Moduls 'account_ebics' unterstützt die automatische " +"Verarbeitung von EBICS-Dateien im Format %s nicht." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "" +"The current version of this module requires to X509 support when enabling " +"3SKey" +msgstr "" +"Die aktuelle Version dieses Moduls erfordert X509-Unterstützung, wenn 3SKey " +"aktiviert wird" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_config__ebics_key_version +msgid "The key version of the electronic signature." +msgstr "Die Schlüsselversion der elektronischen Unterschrift." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "" +"The module to process the '%(ebics_format)s' format is not installed on your system. \n" +"Please install module '%(module)s'" +msgstr "" +"Das Modul zur Verarbeitung des Formats '%(ebics_format)s' ist auf Ihrem " +"System nicht installiert. \n" +"Bitte installieren Sie das Modul '%(module)s'" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "" +"The module to process the '%(ebics_format)s' format is not installed on your system. \n" +"Please install one of the following modules: \n" +"%(modules)s." +msgstr "" +"Das Modul zur Verarbeitung des Formats '%(ebics_format)s' ist auf Ihrem " +"System nicht installiert. \n" +"Bitte installieren Sie eines der folgenden Module: \n" +"%(modules)s." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__btf_option +msgid "" +"The service option code consisting of 3-10 alphanumeric characters [A-Z0-9] " +"(eg. COR, B2B)" +msgstr "" +"Der Code der Serviceoption aus 3-10 alphanumerischen Zeichen [A-Z0-9] (z. B. " +"COR, B2B)" + +#. module: account_ebics +#: model:ir.model.constraint,message:account_ebics.constraint_ebics_file_name_uniq +msgid "This File has already been down- or uploaded !" +msgstr "Diese Datei wurde bereits herunter- oder hochgeladen!" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "This file doesn't contain any transaction." +msgstr "Diese Datei enthält keine Transaktionen." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_userid__swift_3skey +msgid "" +"Transactions for this user will be signed by means of the SWIFT 3SKey token." +msgstr "" +"Transaktionen dieses Benutzers werden mit dem SWIFT-3SKey-Token signiert." + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file_format__signature_class__t +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_userid__signature_class__t +msgid "Transport signature" +msgstr "Transportunterschrift" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__type +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file_format__type +msgid "Type" +msgstr "Typ" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_file_format__btf_container +msgid "Type of container consisting of 3 characters [A-Z] (eg. XML, ZIP)." +msgstr "Containertyp aus 3 Zeichen [A-Z] (z. B. XML, ZIP)." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "Unknown Error" +msgstr "Unbekannter Fehler" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "" +"Unknown Error during download of File Format %(name)s (%(order_type)s):" +msgstr "" +"Unbekannter Fehler beim Herunterladen des Dateiformats %(name)s (%" +"(order_type)s):" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file_format__type__up +#: model:ir.ui.menu,name:account_ebics.ebics_file_menu_upload +msgid "Upload" +msgstr "Hochladen" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_form +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_list +msgid "Upload Date" +msgstr "Uploaddatum" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_upload +msgid "Upload File" +msgstr "Datei hochladen" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__upload_fname +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__upload_fname +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_upload +msgid "Upload Filename" +msgstr "Dateiname für Upload" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_admin_order__upload_format_ids +#: model:ir.model.fields,field_description:account_ebics.field_ebics_xfer__upload_format_ids +msgid "Upload Format" +msgstr "Upload-Format" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_userid__transaction_rights__up +msgid "Upload Only" +msgstr "Nur Upload" + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__pain_state__uploaded +msgid "Uploaded" +msgstr "Hochgeladen" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "" +"Use this button to bypass the EBICS initialization (e.g. in case you have " +"manually transferred active EBICS keys from another system." +msgstr "" +"Verwenden Sie diese Schaltfläche, um die EBICS-Initialisierung zu umgehen " +"(z. B. wenn Sie aktive EBICS-Schlüssel manuell aus einem anderen System " +"übertragen haben." + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form +msgid "Use this button to update the EBICS certificates of your bank." +msgstr "" +"Verwenden Sie diese Schaltfläche, um die EBICS-Zertifikate Ihrer Bank zu " +"aktualisieren." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_userid__transaction_rights +msgid "" +"Use this parameter to limit the transactions for this User to downloads or " +"uploads." +msgstr "" +"Verwenden Sie diesen Parameter, um die Transaktionen dieses Benutzers auf " +"Downloads oder Uploads zu beschränken." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__user_id +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_search +msgid "User" +msgstr "Benutzer" + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__user_ids +msgid "Users" +msgstr "Benutzer" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_userid__user_ids +msgid "Users who are allowed to use this EBICS UserID for bank transactions." +msgstr "" +"Benutzer, die diese EBICS-UserID für Banktransaktionen verwenden dürfen." + +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_userid__state__to_verify +msgid "Verification" +msgstr "Überprüfung" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "Versions supported by your bank:" +msgstr "Von Ihrer Bank unterstützte Versionen:" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_form_result +msgid "View Bank Statement(s)" +msgstr "Kontoauszug/-auszüge anzeigen" + +#. module: account_ebics +#: model_terms:ir.ui.view,arch_db:account_ebics.ebics_xfer_view_form_result +msgid "View EBICS File(s)" +msgstr "EBICS-Datei(en) anzeigen" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "Warnings" +msgstr "Warnungen" + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_admin_order__ebics_passphrase_store +#: model:ir.model.fields,help:account_ebics.field_ebics_userid__ebics_passphrase_store +#: model:ir.model.fields,help:account_ebics.field_ebics_xfer__ebics_passphrase_store +msgid "" +"When you uncheck this option the passphrase to unlock your private key will not be stored in the database. We recommend to use this if you want to upload signed payment orders via EBICS.\n" +"You will be prompted to enter the passphrase for every EBICS transaction, hence do not uncheck this option on a userid for automated EBICS downloads." +msgstr "" +"Wenn Sie diese Option deaktivieren, wird die Passphrase zum Entsperren Ihres " +"privaten Schlüssels nicht in der Datenbank gespeichert. Wir empfehlen dies, " +"wenn Sie signierte Zahlungsaufträge über EBICS hochladen möchten.\n" +"Sie werden bei jeder EBICS-Transaktion zur Eingabe der Passphrase " +"aufgefordert. Deaktivieren Sie diese Option daher nicht bei einer UserID für " +"automatisierte EBICS-Downloads." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "X.509 certificates must be used with EBICS 3.0." +msgstr "Mit EBICS 3.0 müssen X.509-Zertifikate verwendet werden." + +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_userid__ebics_key_x509 +msgid "X509 support" +msgstr "X509-Unterstützung" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "You can only remove EBICS files in state 'Draft'." +msgstr "Sie können nur EBICS-Dateien im Status 'Entwurf' entfernen." + +#. module: account_ebics +#: model:ir.model.fields,help:account_ebics.field_ebics_userid__ebics_sig_passphrase +msgid "" +"You can set here a different passphrase for the EBICS signing key. This " +"passphrase will never be stored hence you'll need to specify your passphrase" +" for each transaction that requires a digital signature." +msgstr "" +"Hier können Sie eine abweichende Passphrase für den EBICS-Signaturschlüssel " +"festlegen. Diese Passphrase wird niemals gespeichert, daher müssen Sie Ihre " +"Passphrase bei jeder Transaktion angeben, die eine digitale Signatur " +"erfordert." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_config.py:0 +msgid "You cannot remove active EBICS configurations." +msgstr "Aktive EBICS-Konfigurationen können nicht entfernt werden." + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_file.py:0 +msgid "s have" +msgstr "(e) wurden" + +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/models/ebics_userid.py:0 +msgid "" +"urlopen error:\n" +" url '%(url)s' - %(val)s" +msgstr "" +"urlopen-Fehler:\n" +" URL '%(url)s' - %(val)s" diff --git a/account_ebics/i18n/fr.po b/account_ebics/i18n/fr.po index c122d8c..74370d1 100644 --- a/account_ebics/i18n/fr.po +++ b/account_ebics/i18n/fr.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: Odoo Server 18.0+e\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2025-08-31 23:02+0000\n" -"PO-Revision-Date: 2026-06-04 12:17+0000\n" +"PO-Revision-Date: 2026-10-11 20:00+0000\n" "Last-Translator: Weblate Translation Memory \n" "Language-Team: French 1;\n" -"X-Generator: Weblate 5.15.1\n" +"X-Generator: Weblate 2026.9.1\n" #. module: account_ebics #. odoo-python @@ -32,6 +32,14 @@ msgstr " a" msgid "%(st_cnt)s bank statement%(sp)s been imported: " msgstr "%(st_cnt)s relevé bancaire%(sp)s été importé : " +#. module: account_ebics +#. odoo-python +#: code:addons/account_ebics/wizards/ebics_xfer.py:0 +msgid "'%(filename)s' has been uploaded via EBICS (OrderID: %(order_number)s)." +msgstr "" +"'%(filename)s' a été téléversé via EBICS (ID de commande : " +"%(order_number)s)." + #. module: account_ebics #: model:ir.model.fields,help:account_ebics.field_ebics_file__date_from msgid "'Date From' as entered in the download wizard." @@ -394,6 +402,7 @@ msgstr "Téléchargement et envoi" #. module: account_ebics #: model:ir.model.fields.selection,name:account_ebics.selection__ebics_config__state__draft +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__pain_state__draft #: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__state__draft #: model:ir.model.fields.selection,name:account_ebics.selection__ebics_userid__state__draft #: model_terms:ir.ui.view,arch_db:account_ebics.ebics_file_view_search @@ -672,10 +681,9 @@ msgid "EBICS Mark as Downloaded" msgstr "Marquer EBICS comme téléchargé" #. module: account_ebics -#. odoo-python -#: code:addons/account_ebics/wizards/ebics_xfer.py:0 -msgid "EBICS OrderID: %s" -msgstr "ID de commande EBICS : %s" +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__ebics_order_number +msgid "EBICS OrderID" +msgstr "ID de commande EBICS" #. module: account_ebics #: model:ir.model.fields,field_description:account_ebics.field_ebics_config__ebics_partner @@ -918,6 +926,11 @@ msgstr "" "'Traiter'. Par exemple, spécifiez camt.053 pour importer un fichier camt.053 " "et créer un relevé bancaire." +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__pain_state__error +msgid "Error" +msgstr "Erreur" + #. module: account_ebics #. odoo-python #: code:addons/account_ebics/wizards/ebics_xfer.py:0 @@ -1325,6 +1338,11 @@ msgstr "" msgid "Origin: %s" msgstr "Origine : %s" +#. module: account_ebics +#: model:ir.model.fields,field_description:account_ebics.field_ebics_file__pain_state +msgid "Pain State" +msgstr "Statut pain" + #. module: account_ebics #. odoo-python #: code:addons/account_ebics/models/ebics_userid.py:0 @@ -1784,6 +1802,11 @@ msgstr "Format de téléversement" msgid "Upload Only" msgstr "Téléversement uniquement" +#. module: account_ebics +#: model:ir.model.fields.selection,name:account_ebics.selection__ebics_file__pain_state__uploaded +msgid "Uploaded" +msgstr "Téléchargé" + #. module: account_ebics #: model_terms:ir.ui.view,arch_db:account_ebics.ebics_userid_view_form msgid "" @@ -1923,5 +1946,8 @@ msgstr "" "erreur urlopen :\n" " url '%(url)s' - %(val)s" +#~ msgid "EBICS OrderID: %s" +#~ msgstr "ID de commande EBICS : %s" + #~ msgid "Group By" #~ msgstr "Regrouper par" diff --git a/account_ebics/i18n/nl.po b/account_ebics/i18n/nl.po index 742cd82..98697f8 100644 --- a/account_ebics/i18n/nl.po +++ b/account_ebics/i18n/nl.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: Odoo Server 18.0+e\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2025-08-31 23:13+0000\n" -"PO-Revision-Date: 2026-06-04 12:17+0000\n" +"PO-Revision-Date: 2026-10-11 20:00+0000\n" "Last-Translator: Weblate Translation Memory \n" "Language-Team: Dutch - - - - -README.rst - - - -
- - -License: LGPL-3 +
-

EBICS banking protocol

-

Implementation of the EBICS banking protocol.

-

This module facilitates the exchange of files with banks via the EBICS protocol.

-
-

-
-
-

Installation

-

The module depends upon

+

EBICS Banking Protocol

+

Exchange files directly with your banks from Odoo, with no portal and nobody logging in.

+

EBICS, the Electronic Banking Internet Communication Standard, is the channel European +banks open to companies that want their software to talk to the bank. Bank statements are +downloaded on a schedule and payment files are uploaded from Odoo, authenticated by your +own cryptographic keys instead of a login page.

+

This module implements that protocol in Odoo. It is developed and maintained by +Noviat, and follows each new version of Odoo, which matters when a bank connection has to +survive your next migration.

+

If you are still working out whether EBICS is the right channel for you, we explain it +without the jargon, with screen recordings of the flow in Odoo, on +noviat.com/ebics.

+Statements come down as camt.053 or camt.052 files, payment files go up as pain.001 or pain.008, and your keys stay on your own server +
+

What you get

    -
  • https://pypi.python.org/pypi/fintech
  • -
  • https://pypi.python.org/pypi/cryptography
  • +
  • Statements that arrive on their own. A scheduled task collects the files your bank +publishes, for every account, and processes them into bank statements.
  • +
  • Payments that leave the same way. A payment batch or a payment order is uploaded to +the bank in the format the bank expects, without exporting a file and re-uploading it +somewhere else.
  • +
  • Several companies, one connection. Keys are held per bank rather than per company: +when fifteen entities bank with the same institution, the bank sends a single daily file +carrying fifteen statements and the module puts each statement in the right company.
  • +
  • No bank credentials in Odoo. The connection uses your own company keys, generated on +your side and kept on your server. Access to the EBICS configuration is a permission of +its own ('EBICS Manager'), separate from ordinary accounting rights.
  • +
  • A test mode, where your bank offers one. French banks accept a test flag, so a file +can be submitted and validated before anything is switched to production. German and +Swiss banks generally do not: there the first payment is a real one, kept small and sent +to an account you control.
  • +
  • A trace of every exchange. Each download and each upload is a record, with the file +it carried, the moment it happened and the user behind it.
-

Remark:

-

The EBICS 'Test Mode' for uploading orders requires fintech 4.3.4 or higher for EBICS 2.x -and fintech 7.2.7 or higher for EBICS 3.0.

-

SWIFT 3SKey support requires fintech 6.4 or higher.

-
-

+

EBICS 2.4, EBICS 2.5 and EBICS 3.0 are supported. EBICS 3.0, the current +specification since December 2022, names what is exchanged with BTF instead of the +country-specific order type codes of EBICS 2.x. Many banks still run 2.4 or 2.5 in parallel.

-

We also recommend to consider the installation of the following modules:

-
-

-
- -
-

-
- -
-

-
- -
-

-
-
    -
  • account_usability

    -

    Recommended if you have multiple financial journals. -This module adds a number of accounting menu entries such as bank statement list view -which allows to see all statements downloaded via the ir.cron automated EBICS download.

    -

    Cf. https://github.com/OCA/account-financial-tools

    -
  • -
-
-

-
- -
-

-
- -
-

-
- -
-

-
- -
-

-
-
-

Fintech license

-

If you have a valid fintech.ebics license, you should add the following -licensing parameters to the [options] section of the odoo server configuration file:

+ -
- - diff --git a/account_ebics/views/ebics_file_views.xml b/account_ebics/views/ebics_file_views.xml index 1368a56..edf2e22 100644 --- a/account_ebics/views/ebics_file_views.xml +++ b/account_ebics/views/ebics_file_views.xml @@ -135,6 +135,10 @@ string="Upload Date" invisible="context.get('ebics_mode') == 'down'" /> + diff --git a/account_ebics/wizards/ebics_xfer.py b/account_ebics/wizards/ebics_xfer.py index a284409..be700b7 100644 --- a/account_ebics/wizards/ebics_xfer.py +++ b/account_ebics/wizards/ebics_xfer.py @@ -406,11 +406,9 @@ class EbicsXfer(models.TransientModel): self.note += self.env._( "EBICS File has been uploaded (OrderID %s).", OrderID ) - ef_note = self.env._("EBICS OrderID: %s", OrderID) + ef_note = "" if self.env.context.get("origin"): - ef_note += "\n" + self.env._( - "Origin: %s", self.env.context["origin"] - ) + ef_note = self.env._("Origin: %s", self.env.context["origin"]) suffix = self.format_id.suffix fn = self.upload_fname if suffix and not fn.endswith(suffix): @@ -430,6 +428,9 @@ class EbicsXfer(models.TransientModel): } self._update_ef_vals(ef_vals) ebics_file = self.env["ebics.file"].create(ef_vals) + ebics_file.write( + {"ebics_order_number": OrderID, "pain_state": "uploaded"} + ) except EbicsFunctionalError: e = exc_info() @@ -458,16 +459,32 @@ class EbicsXfer(models.TransientModel): OrderID = self.ebics_config_id._get_order_number() self.ebics_config_id.sudo()._update_order_number(OrderID) - ebics_file and self._payment_order_postprocess(ebics_file) + ebics_file and self._payment_upload_postprocess(ebics_file) return ebics_file - def _payment_order_postprocess(self, ebics_file): - active_model = self.env.context.get("model") + def _payment_upload_postprocess(self, ebics_file): + ctx = self.env.context + active_model = ctx.get("model") + active_id = ctx.get("id") + payment_doc = None if active_model == "account.payment.order": - order = self.env["account.payment.order"].browse( - self.env.context["active_id"] + payment_doc = self.env["account.payment.order"].browse(active_id) + payment_doc.generated2uploaded() + elif active_model == "account.batch.payment": + payment_doc = self.env["account.batch.payment"].browse(active_id) + if payment_doc: + payment_doc.ebics_file_id = ebics_file + self._payment_upload_chatter_message(payment_doc, ebics_file) + + def _payment_upload_chatter_message(self, payment_doc, ebics_file): + payment_doc.message_post( + body=self.env._( + "'%(filename)s' has been uploaded via EBICS" + " (OrderID: %(order_number)s).", + filename=ebics_file.name, + order_number=ebics_file.ebics_order_number, ) - order.generated2uploaded() + ) def _setup_client(self): self.ebics_config_id._check_ebics_keys() diff --git a/account_ebics_batch/README.rst b/account_ebics_batch/README.rst index e69fa5b..b94554c 100644 --- a/account_ebics_batch/README.rst +++ b/account_ebics_batch/README.rst @@ -1,50 +1,51 @@ -.. image:: https://img.shields.io/badge/license-LGPL--3-blue.png - :target: https://www.gnu.org/licenses/lgpl - :alt: License: LGPL-3 +============================= +EBICS - Scheduled File Import +============================= -============================================ -Module to enable batch import of EBICS files -============================================ +**Your statements arrive without anyone asking for them.** -This module adds a cron job for the automated import of EBICS files. +This module adds a scheduled action that downloads and processes the EBICS files of every +confirmed connection. This is what turns EBICS from a manual download into something your +morning no longer depends on. -| +.. image:: https://raw.githubusercontent.com/Noviat/account_ebics/19.0/account_ebics_batch/static/description/ebics_download.png + :alt: A downloaded camt.053 statement file in Odoo, ready to be processed + :width: 100% -A Log is created during the import in order to document import errors. -If errors have been detected, the Batch Import Log state is set to 'error'. - -When all EBICS Files have been imported correctly, the Batch Import Log state is set to 'done'. - -| - -The user can reprocess the imported EBICS files in status 'draft' via the Log object 'REPROCESS' button until all errors have been cleared. - -As an alternative, the user can force the Batch Import Log state to 'done' -(e.g. when the errors have been circumvented via manual encoding or the reprocessing of a single EBICS file). - -| +Each run creates a **Batch Import Log**. When a file cannot be processed, the log is set to +*error* and records why; when every file is processed, it is set to *done*. From the log, +**Reprocess** retries the files still in draft until the errors are cleared. A log can also be +set to *done* by hand, for instance after a file was processed on its own or the movements +were entered manually. Configuration ============= -Adapt the 'EBICS Batch Import' ir.cron job created during the module installation. +The scheduled action **EBICS Batch Import** is created **inactive** at installation, with a +daily interval. Activate it in *Settings > Technical > Automation > Scheduled Actions* (developer +mode), and adapt its interval if needed. -The cron job calls the following python method: +It calls the following method, on all confirmed connections:: -| + model._batch_import() -.. code-block:: python +To limit it to some connections, pass their ids:: - _batch_import() + model._batch_import(ebics_config_ids=[1, 3]) +Part of the EBICS suite +======================= -The EBICS download will be performed on all confirmed EBICS connections. +This module extends **EBICS Banking Protocol** (``account_ebics``), the EBICS implementation +for Odoo developed and maintained by Noviat. Install it first: +https://github.com/Noviat/account_ebics -You can limit the automated operation to a subset of your EBICS connections via the ebics_config_ids parameter, e.g. +What EBICS is and what it changes, in plain language, with screen recordings of the flow: +https://www.noviat.com/ebics -| - -.. code-block:: python - - _batch_import(ebics_config_ids=[1,3]) +Credits +======= +Developed and maintained by `Noviat `_, Odoo integrator in Belgium, +specialised in accounting and finance since 2009. We configure the connection with your banks +and support you through the first cycles. diff --git a/account_ebics_batch/__manifest__.py b/account_ebics_batch/__manifest__.py index 50cbdd9..b136a95 100644 --- a/account_ebics_batch/__manifest__.py +++ b/account_ebics_batch/__manifest__.py @@ -2,13 +2,13 @@ # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). { - "name": "EBICS Files batch import", + "name": "EBICS - Scheduled File Import", "version": "19.0.1.0.1", "license": "LGPL-3", "author": "Noviat", "website": "https://www.noviat.com/", "category": "Accounting & Finance", - "summary": "EBICS Files automated import and processing", + "summary": "Download and process your EBICS files automatically, on a schedule", "depends": ["account_ebics"], "data": [ "security/ir.model.access.csv", @@ -16,5 +16,5 @@ "views/ebics_batch_log_views.xml", "views/menu.xml", ], - "images": ["static/description/cover.png"], + "images": ["static/description/banner.png"], } diff --git a/account_ebics_batch/i18n/de.po b/account_ebics_batch/i18n/de.po new file mode 100644 index 0000000..6de9798 --- /dev/null +++ b/account_ebics_batch/i18n/de.po @@ -0,0 +1,223 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_ebics_batch +# +# Weblate Translation Memory , 2026. +# Jérémy Didderen , 2026. +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 19.0+e\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2026-10-11 21:18+0000\n" +"Last-Translator: Jérémy Didderen \n" +"Language-Team: German \n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 2026.9.1\n" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__file_ids +msgid "Batch Import EBICS Files" +msgstr "Stapelimport EBICS-Dateien" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log_item__note +#: model_terms:ir.ui.view,arch_db:account_ebics_batch.ebics_batch_log_view_form +msgid "Batch Import Log" +msgstr "Stapelimportprotokoll" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__log_ids +msgid "Batch Import Log Items" +msgstr "Stapelimport-Protokollpositionen" + +#. module: account_ebics_batch +#: model_terms:ir.ui.view,arch_db:account_ebics_batch.ebics_batch_log_view_form +msgid "Batch Import Logs" +msgstr "Stapelimportprotokolle" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log_item__log_id +msgid "Batch Object" +msgstr "Stapelobjekt" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__create_uid +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log_item__create_uid +msgid "Created by" +msgstr "Erstellt durch" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__create_date +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log_item__create_date +msgid "Created on" +msgstr "Erstellt am" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__date_from +msgid "Date From" +msgstr "Startdatum" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__date_to +msgid "Date To" +msgstr "Enddatum" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__display_name +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log_item__display_name +msgid "Display Name" +msgstr "Anzeigename" + +#. module: account_ebics_batch +#: model:ir.model.fields.selection,name:account_ebics_batch.selection__ebics_batch_log__state__done +#: model:ir.model.fields.selection,name:account_ebics_batch.selection__ebics_batch_log_item__state__done +msgid "Done" +msgstr "Erledigt" + +#. module: account_ebics_batch +#: model:ir.model.fields.selection,name:account_ebics_batch.selection__ebics_batch_log__state__draft +#: model:ir.model.fields.selection,name:account_ebics_batch.selection__ebics_batch_log_item__state__draft +msgid "Draft" +msgstr "Entwurf" + +#. module: account_ebics_batch +#: model:ir.actions.server,name:account_ebics_batch.ir_cron_ebics_batch_import_ir_actions_server +msgid "EBICS Batch Import" +msgstr "EBICS-Stapelimport" + +#. module: account_ebics_batch +#: model_terms:ir.ui.view,arch_db:account_ebics_batch.ebics_batch_log_view_form +msgid "EBICS Batch Import Log" +msgstr "EBICS-Stapelimportprotokoll" + +#. module: account_ebics_batch +#: model:ir.actions.act_window,name:account_ebics_batch.ebics_batch_log_action +#: model:ir.ui.menu,name:account_ebics_batch.ebics_batch_log_menu +msgid "EBICS Batch Import Logs" +msgstr "EBICS-Stapelimportprotokolle" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__ebics_config_ids +msgid "EBICS Configurations" +msgstr "EBICS-Konfigurationen" + +#. module: account_ebics_batch +#: model_terms:ir.ui.view,arch_db:account_ebics_batch.ebics_batch_log_view_form +msgid "EBICS Files" +msgstr "EBICS-Dateien" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__file_count +msgid "EBICS Files Count" +msgstr "Anzahl EBICS-Dateien" + +#. module: account_ebics_batch +#: model:ir.model.fields.selection,name:account_ebics_batch.selection__ebics_batch_log__state__error +#: model:ir.model.fields.selection,name:account_ebics_batch.selection__ebics_batch_log_item__state__error +msgid "Error" +msgstr "Fehler" + +#. module: account_ebics_batch +#. odoo-python +#: code:addons/account_ebics_batch/models/ebics_batch_log.py:0 +msgid "Error while processing EBICS connection '%s' :\n" +msgstr "Fehler bei der Verarbeitung der EBICS-Verbindung '%s':\n" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__has_draft_files +msgid "Has Draft Files" +msgstr "Hat Entwurfsdateien" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__id +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log_item__id +msgid "ID" +msgstr "ID" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__write_uid +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log_item__write_uid +msgid "Last Updated by" +msgstr "Zuletzt aktualisiert durch" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__write_date +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log_item__write_date +msgid "Last Updated on" +msgstr "Zuletzt aktualisiert am" + +#. module: account_ebics_batch +#: model_terms:ir.ui.view,arch_db:account_ebics_batch.ebics_batch_log_view_form +msgid "Mark Done" +msgstr "Als erledigt markieren" + +#. module: account_ebics_batch +#. odoo-python +#: code:addons/account_ebics_batch/models/ebics_batch_log.py:0 +msgid "" +"No EBICS UserID with stored passphrase found.\n" +"You should configure such a UserID for automated downloads." +msgstr "" +"Keine EBICS-Benutzer-ID mit gespeicherter Passphrase gefunden.\n" +"Sie sollten eine solche Benutzer-ID für automatische Downloads konfigurieren." + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log_item__error_count +msgid "Number of Errors" +msgstr "Anzahl Fehler" + +#. module: account_ebics_batch +#: model:ir.model,name:account_ebics_batch.model_ebics_batch_log_item +msgid "Object to store EBICS Batch Import Log Items" +msgstr "" + +#. module: account_ebics_batch +#: model:ir.model,name:account_ebics_batch.model_ebics_batch_log +msgid "Object to store EBICS Batch Import Logs" +msgstr "" + +#. module: account_ebics_batch +#. odoo-python +#: code:addons/account_ebics_batch/models/ebics_batch_log.py:0 +msgid "Only log objects in state 'draft' can be deleted !" +msgstr "Nur Protokollobjekte im Status „Entwurf“ können gelöscht werden!" + +#. module: account_ebics_batch +#. odoo-python +#: code:addons/account_ebics_batch/models/ebics_batch_log.py:0 +msgid "Please set state to 'Confirm' and Reprocess this EBICS Import Log." +msgstr "" +"Bitte setzen Sie den Status auf „Bestätigen“ und verarbeiten Sie dieses " +"EBICS-Importprotokoll erneut." + +#. module: account_ebics_batch +#: model_terms:ir.ui.view,arch_db:account_ebics_batch.ebics_batch_log_view_form +msgid "Reprocess" +msgstr "Erneut verarbeiten" + +#. module: account_ebics_batch +#: model_terms:ir.ui.view,arch_db:account_ebics_batch.ebics_batch_log_view_form +msgid "Reprocess 'draft' EBICS Files" +msgstr "EBICS-Dateien im Status „Entwurf“ erneut verarbeiten" + +#. module: account_ebics_batch +#: model_terms:ir.ui.view,arch_db:account_ebics_batch.ebics_batch_log_view_search +msgid "Search EBICS Batch Import Log Files" +msgstr "EBICS-Stapelimportprotokolldateien suchen" + +#. module: account_ebics_batch +#: model_terms:ir.ui.view,arch_db:account_ebics_batch.ebics_batch_log_view_form +msgid "Set to Draft" +msgstr "Auf Entwurf setzen" + +#. module: account_ebics_batch +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log__state +#: model:ir.model.fields,field_description:account_ebics_batch.field_ebics_batch_log_item__state +#: model_terms:ir.ui.view,arch_db:account_ebics_batch.ebics_batch_log_view_search +msgid "State" +msgstr "Status" diff --git a/account_ebics_batch/static/description/banner.png b/account_ebics_batch/static/description/banner.png new file mode 100644 index 0000000..7a87b1c Binary files /dev/null and b/account_ebics_batch/static/description/banner.png differ diff --git a/account_ebics_batch/static/description/cover.png b/account_ebics_batch/static/description/cover.png deleted file mode 100644 index 41c4cec..0000000 Binary files a/account_ebics_batch/static/description/cover.png and /dev/null differ diff --git a/account_ebics_batch/static/description/ebics_download.png b/account_ebics_batch/static/description/ebics_download.png new file mode 100644 index 0000000..fd3e953 Binary files /dev/null and b/account_ebics_batch/static/description/ebics_download.png differ diff --git a/account_ebics_batch/static/description/icon.png b/account_ebics_batch/static/description/icon.png index 889d129..a2bfe03 100644 Binary files a/account_ebics_batch/static/description/icon.png and b/account_ebics_batch/static/description/icon.png differ diff --git a/account_ebics_batch/static/description/index.html b/account_ebics_batch/static/description/index.html index b177667..5febed0 100644 --- a/account_ebics_batch/static/description/index.html +++ b/account_ebics_batch/static/description/index.html @@ -1,406 +1,42 @@ - - - - - -README.rst - - - -
- - -License: LGPL-3 -
-

Module to enable batch import of EBICS files

-

This module adds a cron job for the automated import of EBICS files.

-
-

-
-

A Log is created during the import in order to document import errors. -If errors have been detected, the Batch Import Log state is set to 'error'.

-

When all EBICS Files have been imported correctly, the Batch Import Log state is set to 'done'.

-
-

-
-

The user can reprocess the imported EBICS files in status 'draft' via the Log object 'REPROCESS' button until all errors have been cleared.

-

As an alternative, the user can force the Batch Import Log state to 'done' -(e.g. when the errors have been circumvented via manual encoding or the reprocessing of a single EBICS file).

-
-

-
+ +
+

EBICS - Scheduled File Import

+

Your statements arrive without anyone asking for them.

+

This module adds a scheduled action that downloads and processes the EBICS files of every +confirmed connection. This is what turns EBICS from a manual download into something your +morning no longer depends on.

+A downloaded camt.053 statement file in Odoo, ready to be processed +

Each run creates a Batch Import Log. When a file cannot be processed, the log is set to +error and records why; when every file is processed, it is set to done. From the log, +Reprocess retries the files still in draft until the errors are cleared. A log can also be +set to done by hand, for instance after a file was processed on its own or the movements +were entered manually.

Configuration

-

Adapt the 'EBICS Batch Import' ir.cron job created during the module installation.

-

The cron job calls the following python method:

-
-

-
-
-_batch_import()
+

The scheduled action EBICS Batch Import is created inactive at installation, with a +daily interval. Activate it in Settings > Technical > Automation > Scheduled Actions (developer +mode), and adapt its interval if needed.

+

It calls the following method, on all confirmed connections:

+
+model._batch_import()
 
-

The EBICS download will be performed on all confirmed EBICS connections.

-

You can limit the automated operation to a subset of your EBICS connections via the ebics_config_ids parameter, e.g.

-
-

-
-
-_batch_import(ebics_config_ids=[1,3])
+

To limit it to some connections, pass their ids:

+
+model._batch_import(ebics_config_ids=[1, 3])
 
+
+

Part of the EBICS suite

+

This module extends EBICS Banking Protocol (account_ebics), the EBICS implementation +for Odoo developed and maintained by Noviat. Install it first: +https://github.com/Noviat/account_ebics

+

What EBICS is and what it changes, in plain language, with screen recordings of the flow: +https://www.noviat.com/ebics

+
+
+

Credits

+

Developed and maintained by Noviat, Odoo integrator in Belgium, +specialised in accounting and finance since 2009. We configure the connection with your banks +and support you through the first cycles.

- - diff --git a/account_ebics_batch_payment/README.rst b/account_ebics_batch_payment/README.rst index ef93f75..44bdf68 100644 --- a/account_ebics_batch_payment/README.rst +++ b/account_ebics_batch_payment/README.rst @@ -1,24 +1,52 @@ -.. image:: https://img.shields.io/badge/license-LGPL--3-blue.png - :target: https://www.gnu.org/licenses/lgpl - :alt: License: LGPL-3 +======================================== +EBICS - Batch Payments (Odoo Enterprise) +======================================== -============================== -Upload Batch Payment via EBICS -============================== +**Send a payment batch to the bank from Odoo, without touching a file.** -This module allows to upload a Batch Payment to the bank via the EBICS protocol. +This module lets you upload an Odoo Enterprise batch payment to the bank over EBICS. You +validate the batch, Odoo generates the payment file in the format the bank expects and +submits it. Nothing is exported to a folder and nothing is uploaded to a portal, which also +means nothing can be altered on the way. + +.. image:: https://raw.githubusercontent.com/Noviat/account_ebics/19.0/account_ebics_batch_payment/static/description/ebics_upload.png + :alt: Uploading a payment file over EBICS, with the test mode option + :width: 100% Installation ============ -This module depends upon the following modules: +This module depends on: -- account_ebics (cf. https://github.com/Noviat/account_ebics) -- account_ebics_oe (cf. https://github.com/Noviat/account_ebics) -- account_batch_payment (Odoo Enterprise) +- ``account_ebics`` (https://github.com/Noviat/account_ebics); +- ``account_batch_payment`` (Odoo Enterprise). + +Configuration +============= + +On the bank journal, in the incoming and outgoing payment methods, show the optional +**EBICS File Format** column and set the format of each payment method, for example +pain.001 for SEPA credit transfers and pain.008 for direct debits. The formats offered are +those of the journal's confirmed EBICS connection. Usage ===== -Create your Batch Payment and generate the bank file. -Upload the generated file via the 'EBICS Upload' button on the batch payment. +Validate the batch payment, then click **EBICS Upload**. + +Part of the EBICS suite +======================= + +This module extends **EBICS Banking Protocol** (``account_ebics``), the EBICS implementation +for Odoo developed and maintained by Noviat. Install it first: +https://github.com/Noviat/account_ebics + +What EBICS is and what it changes, in plain language, with screen recordings of the flow: +https://www.noviat.com/ebics + +Credits +======= + +Developed and maintained by `Noviat `_, Odoo integrator in Belgium, +specialised in accounting and finance since 2009. We configure the connection with your banks +and support you through the first cycles. diff --git a/account_ebics_batch_payment/__manifest__.py b/account_ebics_batch_payment/__manifest__.py index 475b4d1..2888320 100644 --- a/account_ebics_batch_payment/__manifest__.py +++ b/account_ebics_batch_payment/__manifest__.py @@ -2,8 +2,9 @@ # License LGPL-3 or later (https://www.gnu.org/licenses/lgpl). { - "name": "Upload Batch Payment via EBICS", - "version": "19.0.1.2.0", + "name": "EBICS - Batch Payments (Odoo Enterprise)", + "summary": "Send an Odoo Enterprise batch payment to the bank over EBICS", + "version": "19.0.1.3.0", "license": "LGPL-3", "author": "Noviat", "website": "https://www.noviat.com/", @@ -13,5 +14,5 @@ "views/account_journal_views.xml", "views/account_batch_payment_views.xml", ], - "images": ["static/description/cover.png"], + "images": ["static/description/banner.png"], } diff --git a/account_ebics_batch_payment/i18n/account_ebics_batch_payment.pot b/account_ebics_batch_payment/i18n/account_ebics_batch_payment.pot index 4778a68..72b0265 100644 --- a/account_ebics_batch_payment/i18n/account_ebics_batch_payment.pot +++ b/account_ebics_batch_payment/i18n/account_ebics_batch_payment.pot @@ -28,12 +28,22 @@ msgstr "" msgid "Display Name" msgstr "" +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_config_id +msgid "EBICS Config" +msgstr "" + #. module: account_ebics_batch_payment #: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_payment_method__ebics_file_format_id #: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_payment_method_line__ebics_file_format_id msgid "EBICS File Format" msgstr "" +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_order_number +msgid "EBICS OrderID" +msgstr "" + #. module: account_ebics_batch_payment #. odoo-python #: code:addons/account_ebics_batch_payment/models/account_batch_payment.py:0 @@ -41,6 +51,16 @@ msgstr "" msgid "EBICS Upload" msgstr "" +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_file_id +msgid "EBICS Upload File" +msgstr "" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_pain_state +msgid "EBICS Upload Status" +msgstr "" + #. module: account_ebics_batch_payment #: model:ir.model.fields,help:account_ebics_batch_payment.field_account_payment_method__ebics_file_format_id #: model:ir.model.fields,help:account_ebics_batch_payment.field_account_payment_method_line__ebics_file_format_id @@ -49,6 +69,11 @@ msgid "" "this payment method." msgstr "" +#. module: account_ebics_batch_payment +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "EBICS upload info" +msgstr "" + #. module: account_ebics_batch_payment #: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_journal__ebics_file_format_ids msgid "Ebics File Format" @@ -83,3 +108,13 @@ msgstr "" #: model:ir.model,name:account_ebics_batch_payment.model_account_payment_method_line msgid "Payment Methods" msgstr "" + +#. module: account_ebics_batch_payment +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "Upload File" +msgstr "" + +#. module: account_ebics_batch_payment +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "Upload Status" +msgstr "" diff --git a/account_ebics_batch_payment/i18n/de.po b/account_ebics_batch_payment/i18n/de.po new file mode 100644 index 0000000..d509451 --- /dev/null +++ b/account_ebics_batch_payment/i18n/de.po @@ -0,0 +1,128 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_ebics_batch_payment +# +# Weblate Translation Memory , 2026. +# Jérémy Didderen , 2026. +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 19.0+e\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2026-10-11 21:19+0000\n" +"Last-Translator: Jérémy Didderen \n" +"Language-Team: German \n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 2026.9.1\n" + +#. module: account_ebics_batch_payment +#. odoo-python +#: code:addons/account_ebics_batch_payment/models/account_batch_payment.py:0 +#: model:ir.model,name:account_ebics_batch_payment.model_account_batch_payment +msgid "Batch Payment" +msgstr "Sammelzahlung" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__display_name +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_journal__display_name +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_payment_method__display_name +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_payment_method_line__display_name +msgid "Display Name" +msgstr "Anzeigename" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_config_id +msgid "EBICS Config" +msgstr "EBICS-Konfiguration" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_payment_method__ebics_file_format_id +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_payment_method_line__ebics_file_format_id +msgid "EBICS File Format" +msgstr "EBICS-Dateiformat" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_order_number +msgid "EBICS OrderID" +msgstr "EBICS-Auftrags-ID" + +#. module: account_ebics_batch_payment +#. odoo-python +#: code:addons/account_ebics_batch_payment/models/account_batch_payment.py:0 +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "EBICS Upload" +msgstr "EBICS-Upload" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_file_id +msgid "EBICS Upload File" +msgstr "EBICS-Upload-Datei" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_pain_state +msgid "EBICS Upload Status" +msgstr "EBICS-Upload-Status" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,help:account_ebics_batch_payment.field_account_payment_method__ebics_file_format_id +#: model:ir.model.fields,help:account_ebics_batch_payment.field_account_payment_method_line__ebics_file_format_id +msgid "" +"EBICS file format to pre-select when uploading a batch payment that uses " +"this payment method." +msgstr "" +"EBICS-Dateiformat, das beim Hochladen einer Stapelzahlung mit dieser " +"Zahlungsmethode vorausgewählt wird." + +#. module: account_ebics_batch_payment +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "EBICS upload info" +msgstr "EBICS-Upload-Info" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_journal__ebics_file_format_ids +msgid "Ebics File Format" +msgstr "EBICS-Dateiformat" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__hide_ebics_upload +msgid "Hide Ebics Upload" +msgstr "EBICS-Upload ausblenden" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__id +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_journal__id +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_payment_method__id +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_payment_method_line__id +msgid "ID" +msgstr "ID" + +#. module: account_ebics_batch_payment +#: model:ir.model,name:account_ebics_batch_payment.model_account_journal +msgid "Journal" +msgstr "Journal" + +#. module: account_ebics_batch_payment +#. odoo-python +#: code:addons/account_ebics_batch_payment/models/account_batch_payment.py:0 +msgid "No active EBICS configuration available for the selected bank." +msgstr "Keine aktive EBICS-Konfiguration für die ausgewählte Bank verfügbar." + +#. module: account_ebics_batch_payment +#: model:ir.model,name:account_ebics_batch_payment.model_account_payment_method +#: model:ir.model,name:account_ebics_batch_payment.model_account_payment_method_line +msgid "Payment Methods" +msgstr "Zahlungsmethoden" + +#. module: account_ebics_batch_payment +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "Upload File" +msgstr "Datei hochladen" + +#. module: account_ebics_batch_payment +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "Upload Status" +msgstr "Upload-Status" diff --git a/account_ebics_batch_payment/i18n/fr.po b/account_ebics_batch_payment/i18n/fr.po index 8dbd3bf..e19cb68 100644 --- a/account_ebics_batch_payment/i18n/fr.po +++ b/account_ebics_batch_payment/i18n/fr.po @@ -3,14 +3,14 @@ # * account_ebics_batch_payment # # Weblate Translation Memory , 2025, 2026. +# Jérémy Didderen , 2026. msgid "" msgstr "" "Project-Id-Version: Odoo Server 18.0+e\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2025-08-31 23:02+0000\n" -"PO-Revision-Date: 2026-08-06 10:54+0000\n" -"Last-Translator: Weblate Translation Memory \n" +"PO-Revision-Date: 2026-10-11 21:18+0000\n" +"Last-Translator: Jérémy Didderen \n" "Language-Team: French \n" "Language: fr\n" @@ -18,7 +18,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 2026.7.1\n" +"X-Generator: Weblate 2026.9.1\n" #. module: account_ebics_batch_payment #. odoo-python @@ -35,12 +35,22 @@ msgstr "Paiement par lot" msgid "Display Name" msgstr "Nom affiché" +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_config_id +msgid "EBICS Config" +msgstr "Configuration EBICS" + #. module: account_ebics_batch_payment #: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_payment_method__ebics_file_format_id #: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_payment_method_line__ebics_file_format_id msgid "EBICS File Format" msgstr "Format de fichier EBICS" +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_order_number +msgid "EBICS OrderID" +msgstr "ID de commande EBICS" + #. module: account_ebics_batch_payment #. odoo-python #: code:addons/account_ebics_batch_payment/models/account_batch_payment.py:0 @@ -48,6 +58,16 @@ msgstr "Format de fichier EBICS" msgid "EBICS Upload" msgstr "Téléversement EBICS" +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_file_id +msgid "EBICS Upload File" +msgstr "Fichier de téléversement EBICS" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_pain_state +msgid "EBICS Upload Status" +msgstr "Statut du téléversement EBICS" + #. module: account_ebics_batch_payment #: model:ir.model.fields,help:account_ebics_batch_payment.field_account_payment_method__ebics_file_format_id #: model:ir.model.fields,help:account_ebics_batch_payment.field_account_payment_method_line__ebics_file_format_id @@ -55,11 +75,18 @@ msgid "" "EBICS file format to pre-select when uploading a batch payment that uses " "this payment method." msgstr "" +"Format de fichier EBICS à présélectionner lors du téléversement d'un " +"paiement groupé utilisant ce mode de paiement." + +#. module: account_ebics_batch_payment +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "EBICS upload info" +msgstr "Infos de téléversement EBICS" #. module: account_ebics_batch_payment #: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_journal__ebics_file_format_ids msgid "Ebics File Format" -msgstr "" +msgstr "Format de fichier EBICS" #. module: account_ebics_batch_payment #: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__hide_ebics_upload @@ -91,3 +118,13 @@ msgstr "" #: model:ir.model,name:account_ebics_batch_payment.model_account_payment_method_line msgid "Payment Methods" msgstr "Modes de paiement" + +#. module: account_ebics_batch_payment +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "Upload File" +msgstr "Charger un fichier" + +#. module: account_ebics_batch_payment +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "Upload Status" +msgstr "Statut du téléversement" diff --git a/account_ebics_batch_payment/i18n/nl.po b/account_ebics_batch_payment/i18n/nl.po index 6114d49..cbe6b00 100644 --- a/account_ebics_batch_payment/i18n/nl.po +++ b/account_ebics_batch_payment/i18n/nl.po @@ -3,14 +3,14 @@ # * account_ebics_batch_payment # # Weblate Translation Memory , 2025, 2026. +# Jérémy Didderen , 2026. msgid "" msgstr "" "Project-Id-Version: Odoo Server 18.0+e\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2025-08-31 23:13+0000\n" -"PO-Revision-Date: 2026-08-06 10:54+0000\n" -"Last-Translator: Weblate Translation Memory \n" +"PO-Revision-Date: 2026-10-11 21:18+0000\n" +"Last-Translator: Jérémy Didderen \n" "Language-Team: Dutch \n" "Language: nl\n" @@ -18,7 +18,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2026.7.1\n" +"X-Generator: Weblate 2026.9.1\n" #. module: account_ebics_batch_payment #. odoo-python @@ -35,12 +35,22 @@ msgstr "Batchbetaling" msgid "Display Name" msgstr "Weergavenaam" +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_config_id +msgid "EBICS Config" +msgstr "EBICS-configuratie" + #. module: account_ebics_batch_payment #: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_payment_method__ebics_file_format_id #: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_payment_method_line__ebics_file_format_id msgid "EBICS File Format" msgstr "EBICS-bestandsformaat" +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_order_number +msgid "EBICS OrderID" +msgstr "EBICS-order-ID" + #. module: account_ebics_batch_payment #. odoo-python #: code:addons/account_ebics_batch_payment/models/account_batch_payment.py:0 @@ -48,6 +58,16 @@ msgstr "EBICS-bestandsformaat" msgid "EBICS Upload" msgstr "EBICS-upload" +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_file_id +msgid "EBICS Upload File" +msgstr "EBICS-uploadbestand" + +#. module: account_ebics_batch_payment +#: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__ebics_pain_state +msgid "EBICS Upload Status" +msgstr "EBICS-uploadstatus" + #. module: account_ebics_batch_payment #: model:ir.model.fields,help:account_ebics_batch_payment.field_account_payment_method__ebics_file_format_id #: model:ir.model.fields,help:account_ebics_batch_payment.field_account_payment_method_line__ebics_file_format_id @@ -55,11 +75,18 @@ msgid "" "EBICS file format to pre-select when uploading a batch payment that uses " "this payment method." msgstr "" +"EBICS-bestandsformaat dat vooraf wordt geselecteerd bij het uploaden van een " +"batchbetaling die deze betaalmethode gebruikt." + +#. module: account_ebics_batch_payment +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "EBICS upload info" +msgstr "EBICS-uploadinfo" #. module: account_ebics_batch_payment #: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_journal__ebics_file_format_ids msgid "Ebics File Format" -msgstr "" +msgstr "EBICS-bestandsformaat" #. module: account_ebics_batch_payment #: model:ir.model.fields,field_description:account_ebics_batch_payment.field_account_batch_payment__hide_ebics_upload @@ -91,3 +118,13 @@ msgstr "" #: model:ir.model,name:account_ebics_batch_payment.model_account_payment_method_line msgid "Payment Methods" msgstr "Betaalmethodes" + +#. module: account_ebics_batch_payment +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "Upload File" +msgstr "Bestand uploaden" + +#. module: account_ebics_batch_payment +#: model_terms:ir.ui.view,arch_db:account_ebics_batch_payment.view_batch_payment_form +msgid "Upload Status" +msgstr "Uploadstatus" diff --git a/account_ebics_batch_payment/models/account_batch_payment.py b/account_ebics_batch_payment/models/account_batch_payment.py index f6eecf9..1c99c10 100644 --- a/account_ebics_batch_payment/models/account_batch_payment.py +++ b/account_ebics_batch_payment/models/account_batch_payment.py @@ -8,19 +8,47 @@ from odoo.exceptions import UserError class AccountBatchPayment(models.Model): _inherit = "account.batch.payment" + ebics_config_id = fields.Many2one( + comodel_name="ebics.config", + related="journal_id.ebics_config_id", + ) + ebics_file_id = fields.Many2one( + comodel_name="ebics.file", + string="EBICS Upload File", + readonly=True, + ) + ebics_pain_state = fields.Selection( + related="ebics_file_id.pain_state", + string="EBICS Upload Status", + ) + ebics_order_number = fields.Char( + related="ebics_file_id.ebics_order_number", + string="EBICS OrderID", + ) hide_ebics_upload = fields.Boolean( compute="_compute_hide_ebics_upload", default=True ) - @api.depends("journal_id.ebics_config_id", "file_generation_enabled", "state") + @api.depends( + "journal_id.ebics_config_id", + "file_generation_enabled", + "state", + "ebics_file_id.pain_state", + ) def _compute_hide_ebics_upload(self): for rec in self: rec.hide_ebics_upload = ( - not rec.journal_id.ebics_config_id + self.env.neutralized + or not rec.journal_id.ebics_config_id or not rec.file_generation_enabled or rec.state != "sent" + or rec.ebics_pain_state == "uploaded" ) + def export_batch_payment(self): + self.filtered("ebics_file_id").write({"ebics_file_id": False}) + return super().export_batch_payment() + def ebics_upload(self): self.ensure_one() ctx = self.env.context.copy() @@ -38,6 +66,8 @@ class AccountBatchPayment(models.Model): "default_upload_data": self.export_file, "default_upload_fname": self.export_filename, "origin": origin, + "model": self._name, + "id": self.id, } ) diff --git a/account_ebics_batch_payment/static/description/banner.png b/account_ebics_batch_payment/static/description/banner.png new file mode 100644 index 0000000..813d10d Binary files /dev/null and b/account_ebics_batch_payment/static/description/banner.png differ diff --git a/account_ebics_batch_payment/static/description/cover.png b/account_ebics_batch_payment/static/description/cover.png deleted file mode 100644 index 41c4cec..0000000 Binary files a/account_ebics_batch_payment/static/description/cover.png and /dev/null differ diff --git a/account_ebics_batch_payment/static/description/ebics_upload.png b/account_ebics_batch_payment/static/description/ebics_upload.png new file mode 100644 index 0000000..5b35920 Binary files /dev/null and b/account_ebics_batch_payment/static/description/ebics_upload.png differ diff --git a/account_ebics_batch_payment/static/description/icon.png b/account_ebics_batch_payment/static/description/icon.png index 889d129..a2bfe03 100644 Binary files a/account_ebics_batch_payment/static/description/icon.png and b/account_ebics_batch_payment/static/description/icon.png differ diff --git a/account_ebics_batch_payment/static/description/index.html b/account_ebics_batch_payment/static/description/index.html index cc2bbd6..6dfb2b9 100644 --- a/account_ebics_batch_payment/static/description/index.html +++ b/account_ebics_batch_payment/static/description/index.html @@ -1,386 +1,43 @@ - - - - - -README.rst - - - -
- - -License: LGPL-3 -
-

Upload Batch Payment via EBICS

-

This module allows to upload a Batch Payment to the bank via the EBICS protocol.

+ +
+

EBICS - Batch Payments (Odoo Enterprise)

+

Send a payment batch to the bank from Odoo, without touching a file.

+

This module lets you upload an Odoo Enterprise batch payment to the bank over EBICS. You +validate the batch, Odoo generates the payment file in the format the bank expects and +submits it. Nothing is exported to a folder and nothing is uploaded to a portal, which also +means nothing can be altered on the way.

+Uploading a payment file over EBICS, with the test mode option

Installation

-

This module depends upon the following modules:

+

This module depends on:

+
+

Configuration

+

On the bank journal, in the incoming and outgoing payment methods, show the optional +EBICS File Format column and set the format of each payment method, for example +pain.001 for SEPA credit transfers and pain.008 for direct debits. The formats offered are +those of the journal's confirmed EBICS connection.

+

Usage

-

Create your Batch Payment and generate the bank file. -Upload the generated file via the 'EBICS Upload' button on the batch payment.

+

Validate the batch payment, then click EBICS Upload.

+
+
+

Part of the EBICS suite

+

This module extends EBICS Banking Protocol (account_ebics), the EBICS implementation +for Odoo developed and maintained by Noviat. Install it first: +https://github.com/Noviat/account_ebics

+

What EBICS is and what it changes, in plain language, with screen recordings of the flow: +https://www.noviat.com/ebics

+
+
+

Credits

+

Developed and maintained by Noviat, Odoo integrator in Belgium, +specialised in accounting and finance since 2009. We configure the connection with your banks +and support you through the first cycles.

-
- - diff --git a/account_ebics_batch_payment/views/account_batch_payment_views.xml b/account_ebics_batch_payment/views/account_batch_payment_views.xml index 3bdf1fd..b247106 100644 --- a/account_ebics_batch_payment/views/account_batch_payment_views.xml +++ b/account_ebics_batch_payment/views/account_batch_payment_views.xml @@ -14,6 +14,19 @@ class="oe_highlight" /> + + + + + + + + + diff --git a/account_ebics_oe/README.rst b/account_ebics_oe/README.rst index cf11b5f..4bf4ba6 100644 --- a/account_ebics_oe/README.rst +++ b/account_ebics_oe/README.rst @@ -1,16 +1,32 @@ -.. image:: https://img.shields.io/badge/license-LGPL--3-blue.png - :target: https://www.gnu.org/licenses/lgpl - :alt: License: LGPL-3 +=================================== +EBICS - Odoo Enterprise Integration +=================================== -============================================== -Deploy account_ebics module on Odoo Enterprise -============================================== +**Glue module. Install it and forget it.** -This module makes it possible to deploy the 'account_ebics' -module on Odoo Enterprise. +On Odoo Enterprise, this module places the **EBICS Processing** menu in the top bar of +the Accounting application. -This module will be installed automatically when following modules are activated -on your odoo database : +It is installed automatically when both of these modules are installed: -- account_ebics -- account_accountant +- ``account_ebics``; +- ``accountant`` (the Odoo Enterprise Accounting application). + +There is nothing to configure. + +Part of the EBICS suite +======================= + +This module extends **EBICS Banking Protocol** (``account_ebics``), the EBICS implementation +for Odoo developed and maintained by Noviat. Install it first: +https://github.com/Noviat/account_ebics + +What EBICS is and what it changes, in plain language, with screen recordings of the flow: +https://www.noviat.com/ebics + +Credits +======= + +Developed and maintained by `Noviat `_, Odoo integrator in Belgium, +specialised in accounting and finance since 2009. We configure the connection with your banks +and support you through the first cycles. diff --git a/account_ebics_oe/__manifest__.py b/account_ebics_oe/__manifest__.py index cf3cbc0..ccabb03 100644 --- a/account_ebics_oe/__manifest__.py +++ b/account_ebics_oe/__manifest__.py @@ -2,8 +2,8 @@ # License LGPL-3 or later (https://www.gnu.org/licenses/lgpl). { - "name": "account_ebics on Odoo Enterprise", - "summary": "Deploy account_ebics module on Odoo Enterprise", + "name": "EBICS - Odoo Enterprise Integration", + "summary": "Place the EBICS menus in the Odoo Enterprise accounting application", "version": "19.0.1.0.0", "author": "Noviat", "website": "https://www.noviat.com/", @@ -15,5 +15,5 @@ ], "data": ["views/account_ebics_menu.xml"], "auto_install": True, - "images": ["static/description/cover.png"], + "images": ["static/description/banner.png"], } diff --git a/account_ebics_oe/static/description/banner.png b/account_ebics_oe/static/description/banner.png new file mode 100644 index 0000000..99f6c06 Binary files /dev/null and b/account_ebics_oe/static/description/banner.png differ diff --git a/account_ebics_oe/static/description/cover.png b/account_ebics_oe/static/description/cover.png deleted file mode 100644 index 41c4cec..0000000 Binary files a/account_ebics_oe/static/description/cover.png and /dev/null differ diff --git a/account_ebics_oe/static/description/icon.png b/account_ebics_oe/static/description/icon.png index 889d129..a2bfe03 100644 Binary files a/account_ebics_oe/static/description/icon.png and b/account_ebics_oe/static/description/icon.png differ diff --git a/account_ebics_oe/static/description/index.html b/account_ebics_oe/static/description/index.html index aa5fdc5..ce2a4e8 100644 --- a/account_ebics_oe/static/description/index.html +++ b/account_ebics_oe/static/description/index.html @@ -1,379 +1,27 @@ - - - - - -README.rst - - - -
- - -License: LGPL-3 -
-

Deploy account_ebics module on Odoo Enterprise

-

This module makes it possible to deploy the 'account_ebics' -module on Odoo Enterprise.

-

This module will be installed automatically when following modules are activated -on your odoo database :

+ +
+

EBICS - Odoo Enterprise Integration

+

Glue module. Install it and forget it.

+

On Odoo Enterprise, this module places the EBICS Processing menu in the top bar of +the Accounting application.

+

It is installed automatically when both of these modules are installed:

    -
  • account_ebics
  • -
  • account_accountant
  • +
  • account_ebics;
  • +
  • accountant (the Odoo Enterprise Accounting application).
+

There is nothing to configure.

+
+

Part of the EBICS suite

+

This module extends EBICS Banking Protocol (account_ebics), the EBICS implementation +for Odoo developed and maintained by Noviat. Install it first: +https://github.com/Noviat/account_ebics

+

What EBICS is and what it changes, in plain language, with screen recordings of the flow: +https://www.noviat.com/ebics

+
+
+

Credits

+

Developed and maintained by Noviat, Odoo integrator in Belgium, +specialised in accounting and finance since 2009. We configure the connection with your banks +and support you through the first cycles.

- - diff --git a/account_ebics_payment_order/README.rst b/account_ebics_payment_order/README.rst index 571a0fc..9e0e027 100644 --- a/account_ebics_payment_order/README.rst +++ b/account_ebics_payment_order/README.rst @@ -1,28 +1,48 @@ -.. image:: https://img.shields.io/badge/licence-LGPL--3-blue.svg - :target: https://www.gnu.org/licenses/lgpl - :alt: License: AGPL-3 +============================ +EBICS - Payment Orders (OCA) +============================ -============================== -Upload Payment Order via EBICS -============================== +**Send an OCA payment order to the bank from Odoo, without touching a file.** -This module allows to upload a Payment Order to the bank via the EBICS protocol. +This module lets you upload a payment order of the OCA ``account_payment_order`` module to +the bank over EBICS. + +.. image:: https://raw.githubusercontent.com/Noviat/account_ebics/19.0/account_ebics_payment_order/static/description/ebics_upload.png + :alt: Uploading a payment file over EBICS, with the test mode option + :width: 100% Installation ============ -This module depends upon the following modules (cf. apps.odoo.com): +This module depends on: -- account_ebics -- account_payment_order +- ``account_ebics`` (https://github.com/Noviat/account_ebics); +- ``account_payment_order`` (https://github.com/OCA/bank-payment). Configuration ============= -Set the EBICS File Format on your Payment Modes. +Set the **EBICS File Format** on your payment modes. Usage ===== -Create your Payment Order and generate the bank file. -Upload the generated file via the 'EBICS Upload' button on the payment order. +Create the payment order and generate the bank file, then upload it with the **EBICS +Upload** button of the payment order. + +Part of the EBICS suite +======================= + +This module extends **EBICS Banking Protocol** (``account_ebics``), the EBICS implementation +for Odoo developed and maintained by Noviat. Install it first: +https://github.com/Noviat/account_ebics + +What EBICS is and what it changes, in plain language, with screen recordings of the flow: +https://www.noviat.com/ebics + +Credits +======= + +Developed and maintained by `Noviat `_, Odoo integrator in Belgium, +specialised in accounting and finance since 2009. We configure the connection with your banks +and support you through the first cycles. diff --git a/account_ebics_payment_order/__manifest__.py b/account_ebics_payment_order/__manifest__.py index 14eeabe..e4f89a3 100644 --- a/account_ebics_payment_order/__manifest__.py +++ b/account_ebics_payment_order/__manifest__.py @@ -2,8 +2,9 @@ # License LGPL-3 or later (https://www.gnu.org/licenses/lgpl). { - "name": "Upload Payment Order via EBICS", - "version": "19.0.1.0.0", + "name": "EBICS - Payment Orders (OCA)", + "summary": "Send an OCA payment order to the bank over EBICS", + "version": "19.0.1.1.0", "license": "LGPL-3", "author": "Noviat", "website": "https://www.noviat.com/", @@ -13,5 +14,5 @@ "views/account_payment_order_views.xml", "views/account_payment_mode_views.xml", ], - "images": ["static/description/cover.png"], + "images": ["static/description/banner.png"], } diff --git a/account_ebics_payment_order/i18n/account_ebics_payment_order.pot b/account_ebics_payment_order/i18n/account_ebics_payment_order.pot index c737ddc..8b034e3 100644 --- a/account_ebics_payment_order/i18n/account_ebics_payment_order.pot +++ b/account_ebics_payment_order/i18n/account_ebics_payment_order.pot @@ -19,11 +19,21 @@ msgstr "" msgid "Display Name" msgstr "" +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__ebics_config_id +msgid "EBICS Config" +msgstr "" + #. module: account_ebics_payment_order #: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_mode__ebics_format_id msgid "EBICS File Format" msgstr "" +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__ebics_order_number +msgid "EBICS OrderID" +msgstr "" + #. module: account_ebics_payment_order #. odoo-python #: code:addons/account_ebics_payment_order/models/account_payment_order.py:0 @@ -31,6 +41,16 @@ msgstr "" msgid "EBICS Upload" msgstr "" +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__ebics_file_id +msgid "EBICS Upload File" +msgstr "" + +#. module: account_ebics_payment_order +#: model_terms:ir.ui.view,arch_db:account_ebics_payment_order.account_payment_order_form +msgid "EBICS upload info" +msgstr "" + #. module: account_ebics_payment_order #: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__hide_ebics_upload msgid "Hide Ebics Upload" @@ -86,3 +106,8 @@ msgid "" "This payment order doesn't contains attachments.\n" "Please generate first the Payment Order file." msgstr "" + +#. module: account_ebics_payment_order +#: model_terms:ir.ui.view,arch_db:account_ebics_payment_order.account_payment_order_form +msgid "Upload File" +msgstr "" diff --git a/account_ebics_payment_order/i18n/de.po b/account_ebics_payment_order/i18n/de.po new file mode 100644 index 0000000..5d484c0 --- /dev/null +++ b/account_ebics_payment_order/i18n/de.po @@ -0,0 +1,125 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_ebics_payment_order +# +# Weblate Translation Memory , 2026. +# Jérémy Didderen , 2026. +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 19.0+e\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2026-10-11 21:19+0000\n" +"Last-Translator: Weblate Translation Memory \n" +"Language-Team: German \n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 2026.9.1\n" + +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_mode__display_name +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__display_name +msgid "Display Name" +msgstr "Anzeigename" + +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__ebics_config_id +msgid "EBICS Config" +msgstr "EBICS-Konfiguration" + +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_mode__ebics_format_id +msgid "EBICS File Format" +msgstr "EBICS-Dateiformat" + +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__ebics_order_number +msgid "EBICS OrderID" +msgstr "EBICS-Auftrags-ID" + +#. module: account_ebics_payment_order +#. odoo-python +#: code:addons/account_ebics_payment_order/models/account_payment_order.py:0 +#: model_terms:ir.ui.view,arch_db:account_ebics_payment_order.account_payment_order_form +msgid "EBICS Upload" +msgstr "EBICS-Upload" + +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__ebics_file_id +msgid "EBICS Upload File" +msgstr "EBICS-Upload-Datei" + +#. module: account_ebics_payment_order +#: model_terms:ir.ui.view,arch_db:account_ebics_payment_order.account_payment_order_form +msgid "EBICS upload info" +msgstr "EBICS-Upload-Info" + +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__hide_ebics_upload +msgid "Hide Ebics Upload" +msgstr "EBICS-Upload ausblenden" + +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_mode__id +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__id +msgid "ID" +msgstr "ID" + +#. module: account_ebics_payment_order +#. odoo-python +#: code:addons/account_ebics_payment_order/models/account_payment_order.py:0 +msgid "Missing EBICS File Format setting on your Payment Mode." +msgstr "Fehlende Einstellung für das EBICS-Dateiformat in Ihrem Zahlungsmodus." + +#. module: account_ebics_payment_order +#. odoo-python +#: code:addons/account_ebics_payment_order/models/account_payment_order.py:0 +msgid "No active EBICS configuration available for the selected bank." +msgstr "Keine aktive EBICS-Konfiguration für die ausgewählte Bank verfügbar." + +#. module: account_ebics_payment_order +#: model:ir.model,name:account_ebics_payment_order.model_account_payment_mode +msgid "Payment Modes" +msgstr "" + +#. module: account_ebics_payment_order +#. odoo-python +#: code:addons/account_ebics_payment_order/models/account_payment_order.py:0 +#: model:ir.model,name:account_ebics_payment_order.model_account_payment_order +msgid "Payment Order" +msgstr "Zahlungsauftrag" + +#. module: account_ebics_payment_order +#: model:ir.model.fields,help:account_ebics_payment_order.field_account_payment_mode__ebics_format_id +msgid "Select EBICS File Format to upload." +msgstr "Wählen Sie das hochzuladende EBICS-Dateiformat." + +#. module: account_ebics_payment_order +#. odoo-python +#: code:addons/account_ebics_payment_order/models/account_payment_order.py:0 +msgid "" +"This payment order contains multiple attachments.\n" +"Please remove the obsolete attachments or upload the payment order file via the EBICS Processing > EBICS Upload menu" +msgstr "" +"Dieser Zahlungsauftrag enthält mehrere Anhänge.\n" +"Bitte entfernen Sie die veralteten Anhänge oder laden Sie die " +"Zahlungsauftragsdatei über das Menü EBICS Processing > EBICS Upload hoch" + +#. module: account_ebics_payment_order +#. odoo-python +#: code:addons/account_ebics_payment_order/models/account_payment_order.py:0 +msgid "" +"This payment order doesn't contains attachments.\n" +"Please generate first the Payment Order file." +msgstr "" +"Dieser Zahlungsauftrag enthält keine Anhänge.\n" +"Bitte erstellen Sie zuerst die Zahlungsauftragsdatei." + +#. module: account_ebics_payment_order +#: model_terms:ir.ui.view,arch_db:account_ebics_payment_order.account_payment_order_form +msgid "Upload File" +msgstr "Datei hochladen" diff --git a/account_ebics_payment_order/i18n/fr.po b/account_ebics_payment_order/i18n/fr.po index e18c280..967eea9 100644 --- a/account_ebics_payment_order/i18n/fr.po +++ b/account_ebics_payment_order/i18n/fr.po @@ -3,11 +3,12 @@ # * account_ebics_payment_order # # Weblate Translation Memory , 2026. +# Jérémy Didderen , 2026. msgid "" msgstr "" "Project-Id-Version: Odoo Server 18.0+e\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-25 17:54+0000\n" +"PO-Revision-Date: 2026-10-11 21:18+0000\n" "Last-Translator: Weblate Translation Memory \n" "Language-Team: French 1;\n" -"X-Generator: Weblate 2026.7.1\n" +"X-Generator: Weblate 2026.9.1\n" #. module: account_ebics_payment_order #: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_mode__display_name @@ -25,11 +26,21 @@ msgstr "" msgid "Display Name" msgstr "Nom affiché" +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__ebics_config_id +msgid "EBICS Config" +msgstr "Configuration EBICS" + #. module: account_ebics_payment_order #: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_mode__ebics_format_id msgid "EBICS File Format" msgstr "Format de fichier EBICS" +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__ebics_order_number +msgid "EBICS OrderID" +msgstr "ID de commande EBICS" + #. module: account_ebics_payment_order #. odoo-python #: code:addons/account_ebics_payment_order/models/account_payment_order.py:0 @@ -37,6 +48,16 @@ msgstr "Format de fichier EBICS" msgid "EBICS Upload" msgstr "Téléversement EBICS" +#. module: account_ebics_payment_order +#: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__ebics_file_id +msgid "EBICS Upload File" +msgstr "Fichier de téléversement EBICS" + +#. module: account_ebics_payment_order +#: model_terms:ir.ui.view,arch_db:account_ebics_payment_order.account_payment_order_form +msgid "EBICS upload info" +msgstr "Infos de téléversement EBICS" + #. module: account_ebics_payment_order #: model:ir.model.fields,field_description:account_ebics_payment_order.field_account_payment_order__hide_ebics_upload msgid "Hide Ebics Upload" @@ -53,6 +74,7 @@ msgstr "Identifiant" #: code:addons/account_ebics_payment_order/models/account_payment_order.py:0 msgid "Missing EBICS File Format setting on your Payment Mode." msgstr "" +"Paramètre de format de fichier EBICS manquant sur votre mode de paiement." #. module: account_ebics_payment_order #. odoo-python @@ -76,7 +98,7 @@ msgstr "Ordre de paiement" #. module: account_ebics_payment_order #: model:ir.model.fields,help:account_ebics_payment_order.field_account_payment_mode__ebics_format_id msgid "Select EBICS File Format to upload." -msgstr "" +msgstr "Sélectionnez le format de fichier EBICS à téléverser." #. module: account_ebics_payment_order #. odoo-python @@ -86,6 +108,9 @@ msgid "" "Please remove the obsolete attachments or upload the payment order file via " "the EBICS Processing > EBICS Upload menu" msgstr "" +"Cet ordre de paiement contient plusieurs pièces jointes.\n" +"Veuillez supprimer les pièces jointes obsolètes ou téléverser le fichier de " +"l'ordre de paiement via le menu EBICS Processing > EBICS Upload" #. module: account_ebics_payment_order #. odoo-python @@ -94,3 +119,10 @@ msgid "" "This payment order doesn't contains attachments.\n" "Please generate first the Payment Order file." msgstr "" +"Cet ordre de paiement ne contient aucune pièce jointe.\n" +"Veuillez d'abord générer le fichier de l'ordre de paiement." + +#. module: account_ebics_payment_order +#: model_terms:ir.ui.view,arch_db:account_ebics_payment_order.account_payment_order_form +msgid "Upload File" +msgstr "Téléverser le fichier" diff --git a/account_ebics_payment_order/i18n/nl.po b/account_ebics_payment_order/i18n/nl.po index 4d1cde3..2076581 100644 --- a/account_ebics_payment_order/i18n/nl.po +++ b/account_ebics_payment_order/i18n/nl.po @@ -3,11 +3,12 @@ # * account_ebics_payment_order # # Weblate Translation Memory , 2026. +# Jérémy Didderen , 2026. msgid "" msgstr "" "Project-Id-Version: Odoo Server 18.0+e\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-25 17:54+0000\n" +"PO-Revision-Date: 2026-10-11 21:18+0000\n" "Last-Translator: Weblate Translation Memory \n" "Language-Team: Dutch EBICS Upload menu" msgstr "" +"Deze betalingsopdracht bevat meerdere bijlagen.\n" +"Verwijder de verouderde bijlagen of upload het betalingsopdrachtbestand via " +"het menu EBICS Processing > EBICS Upload" #. module: account_ebics_payment_order #. odoo-python @@ -94,3 +118,10 @@ msgid "" "This payment order doesn't contains attachments.\n" "Please generate first the Payment Order file." msgstr "" +"Deze betalingsopdracht bevat geen bijlagen.\n" +"Genereer eerst het betalingsopdrachtbestand." + +#. module: account_ebics_payment_order +#: model_terms:ir.ui.view,arch_db:account_ebics_payment_order.account_payment_order_form +msgid "Upload File" +msgstr "Bestand uploaden" diff --git a/account_ebics_payment_order/models/account_payment_order.py b/account_ebics_payment_order/models/account_payment_order.py index c28aa65..1cf1391 100644 --- a/account_ebics_payment_order/models/account_payment_order.py +++ b/account_ebics_payment_order/models/account_payment_order.py @@ -8,6 +8,19 @@ from odoo.exceptions import UserError class AccountPaymentOrder(models.Model): _inherit = "account.payment.order" + ebics_config_id = fields.Many2one( + comodel_name="ebics.config", + related="journal_id.ebics_config_id", + ) + ebics_file_id = fields.Many2one( + comodel_name="ebics.file", + string="EBICS Upload File", + readonly=True, + ) + ebics_order_number = fields.Char( + related="ebics_file_id.ebics_order_number", + string="EBICS OrderID", + ) hide_ebics_upload = fields.Boolean( compute="_compute_hide_ebics_upload", default=True ) @@ -16,7 +29,9 @@ class AccountPaymentOrder(models.Model): def _compute_hide_ebics_upload(self): for rec in self: rec.hide_ebics_upload = ( - not rec.journal_id.ebics_config_id or rec.state != "generated" + self.env.neutralized + or not rec.journal_id.ebics_config_id + or rec.state != "generated" ) def ebics_upload(self): @@ -29,7 +44,8 @@ class AccountPaymentOrder(models.Model): ) ctx.update( { - "active_model": self._name, + "model": self._name, + "id": self.id, "default_format_id": ebics_format_id.id, } ) diff --git a/account_ebics_payment_order/static/description/banner.png b/account_ebics_payment_order/static/description/banner.png new file mode 100644 index 0000000..45b2efd Binary files /dev/null and b/account_ebics_payment_order/static/description/banner.png differ diff --git a/account_ebics_payment_order/static/description/cover.png b/account_ebics_payment_order/static/description/cover.png deleted file mode 100644 index 41c4cec..0000000 Binary files a/account_ebics_payment_order/static/description/cover.png and /dev/null differ diff --git a/account_ebics_payment_order/static/description/ebics_upload.png b/account_ebics_payment_order/static/description/ebics_upload.png new file mode 100644 index 0000000..5b35920 Binary files /dev/null and b/account_ebics_payment_order/static/description/ebics_upload.png differ diff --git a/account_ebics_payment_order/static/description/icon.png b/account_ebics_payment_order/static/description/icon.png index 889d129..a2bfe03 100644 Binary files a/account_ebics_payment_order/static/description/icon.png and b/account_ebics_payment_order/static/description/icon.png differ diff --git a/account_ebics_payment_order/static/description/index.html b/account_ebics_payment_order/static/description/index.html index 05adec8..54f2988 100644 --- a/account_ebics_payment_order/static/description/index.html +++ b/account_ebics_payment_order/static/description/index.html @@ -1,389 +1,39 @@ - - - - - -README.rst - - - -
- - -License: AGPL-3 -
-

Upload Payment Order via EBICS

-

This module allows to upload a Payment Order to the bank via the EBICS protocol.

+ +
+

EBICS - Payment Orders (OCA)

+

Send an OCA payment order to the bank from Odoo, without touching a file.

+

This module lets you upload a payment order of the OCA account_payment_order module to +the bank over EBICS.

+Uploading a payment file over EBICS, with the test mode option

Installation

-

This module depends upon the following modules (cf. apps.odoo.com):

+

This module depends on:

Configuration

-

Set the EBICS File Format on your Payment Modes.

+

Set the EBICS File Format on your payment modes.

Usage

-

Create your Payment Order and generate the bank file. -Upload the generated file via the 'EBICS Upload' button on the payment order.

+

Create the payment order and generate the bank file, then upload it with the EBICS +Upload button of the payment order.

+
+
+

Part of the EBICS suite

+

This module extends EBICS Banking Protocol (account_ebics), the EBICS implementation +for Odoo developed and maintained by Noviat. Install it first: +https://github.com/Noviat/account_ebics

+

What EBICS is and what it changes, in plain language, with screen recordings of the flow: +https://www.noviat.com/ebics

+
+
+

Credits

+

Developed and maintained by Noviat, Odoo integrator in Belgium, +specialised in accounting and finance since 2009. We configure the connection with your banks +and support you through the first cycles.

-
- - diff --git a/account_ebics_payment_order/views/account_payment_order_views.xml b/account_ebics_payment_order/views/account_payment_order_views.xml index 3e2bf7e..eef2b85 100644 --- a/account_ebics_payment_order/views/account_payment_order_views.xml +++ b/account_ebics_payment_order/views/account_payment_order_views.xml @@ -17,6 +17,18 @@ class="oe_highlight" /> + + + + + + + +