diff --git a/account_banking_sepa_direct_debit/README.rst b/account_banking_sepa_direct_debit/README.rst new file mode 100644 index 000000000..cf6f64c0e --- /dev/null +++ b/account_banking_sepa_direct_debit/README.rst @@ -0,0 +1,116 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :alt: License: AGPL-3 + +================================= +Account Banking SEPA Direct Debit +================================= + +Create SEPA files for Direct Debit + +Module to export direct debit payment orders in SEPA XML file format. + +SEPA PAIN (PAyment INitiation) is the new european standard for +Customer-to-Bank payment instructions. This module implements SEPA Direct +Debit (SDD), more specifically PAIN versions 008.001.02, 008.001.03 and +008.001.04. It is part of the ISO 20022 standard, available on +http://www.iso20022.org. + +The Implementation Guidelines for SEPA Direct Debit published by the European +Payments Council (http://http://www.europeanpaymentscouncil.eu) use PAIN +version 008.001.02. So if you don't know which version your bank supports, you +should try version 008.001.02 first. + +Installation +============ + +This module depends on : + +* account_banking_pain_base +* account_banking_mandate + +This module is part of the OCA/bank-payment suite. + +Configuration +============= + +For setting the SEPA creditor identifier: + +#. Go to Invoicing/Accounting > Configuration > Settings. +#. On the field "SEPA Creditor Identifier" in the section *SEPA/PAIN*, you can + fill the corresponding identifier. + +If your country requires several identifiers (like Spain), you must: + +#. Go to *Invoicing/Accounting > Configuration > Settings*. +#. On the section *SEPA/PAIN*, check the mark "Multiple identifiers". +#. Now go to *Invoicing/Accounting > Configuration > Management > Payment Modes*. +#. Create a payment mode for your specific bank. +#. Fill the specific identifier on the field "SEPA Creditor Identifier". + +For defining a payment mode that uses SEPA direct debit: + +#. Go to *Invoicing/Accounting > Configuration > Management > Payment Modes*. +#. Create a record. +#. Select the Payment Method *SEPA Direct Debit for customers* (which is + automatically created upon module installation). +#. Check that this payment method uses the proper version of PAIN. +#. If not, go *Invoicing/Accounting > Configuration > Management > Payment Methods*. +#. Locate the "SEPA Direct Debit for customers" record and open it. +#. Change the "PAIN version" according your needs. +#. If you need to handle several PAIN versions, just duplicate the payment + method adjusting this field on each for having them. + +Usage +===== + +In the menu *Invoicing/Accounting > Payments > Debit Order*, create a new debit +order and select the Payment Mode dedicated to SEPA Direct Debit that +you created during the configuration step. + +.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas + :alt: Try me on Runbot + :target: https://runbot.odoo-community.org/runbot/173/11.0 + +Known issues / Roadmap +====================== + + * No known issues + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues +`_. In case of trouble, please +check there if your issue has already been reported. If you spotted it first, +help us smashing it by providing a detailed and welcomed feedback. + +Credits +======= + +Contributors +------------ + +* Alexis de Lattre +* Pedro M. Baeza +* Stéphane Bidoul +* Alexandre Fayolle +* Raphaël Valyi +* Sandy Carter +* Antonio Espinosa +* Sergio Teruel + + +Maintainer +---------- + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +This module is maintained by the OCA. + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +To contribute to this module, please visit https://odoo-community.org. diff --git a/account_banking_sepa_direct_debit/__init__.py b/account_banking_sepa_direct_debit/__init__.py new file mode 100644 index 000000000..a1815ae51 --- /dev/null +++ b/account_banking_sepa_direct_debit/__init__.py @@ -0,0 +1,4 @@ +# -*- coding: utf-8 -*- + +from . import models +from .post_install import update_bank_journals diff --git a/account_banking_sepa_direct_debit/__manifest__.py b/account_banking_sepa_direct_debit/__manifest__.py new file mode 100644 index 000000000..1dd145485 --- /dev/null +++ b/account_banking_sepa_direct_debit/__manifest__.py @@ -0,0 +1,34 @@ +# -*- coding: utf-8 -*- +# Copyright 2013-2016 Akretion (www.akretion.com) +# Copyright 2014-2017 Tecnativa - Pedro M. Baeza +# Copyright 2016 Tecnativa - Antonio Espinosa +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +{ + 'name': 'Account Banking SEPA Direct Debit', + 'summary': 'Create SEPA files for Direct Debit', + 'version': '11.0.1.0.0', + 'license': 'AGPL-3', + 'author': "Akretion, " + "Tecnativa, " + "Odoo Community Association (OCA)", + 'website': 'https://github.com/OCA/bank-payment', + 'category': 'Banking addons', + 'depends': [ + 'account_banking_pain_base', + 'account_banking_mandate', + ], + 'data': [ + 'views/account_banking_mandate_view.xml', + 'views/res_config.xml', + 'views/account_payment_mode.xml', + 'data/mandate_expire_cron.xml', + 'data/account_payment_method.xml', + 'data/report_paperformat.xml', + 'reports/sepa_direct_debit_mandate.xml', + 'views/report_sepa_direct_debit_mandate.xml', + ], + 'demo': ['demo/sepa_direct_debit_demo.xml'], + 'post_init_hook': 'update_bank_journals', + 'installable': True, +} diff --git a/account_banking_sepa_direct_debit/data/account_payment_method.xml b/account_banking_sepa_direct_debit/data/account_payment_method.xml new file mode 100644 index 000000000..c81129d70 --- /dev/null +++ b/account_banking_sepa_direct_debit/data/account_payment_method.xml @@ -0,0 +1,11 @@ + + + + SEPA Direct Debit for customers + sepa_direct_debit + inbound + + + pain.008.001.02 + + diff --git a/account_banking_sepa_direct_debit/data/mandate_expire_cron.xml b/account_banking_sepa_direct_debit/data/mandate_expire_cron.xml new file mode 100644 index 000000000..1f4496b61 --- /dev/null +++ b/account_banking_sepa_direct_debit/data/mandate_expire_cron.xml @@ -0,0 +1,20 @@ + + + + + + + Set SEPA Direct Debit Mandates to Expired + + + code + model._sdd_mandate_set_state_to_expired() + 1 + days + -1 + + + diff --git a/account_banking_sepa_direct_debit/data/pain.008.001.02.xsd b/account_banking_sepa_direct_debit/data/pain.008.001.02.xsd new file mode 100644 index 000000000..633597256 --- /dev/null +++ b/account_banking_sepa_direct_debit/data/pain.008.001.02.xsd @@ -0,0 +1,879 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/account_banking_sepa_direct_debit/data/pain.008.001.03.xsd b/account_banking_sepa_direct_debit/data/pain.008.001.03.xsd new file mode 100644 index 000000000..73d894379 --- /dev/null +++ b/account_banking_sepa_direct_debit/data/pain.008.001.03.xsd @@ -0,0 +1,925 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/account_banking_sepa_direct_debit/data/pain.008.001.04.xsd b/account_banking_sepa_direct_debit/data/pain.008.001.04.xsd new file mode 100644 index 000000000..93806815a --- /dev/null +++ b/account_banking_sepa_direct_debit/data/pain.008.001.04.xsd @@ -0,0 +1,892 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/account_banking_sepa_direct_debit/data/pain.008.003.02.xsd b/account_banking_sepa_direct_debit/data/pain.008.003.02.xsd new file mode 100644 index 000000000..ed2dd930b --- /dev/null +++ b/account_banking_sepa_direct_debit/data/pain.008.003.02.xsd @@ -0,0 +1,614 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Mandatory if changes occur in ‘Mandate Identification’, otherwise not to be used. + + + + + Mandatory if changes occur in 'Creditor Scheme Identification', otherwise not to be used. + + + + + To be used only for changes of accounts within the same bank. + + + + + To use 'Identification’ under 'Other' under 'Financial Institution Identifier with code ‘SMNDA’ to indicate same mandate with new Debtor Agent. To be used with the ‘FRST’ indicator in the ‘Sequence Type’. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + If a Creditor Reference contains a check digit, the receiving bank is not required to validate this. +If the receiving bank validates the check digit and if this validation fails, the bank may continue its processing and send the transaction to the next party in the chain. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + It is recommended that all transactions within the same ‘Payment Information’ block have the same ‘Creditor Scheme Identification’. +This data element must be present at either ‘Payment Information’ or ‘Direct Debit +Transaction’ level. + + + + + + + + + + + It is recommended that this element be specified at ‘Payment Information’ level. + + + + + + This data element may be present either at ‘Payment Information’ or at ‘Direct Debit Transaction Information’ level. + + + + + + + + Mandatory if provided by the debtor in the mandate. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Mandatory if 'Amendment Indicator' is 'TRUE' +The reason code from the Rulebook is indicated using one of the following message subelements. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Either ‘BIC or BEI’ or one +occurrence of ‘Other’ is allowed. + + + + + Either ‘Date and Place of Birth’ or one occurrence of ‘Other’ is allowed + + + + + + + + + + Private Identification is used to identify either an organisation or a private +person. + + + + + + + + + ‘Name’ is limited to 70 characters in length. + + + + + + + + + + ‘Name’ is limited to 70 characters in length. + + + + + + + + + + + + + + + + If present the new’ Name’ must be specified under ‘Creditor’. ‘Name’ is limited to 70 characters in length. + + + + + + + + + + ‘Name’ is limited to 70 characters in length. + + + + + + + + + + + + + + + + + + If present and contains ‘true’, batch booking is requested. If present and contains ‘false’, booking per transaction is requested. If element is not present, pre-agreed customer-to-bank conditions apply. + + + + + + + + + + + + This data element may be present either at ‘Payment Information’ or at ‘Direct Debit Transaction Information’ level. + + + + + It is recommended that this element be specified at ‘Payment Information’ level. + + + + + It is recommended that all transactions within the same ‘Payment Information’ block have the same ‘Creditor Scheme Identification’. +This data element must be present at either ‘Payment Information’ or ‘Direct Debit +Transaction’ level. + + + + + + + + + + + + + + + + Only ‘B2B’, 'CORE' or 'COR1' is allowed. The mixing of different Local Instrument values is not allowed in the same message. + + + + + If 'Amendment Indicator' is 'true' and 'Original Debtor Agent' is set to 'SMNDA' this message element must indicate 'FRST' + + + + + Depending on the agreement between the Creditor and the Creditor Bank, ‘Category Purpose’ may be forwarded to the Debtor Bank. + + + + + + + + + + + + + + + + + Only one occurrence of ‘Other’ is allowed, and no other sub-elements are allowed. +Identification must be used with an identifier described in General Message Element Specifications, Chapter 1.5.2 of the Implementation Guide. +Scheme Name’ under ‘Other’ must specify ‘SEPA’ under ‘Proprietary + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Only codes from the ISO 20022 ExternalPurposeCode list are allowed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + When present, the receiving bank is not obliged to validate the reference information. + + + + + + + + + + + + + + + + + + diff --git a/account_banking_sepa_direct_debit/data/report_paperformat.xml b/account_banking_sepa_direct_debit/data/report_paperformat.xml new file mode 100644 index 000000000..f6ce4c94e --- /dev/null +++ b/account_banking_sepa_direct_debit/data/report_paperformat.xml @@ -0,0 +1,20 @@ + + + + + European A4 low margin for SEPA + + A4 + 0 + 0 + Portrait + 10 + 10 + 5 + 5 + + 0 + 80 + + + diff --git a/account_banking_sepa_direct_debit/demo/sepa_direct_debit_demo.xml b/account_banking_sepa_direct_debit/demo/sepa_direct_debit_demo.xml new file mode 100644 index 000000000..4c9f03885 --- /dev/null +++ b/account_banking_sepa_direct_debit/demo/sepa_direct_debit_demo.xml @@ -0,0 +1,49 @@ + + + + + + + SEPA Direct Debit of customers + + variable + + + + + + FR78ZZZ424242 + + + + + + sepa + recurrent + first + + valid + + + + + + + + + + + sepa + recurrent + first + + valid + + + + + + + + + diff --git a/account_banking_sepa_direct_debit/i18n/de.po b/account_banking_sepa_direct_debit/i18n/de.po new file mode 100644 index 000000000..b97dbfc27 --- /dev/null +++ b/account_banking_sepa_direct_debit/i18n/de.po @@ -0,0 +1,366 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_banking_sepa_direct_debit +# +# Translators: +# Niki Waibel, 2016 +msgid "" +msgstr "" +"Project-Id-Version: bank-payment (10.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-11-21 10:17+0000\n" +"PO-Revision-Date: 2016-11-01 20:31+0000\n" +"Last-Translator: Niki Waibel\n" +"Language-Team: German (http://www.transifex.com/oca/OCA-bank-payment-10-0/language/de/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Account Number - IBAN:" +msgstr "Kontonummer - IBAN:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address of the Debtor:" +msgstr "Adresse des Debitor:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address:" +msgstr "Adresse:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country of the debtor:" +msgstr "Land des Debitors:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country:" +msgstr "Land:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Creditor's Name:" +msgstr "Name des Kreditors:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Date - Location:" +msgstr "Datum - Ort:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Debtor's Name:" +msgstr "Name des Debitors:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Identifier:" +msgstr "Identifizierer:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Mandate Reference:" +msgstr "Referenz des Mandanten:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Postal Code - City - Town:" +msgstr "Postleitzahl - Stadt - Gemeinde:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Signature of the debtor:" +msgstr "Unterschrift des Debitors:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Swift BIC (up to 8 or 11 characteres):" +msgstr "Swift BIC (bis zu 8 oder 11 Stellen):" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Type of payment:" +msgstr "Art der Zahlung:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Business-To-Business Direct debit Mandate" +msgstr "SEPA Geschäft-zu-Geschäft Lastschriftenmandat" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Direct Debit Mandate" +msgstr "SEPA Lastschrift Mandat" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_banking_mandate +msgid "A generic banking mandate" +msgstr "Ein generisches Bankmandat" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO " +"CREDITOR FOR STORAGE." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO CREDITOR FOR STORAGE.\n" +" NEVERTHELESS, THE BANK OF DEBTOR REQUIRES DEBTOR’S AUTHORIZATION BEFORE DEBITING B2B DIRECT DEBITS IN THE ACCOUNT.\n" +" THE DEBTOR WILL BE ABLE TO MANAGE THE MENTIONED AUTHORIZATION THROUGH THE MEANS PROVIDED BY HIS BANK." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"As part of your rights, you are entitled to a refund from\n" +" your bank under the terms and conditions of your agreement\n" +" with your bank.\n" +" A refund must be claimed within 8 weeks starting from the date on which your account was debited." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:76 +#, python-format +msgid "" +"As you changed the bank account attached to this mandate, the 'Sequence " +"Type' has been set back to 'First'." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_bank_payment_line +msgid "Bank Payment Lines" +msgstr "Bankzahlungszeilen" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Basic (CORE)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "By signing this mandate form, you authorise (A)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_res_company +msgid "Companies" +msgstr "Unternehmen" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. If not defined, SEPA Creditor Identifier from company will be used.\n" +"This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Enterprise (B2B)" +msgstr "Geschäftlich (B2B)" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Final" +msgstr "Endgültig" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "First" +msgstr "Erstes" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:75 +#, python-format +msgid "Mandate update" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:77 +#, python-format +msgid "" +"Missing SEPA Direct Debit mandate on the bank payment line with partner '%s'" +" (reference '%s')." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "One-Off" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_method +msgid "Payment Methods" +msgstr "Zahlungsmethoden" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_mode +msgid "Payment Modes" +msgstr "Zahlungsmodi" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_order +msgid "Payment Order" +msgstr "Zahlungsauftrag" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:41 +#, python-format +msgid "" +"Payment Type Code '%s' is not supported. The only Payment Type Code " +"supported for SEPA Direct Debit are 'pain.008.001.02', 'pain.008.001.03' and" +" 'pain.008.001.04'." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Recurrent" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Recurring" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "SEPA Creditor Identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.mode,name:account_banking_sepa_direct_debit.payment_mode_inbound_sepa_dd1 +msgid "SEPA Direct Debit of customers" +msgstr "SEPA Lastschriften der Kunden" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_scheme +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Scheme" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.actions.report.xml,name:account_banking_sepa_direct_debit.report_sepa_direct_debit_mandate +msgid "Sepa Mandate" +msgstr "Sepa Mandat" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Sequence Type" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "Sequence Type for Next Debit" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_mode.py:39 +#: code:addons/account_banking_sepa_direct_debit/models/res_company.py:31 +#, python-format +msgid "The SEPA Creditor Identifier '%s' is invalid." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:84 +#, python-format +msgid "" +"The SEPA Direct Debit mandate with reference '%s' for partner '%s' has " +"expired." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:92 +#, python-format +msgid "" +"The mandate with reference '%s' for partner '%s' has type set to 'One-Off' " +"and it has a last debit date set to '%s', so we can't use it." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:48 +#, python-format +msgid "The recurrent mandate '%s' must have a sequence type." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "" +"This field is only used for Recurrent mandates, not for One-Off mandates." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"This mandate is only intended for business-to-business transactions.\n" +" You are not entitled to a refund from your bank after your account has\n" +" been debited, but you are entitled to request your bank\n" +" not to debit your account up until the day on which the payment is due." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the creditor" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the debtor" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Type" +msgstr "Art" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_type +msgid "Type of Mandate" +msgstr "Art des Mandats" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +msgid "Write the ICS of your company" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_config_settings +msgid "account.config.settings" +msgstr "account.config.settings" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"to send instructions to your bank to debit your account and (B) your bank to\n" +" debit your account in accordance with the instructions from" +msgstr "" diff --git a/account_banking_sepa_direct_debit/i18n/es.po b/account_banking_sepa_direct_debit/i18n/es.po new file mode 100644 index 000000000..9cc0623fe --- /dev/null +++ b/account_banking_sepa_direct_debit/i18n/es.po @@ -0,0 +1,372 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_banking_sepa_direct_debit +# +# Translators: +# OCA Transbot , 2016 +# Pedro M. Baeza , 2016 +msgid "" +msgstr "" +"Project-Id-Version: bank-payment (10.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-01 01:24+0000\n" +"PO-Revision-Date: 2017-02-23 12:57+0000\n" +"Last-Translator: OCA Transbot \n" +"Language-Team: Spanish (http://www.transifex.com/oca/OCA-bank-payment-10-0/language/es/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: es\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Account Number - IBAN:" +msgstr "Número de cuenta - IBAN:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address of the Debtor:" +msgstr "Dirección del deudor:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address:" +msgstr "Dirección:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country of the debtor:" +msgstr "País del deudor:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country:" +msgstr "País:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Creditor's Name:" +msgstr "Nombre del acreedor:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Date - Location:" +msgstr "Fecha - Localidad:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Debtor's Name:" +msgstr "Nombre del deudor:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Identifier:" +msgstr "Identificador:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Mandate Reference:" +msgstr "Referencia del mandato:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Postal Code - City - Town:" +msgstr "Código postal - Población - Provincia:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Signature of the debtor:" +msgstr "Firma del deudor:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Swift BIC (up to 8 or 11 characteres):" +msgstr "Swift BIC (puede contener 8 u 11 posiciones):" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Type of payment:" +msgstr "Tipo de pago:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Business-To-Business Direct debit Mandate" +msgstr "Orden de domiciliación de adeudo directo SEPA B2B" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Direct Debit Mandate" +msgstr "Mandato de adeudo directo SEPA" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_banking_mandate +msgid "A generic banking mandate" +msgstr "Un mandato bancario genérico" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO " +"CREDITOR FOR STORAGE." +msgstr "TODOS LOS CAMPOS HAN DE SER CUMPLIMENTADOS OBLIGATORIAMENTE. UNA VEZ FIRMADA ESTA ORDEN DE DOMICILIACIÓN DEBE SER ENVIADA AL ACREEDOR PARA SU CUSTODIA." + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO CREDITOR FOR STORAGE.\n" +" NEVERTHELESS, THE BANK OF DEBTOR REQUIRES DEBTOR’S AUTHORIZATION BEFORE DEBITING B2B DIRECT DEBITS IN THE ACCOUNT.\n" +" THE DEBTOR WILL BE ABLE TO MANAGE THE MENTIONED AUTHORIZATION THROUGH THE MEANS PROVIDED BY HIS BANK." +msgstr "TODOS LOS CAMPOS HAN DE SER CUMPLIMENTADOS OBLIGATORIAMENTE. UNA VEZ FIRMADA ESTA ORDEN DE DOMICILIACIÓN DEBE SER ENVIADA AL ACREEDOR PARA SU CUSTODIA.LA ENTIDAD DE DEUDOR REQUIERE AUTORIZACIÓN DE ÉSTE PREVIA AL CARGO EN CUENTA DE LOS ADEUDOS DIRECTOS B2B.EL DEUDOR PODRÁ GESTIONAR DICHA AUTORIZACIÓN CON LOS MEDIOS QUE SU ENTIDAD PONGA A SU DISPOSICIÓN." + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"As part of your rights, you are entitled to a refund from\n" +" your bank under the terms and conditions of your agreement\n" +" with your bank.\n" +" A refund must be claimed within 8 weeks starting from the date on which your account was debited." +msgstr "Como parte de sus derechos, el deudor está legitimado al reembolso por su entidad en los términos y condiciones del contrato suscrito con la misma. La solicitud de reembolso deberá efectuarse dentro de las ocho semanas que siguen a la fecha de adeudo en cuenta. Puede obtener información adicional sobre sus derechos en su entidad financiera." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:76 +#, python-format +msgid "" +"As you changed the bank account attached to this mandate, the 'Sequence " +"Type' has been set back to 'First'." +msgstr "Puesto que ha cambiado la cuenta bancaria relacionada con este mandato, el 'Tipo de secuencia' se ha vuelto a 'Inicial'." + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_bank_payment_line +msgid "Bank Payment Lines" +msgstr "Líneas de pago bancario" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Basic (CORE)" +msgstr "Básico (CORE)" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "By signing this mandate form, you authorise (A)" +msgstr "Mediante la firma de esta orden de domiciliación, el deudor autoriza (A) " + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_res_company +msgid "Companies" +msgstr "Compañías" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. If not defined, SEPA Creditor Identifier from company will be used.\n" +"This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "Introduzca el identificador de acreedor que se le ha atribuido a su compañía para realizar adeudos directos SEPA. Su banco suele poseer esta información. Este identificador se compone de:\n- el código ISO de 2 letras de su país\n- dos dígitos de comprobación\n- tres letras de código de negocio\n- un identificador específico de país (en España, el NIF)" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "Introduzca el identificador de acreedor que se le ha atribuido a su compañía para realizar adeudos directos SEPA. Su banco suele poseer esta información. Este identificador se compone de:\n- el código ISO de 2 letras de su país\n- dos dígitos de comprobación\n- tres letras de código de negocio\n- un identificador específico de país (en España, el NIF)" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Enterprise (B2B)" +msgstr "Empresa (B2B)" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Final" +msgstr "Final" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "First" +msgstr "Inicial" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:75 +#, python-format +msgid "Mandate update" +msgstr "Actualizacion de mandato" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:78 +#, python-format +msgid "" +"Missing SEPA Direct Debit mandate on the bank payment line with partner '%s'" +" (reference '%s')." +msgstr "Falta el mandato de adeudo directo SEPA en la linea de pago bancario de la empresa '%s' (referencia '%s')." + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "One-Off" +msgstr "Único" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_method +msgid "Payment Methods" +msgstr "Métodos de pago" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_mode +msgid "Payment Modes" +msgstr "Métodos de pago" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_order +msgid "Payment Order" +msgstr "Orden de pago" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:41 +#, python-format +msgid "" +"Payment Type Code '%s' is not supported. The only Payment Type Code " +"supported for SEPA Direct Debit are 'pain.008.001.02', 'pain.008.001.03' and" +" 'pain.008.001.04'." +msgstr "El código de tipo de pago '%s' no está soportado. Los únicos códigos de tipo de pago soportados para los adedudos directos SEPA son 'pain.008.001.02', 'pain.008.001.03' y 'pain.008.001.04'." + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Recurrent" +msgstr "Recurrente" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Recurring" +msgstr "Periódico" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "SEPA Creditor Identifier" +msgstr "Identificador de acreedor SEPA" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.method,name:account_banking_sepa_direct_debit.sepa_direct_debit +msgid "SEPA Direct Debit for customers" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.mode,name:account_banking_sepa_direct_debit.payment_mode_inbound_sepa_dd1 +msgid "SEPA Direct Debit of customers" +msgstr "Adeudo directo SEPA de clientes" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_scheme +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Scheme" +msgstr "Esquema" + +#. module: account_banking_sepa_direct_debit +#: model:ir.actions.report.xml,name:account_banking_sepa_direct_debit.report_sepa_direct_debit_mandate +msgid "Sepa Mandate" +msgstr "Mandato SEPA" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Sequence Type" +msgstr "Tipo de secuencia" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "Sequence Type for Next Debit" +msgstr "Tipo de secuencia para el próximo cobro" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_mode.py:39 +#: code:addons/account_banking_sepa_direct_debit/models/res_company.py:31 +#, python-format +msgid "The SEPA Creditor Identifier '%s' is invalid." +msgstr "Identificador de acreedor SEPA '%s' no válido." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:85 +#, python-format +msgid "" +"The SEPA Direct Debit mandate with reference '%s' for partner '%s' has " +"expired." +msgstr "El mandato de adeudo directo SEPA con referencia '%s' para la empresa '%s' ha expirado." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:93 +#, python-format +msgid "" +"The mandate with reference '%s' for partner '%s' has type set to 'One-Off' " +"and it has a last debit date set to '%s', so we can't use it." +msgstr "El mandato con referencia '%s' para la empresa '%s' tipo como 'Único', ya tiene como fecha de último cobro '%s', por lo que no se puede usar." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:48 +#, python-format +msgid "The recurrent mandate '%s' must have a sequence type." +msgstr "El mandato periódico '%s' debe tener un tipo de secuencia." + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "" +"This field is only used for Recurrent mandates, not for One-Off mandates." +msgstr "Este campo se utiliza sólo para mandatos periódicos, no para únicos." + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"This mandate is only intended for business-to-business transactions.\n" +" You are not entitled to a refund from your bank after your account has\n" +" been debited, but you are entitled to request your bank\n" +" not to debit your account up until the day on which the payment is due." +msgstr "Esta orden de domiciliación está prevista para operaciones exclusivamente entre empresas y/o autónomos. El deudor no tiene derecho a que su entidad le reembolse una vez que se haya realizado el cargo en cuenta, pero puede solicitar a su entidad que no efectúe el adeudo en la cuenta hasta la fecha debida. Podrá obtener información detallada del procedimiento en su entidad financiera." + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the creditor" +msgstr "A cumplimentar por el acreedor" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the debtor" +msgstr "A cumplimentar por el deudor" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Type" +msgstr "Tipo" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_type +msgid "Type of Mandate" +msgstr "Tipo de mandato" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +msgid "Write the ICS of your company" +msgstr "Escriba el IAS de su compañía" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_config_settings +msgid "account.config.settings" +msgstr "account.config.settings" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"to send instructions to your bank to debit your account and (B) your bank to\n" +" debit your account in accordance with the instructions from" +msgstr "a enviar instrucciones a la entidad del deudor para adeudar su cuenta y (B) a la entidad para efectuar los adeudos en su cuenta siguiendo las instrucciones del acreedor " diff --git a/account_banking_sepa_direct_debit/i18n/fr.po b/account_banking_sepa_direct_debit/i18n/fr.po new file mode 100644 index 000000000..0563eb696 --- /dev/null +++ b/account_banking_sepa_direct_debit/i18n/fr.po @@ -0,0 +1,371 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_banking_sepa_direct_debit +# +# Translators: +# OCA Transbot , 2016 +msgid "" +msgstr "" +"Project-Id-Version: bank-payment (10.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-01 01:24+0000\n" +"PO-Revision-Date: 2017-02-23 12:57+0000\n" +"Last-Translator: OCA Transbot \n" +"Language-Team: French (http://www.transifex.com/oca/OCA-bank-payment-10-0/language/fr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: fr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Account Number - IBAN:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address of the Debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country of the debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Creditor's Name:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Date - Location:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Debtor's Name:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Identifier:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Mandate Reference:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Postal Code - City - Town:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Signature of the debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Swift BIC (up to 8 or 11 characteres):" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Type of payment:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Business-To-Business Direct debit Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Direct Debit Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_banking_mandate +msgid "A generic banking mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO " +"CREDITOR FOR STORAGE." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO CREDITOR FOR STORAGE.\n" +" NEVERTHELESS, THE BANK OF DEBTOR REQUIRES DEBTOR’S AUTHORIZATION BEFORE DEBITING B2B DIRECT DEBITS IN THE ACCOUNT.\n" +" THE DEBTOR WILL BE ABLE TO MANAGE THE MENTIONED AUTHORIZATION THROUGH THE MEANS PROVIDED BY HIS BANK." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"As part of your rights, you are entitled to a refund from\n" +" your bank under the terms and conditions of your agreement\n" +" with your bank.\n" +" A refund must be claimed within 8 weeks starting from the date on which your account was debited." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:76 +#, python-format +msgid "" +"As you changed the bank account attached to this mandate, the 'Sequence " +"Type' has been set back to 'First'." +msgstr "Etant donné que vous avez changé le compte bancaire associé à ce mandat, le 'Type de séquence' a été remis à 'First'." + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_bank_payment_line +msgid "Bank Payment Lines" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Basic (CORE)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "By signing this mandate form, you authorise (A)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_res_company +msgid "Companies" +msgstr "Sociétés" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. If not defined, SEPA Creditor Identifier from company will be used.\n" +"This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "Entrez l'Identifiant créancier qui a été attribué à votre société pour réaliser des prélèvements SEPA. Cet identifiant est composé de :\n- du code ISO de votre pays (2 lettres)\n- un code de contrôle à 2 chiffres\n- un code d'activité à 3 lettres\n- un identifiant national" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Enterprise (B2B)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Final" +msgstr "Final" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "First" +msgstr "First" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:75 +#, python-format +msgid "Mandate update" +msgstr "Mise-à-jour du mandat" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:78 +#, python-format +msgid "" +"Missing SEPA Direct Debit mandate on the bank payment line with partner '%s'" +" (reference '%s')." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "One-Off" +msgstr "One-Off" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_method +msgid "Payment Methods" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_mode +msgid "Payment Modes" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_order +msgid "Payment Order" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:41 +#, python-format +msgid "" +"Payment Type Code '%s' is not supported. The only Payment Type Code " +"supported for SEPA Direct Debit are 'pain.008.001.02', 'pain.008.001.03' and" +" 'pain.008.001.04'." +msgstr "Le code du Type de paiement '%s' n'est pas supporté. Les seuls codes de Type de paiement supportés pour les prélèvements SEPA sont 'pain.008.001.02', 'pain.008.001.03' et 'pain.008.001.04'." + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Recurrent" +msgstr "Récurrent" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Recurring" +msgstr "Recurring" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "SEPA Creditor Identifier" +msgstr "Identifiant créancier SEPA" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.method,name:account_banking_sepa_direct_debit.sepa_direct_debit +msgid "SEPA Direct Debit for customers" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.mode,name:account_banking_sepa_direct_debit.payment_mode_inbound_sepa_dd1 +msgid "SEPA Direct Debit of customers" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_scheme +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Scheme" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.actions.report.xml,name:account_banking_sepa_direct_debit.report_sepa_direct_debit_mandate +msgid "Sepa Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Sequence Type" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "Sequence Type for Next Debit" +msgstr "Type de séquence pour le prochain prélèvement" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_mode.py:39 +#: code:addons/account_banking_sepa_direct_debit/models/res_company.py:31 +#, python-format +msgid "The SEPA Creditor Identifier '%s' is invalid." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:85 +#, python-format +msgid "" +"The SEPA Direct Debit mandate with reference '%s' for partner '%s' has " +"expired." +msgstr "Le mandat de prélèvement SEPA portant la référence '%s' pour le partenaire '%s' a expiré." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:93 +#, python-format +msgid "" +"The mandate with reference '%s' for partner '%s' has type set to 'One-Off' " +"and it has a last debit date set to '%s', so we can't use it." +msgstr "Le mandat portant la référence '%s' pour le partenaire '%s' est de type 'One-Off' et il a une date de dernier débit au '%s', donc il n'est pas utilisable." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:48 +#, python-format +msgid "The recurrent mandate '%s' must have a sequence type." +msgstr "Le mandat récurrent '%s' doit avoir un type de séquence." + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "" +"This field is only used for Recurrent mandates, not for One-Off mandates." +msgstr "Ce champ n'est utilisé que pour les mandats récurrents, pas pour les mandats One-Off." + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"This mandate is only intended for business-to-business transactions.\n" +" You are not entitled to a refund from your bank after your account has\n" +" been debited, but you are entitled to request your bank\n" +" not to debit your account up until the day on which the payment is due." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the creditor" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the debtor" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Type" +msgstr "Type" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_type +msgid "Type of Mandate" +msgstr "Type de mandat" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +msgid "Write the ICS of your company" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_config_settings +msgid "account.config.settings" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"to send instructions to your bank to debit your account and (B) your bank to\n" +" debit your account in accordance with the instructions from" +msgstr "" diff --git a/account_banking_sepa_direct_debit/i18n/hr.po b/account_banking_sepa_direct_debit/i18n/hr.po new file mode 100644 index 000000000..70456cb6f --- /dev/null +++ b/account_banking_sepa_direct_debit/i18n/hr.po @@ -0,0 +1,370 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_banking_sepa_direct_debit +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: bank-payment (10.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-03 00:10+0000\n" +"PO-Revision-Date: 2016-10-19 23:46+0000\n" +"Last-Translator: <>\n" +"Language-Team: Croatian (http://www.transifex.com/oca/OCA-bank-payment-10-0/language/hr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: hr\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Account Number - IBAN:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address of the Debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country of the debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Creditor's Name:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Date - Location:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Debtor's Name:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Identifier:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Mandate Reference:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Postal Code - City - Town:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Signature of the debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Swift BIC (up to 8 or 11 characteres):" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Type of payment:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Business-To-Business Direct debit Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Direct Debit Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_banking_mandate +msgid "A generic banking mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO " +"CREDITOR FOR STORAGE." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO CREDITOR FOR STORAGE.\n" +" NEVERTHELESS, THE BANK OF DEBTOR REQUIRES DEBTOR’S AUTHORIZATION BEFORE DEBITING B2B DIRECT DEBITS IN THE ACCOUNT.\n" +" THE DEBTOR WILL BE ABLE TO MANAGE THE MENTIONED AUTHORIZATION THROUGH THE MEANS PROVIDED BY HIS BANK." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"As part of your rights, you are entitled to a refund from\n" +" your bank under the terms and conditions of your agreement\n" +" with your bank.\n" +" A refund must be claimed within 8 weeks starting from the date on which your account was debited." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:76 +#, python-format +msgid "" +"As you changed the bank account attached to this mandate, the 'Sequence " +"Type' has been set back to 'First'." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_bank_payment_line +msgid "Bank Payment Lines" +msgstr "Stavke izvoda" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Basic (CORE)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "By signing this mandate form, you authorise (A)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_res_company +msgid "Companies" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. If not defined, SEPA Creditor Identifier from company will be used.\n" +"This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Enterprise (B2B)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Final" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "First" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:75 +#, python-format +msgid "Mandate update" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:78 +#, python-format +msgid "" +"Missing SEPA Direct Debit mandate on the bank payment line with partner '%s'" +" (reference '%s')." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "One-Off" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_method +msgid "Payment Methods" +msgstr "Metode plaćanja" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_mode +msgid "Payment Modes" +msgstr "Modeli plaćanja" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_order +msgid "Payment Order" +msgstr "Nalog za plaćanje" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:41 +#, python-format +msgid "" +"Payment Type Code '%s' is not supported. The only Payment Type Code " +"supported for SEPA Direct Debit are 'pain.008.001.02', 'pain.008.001.03' and" +" 'pain.008.001.04'." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Recurrent" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Recurring" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "SEPA Creditor Identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.method,name:account_banking_sepa_direct_debit.sepa_direct_debit +msgid "SEPA Direct Debit for customers" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.mode,name:account_banking_sepa_direct_debit.payment_mode_inbound_sepa_dd1 +msgid "SEPA Direct Debit of customers" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_scheme +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Scheme" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.actions.report.xml,name:account_banking_sepa_direct_debit.report_sepa_direct_debit_mandate +msgid "Sepa Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Sequence Type" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "Sequence Type for Next Debit" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_mode.py:39 +#: code:addons/account_banking_sepa_direct_debit/models/res_company.py:31 +#, python-format +msgid "The SEPA Creditor Identifier '%s' is invalid." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:85 +#, python-format +msgid "" +"The SEPA Direct Debit mandate with reference '%s' for partner '%s' has " +"expired." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:93 +#, python-format +msgid "" +"The mandate with reference '%s' for partner '%s' has type set to 'One-Off' " +"and it has a last debit date set to '%s', so we can't use it." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:48 +#, python-format +msgid "The recurrent mandate '%s' must have a sequence type." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "" +"This field is only used for Recurrent mandates, not for One-Off mandates." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"This mandate is only intended for business-to-business transactions.\n" +" You are not entitled to a refund from your bank after your account has\n" +" been debited, but you are entitled to request your bank\n" +" not to debit your account up until the day on which the payment is due." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the creditor" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the debtor" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Type" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_type +msgid "Type of Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +msgid "Write the ICS of your company" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_config_settings +msgid "account.config.settings" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"to send instructions to your bank to debit your account and (B) your bank to\n" +" debit your account in accordance with the instructions from" +msgstr "" diff --git a/account_banking_sepa_direct_debit/i18n/nb_NO.po b/account_banking_sepa_direct_debit/i18n/nb_NO.po new file mode 100644 index 000000000..de67cabaf --- /dev/null +++ b/account_banking_sepa_direct_debit/i18n/nb_NO.po @@ -0,0 +1,371 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_banking_sepa_direct_debit +# +# Translators: +# Imre Kristoffer Eilertsen , 2016 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-07-30 07:37+0000\n" +"PO-Revision-Date: 2016-07-30 07:37+0000\n" +"Last-Translator: Imre Kristoffer Eilertsen , 2016\n" +"Language-Team: Norwegian Bokmål (Norway) (https://www.transifex.com/oca/teams/23907/nb_NO/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: nb_NO\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Account Number - IBAN:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address of the Debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country of the debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Creditor's Name:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Date - Location:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Debtor's Name:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Identifier:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Mandate Reference:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Postal Code - City - Town:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Signature of the debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Swift BIC (up to 8 or 11 characteres):" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Type of payment:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Business-To-Business Direct debit Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Direct Debit Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_banking_mandate +msgid "A generic banking mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO " +"CREDITOR FOR STORAGE." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO CREDITOR FOR STORAGE.\n" +" NEVERTHELESS, THE BANK OF DEBTOR REQUIRES DEBTOR’S AUTHORIZATION BEFORE DEBITING B2B DIRECT DEBITS IN THE ACCOUNT.\n" +" THE DEBTOR WILL BE ABLE TO MANAGE THE MENTIONED AUTHORIZATION THROUGH THE MEANS PROVIDED BY HIS BANK." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"As part of your rights, you are entitled to a refund from\n" +" your bank under the terms and conditions of your agreement\n" +" with your bank.\n" +" A refund must be claimed within 8 weeks starting from the date on which your account was debited." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:76 +#, python-format +msgid "" +"As you changed the bank account attached to this mandate, the 'Sequence " +"Type' has been set back to 'First'." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_bank_payment_line +msgid "Bank Payment Lines" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Basic (CORE)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "By signing this mandate form, you authorise (A)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_res_company +msgid "Companies" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. If not defined, SEPA Creditor Identifier from company will be used.\n" +"This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Enterprise (B2B)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Final" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "First" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:75 +#, python-format +msgid "Mandate update" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:98 +#, python-format +msgid "" +"Missing SEPA Direct Debit mandate on the bank payment line with partner '%s'" +" (reference '%s')." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "One-Off" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_res_company_original_creditor_identifier +msgid "Original Creditor Identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_method +msgid "Payment Methods" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_mode +msgid "Payment Modes" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_order +msgid "Payment Order" +msgstr "Betalingsordre" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:62 +#, python-format +msgid "" +"Payment Type Code '%s' is not supported. The only Payment Type Code " +"supported for SEPA Direct Debit are 'pain.008.001.02', 'pain.008.001.03' and" +" 'pain.008.001.04'." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Recurrent" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Recurring" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "SEPA Creditor Identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.mode,name:account_banking_sepa_direct_debit.payment_mode_inbound_sepa_dd1 +msgid "SEPA Direct Debit of customers" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_scheme +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Scheme" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.actions.report.xml,name:account_banking_sepa_direct_debit.report_sepa_direct_debit_mandate +msgid "Sepa Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Sequence Type" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "Sequence Type for Next Debit" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_mode.py:39 +#: code:addons/account_banking_sepa_direct_debit/models/res_company.py:33 +#, python-format +msgid "The SEPA Creditor Identifier '%s' is invalid." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:105 +#, python-format +msgid "" +"The SEPA Direct Debit mandate with reference '%s' for partner '%s' has " +"expired." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:113 +#, python-format +msgid "" +"The mandate with reference '%s' for partner '%s' has type set to 'One-Off' " +"and it has a last debit date set to '%s', so we can't use it." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:48 +#, python-format +msgid "The recurrent mandate '%s' must have a sequence type." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "" +"This field is only used for Recurrent mandates, not for One-Off mandates." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"This mandate is only intended for business-to-business transactions.\n" +" You are not entitled to a refund from your bank after your account has\n" +" been debited, but you are entitled to request your bank\n" +" not to debit your account up until the day on which the payment is due." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the creditor" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the debtor" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Type" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_type +msgid "Type of Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +msgid "Write the ICS of your company" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_config_settings +msgid "account.config.settings" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"to send instructions to your bank to debit your account and (B) your bank to\n" +" debit your account in accordance with the instructions from" +msgstr "" diff --git a/account_banking_sepa_direct_debit/i18n/nl.po b/account_banking_sepa_direct_debit/i18n/nl.po new file mode 100644 index 000000000..c6f684fc3 --- /dev/null +++ b/account_banking_sepa_direct_debit/i18n/nl.po @@ -0,0 +1,372 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_banking_sepa_direct_debit +# +# Translators: +# Cas Vissers , 2017 +# Erwin van der Ploeg , 2016 +msgid "" +msgstr "" +"Project-Id-Version: bank-payment (10.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-01 01:24+0000\n" +"PO-Revision-Date: 2017-04-12 08:26+0000\n" +"Last-Translator: Cas Vissers \n" +"Language-Team: Dutch (http://www.transifex.com/oca/OCA-bank-payment-10-0/language/nl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: nl\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Account Number - IBAN:" +msgstr "Rekening - IBAN:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address of the Debtor:" +msgstr "Adres van de Debiteur:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address:" +msgstr "Adres:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country of the debtor:" +msgstr "Land van de debiteur:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country:" +msgstr "Land:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Creditor's Name:" +msgstr "Naam Crediteur:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Date - Location:" +msgstr "Datum - Locatie:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Debtor's Name:" +msgstr "Naam Debiteur:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Identifier:" +msgstr "Kenmerk:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Mandate Reference:" +msgstr "Mandaat Referentie:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Postal Code - City - Town:" +msgstr "Postcode - Stad - Dorp:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Signature of the debtor:" +msgstr "Handtekening van de debiteur:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Swift BIC (up to 8 or 11 characteres):" +msgstr "Swift BIC (8 of 11 karakters):" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Type of payment:" +msgstr "Soort betaling:" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Business-To-Business Direct debit Mandate" +msgstr "SEPA Business-To-Business Incasso Mandaat" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Direct Debit Mandate" +msgstr "Sepa Incasso mandaat" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_banking_mandate +msgid "A generic banking mandate" +msgstr "Een generiek bank mandaat" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO " +"CREDITOR FOR STORAGE." +msgstr "ALL LEGE VELDEN ZIJN VERPLICHT. WANNEER ONDERTEKEND MOET DIT MANDAAT NAAR DE CREDITEUR GESTUURD WORDEN VOOR ADMINISTRATIE/" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO CREDITOR FOR STORAGE.\n" +" NEVERTHELESS, THE BANK OF DEBTOR REQUIRES DEBTOR’S AUTHORIZATION BEFORE DEBITING B2B DIRECT DEBITS IN THE ACCOUNT.\n" +" THE DEBTOR WILL BE ABLE TO MANAGE THE MENTIONED AUTHORIZATION THROUGH THE MEANS PROVIDED BY HIS BANK." +msgstr "ALL LEGE VELDEN ZIJN VERPLICHT. WANNEER ONDERTEKEND MOET DIT MANDAAT NAAR DE CREDITEUR GESTUURD WORDEN VOOR ADMINISTRATIE.\n NIETTEMIN, DE BANK VAN DE DEBITEUR VERGT AUTHORISATIE VAN DE DEBITEUR VOOR HET DEBITEREN VAN B2B INCASSO'S VAN DE REKENING\n DE DEBITEUR KAN DE AUTHORISATIE BEHEREN VIA DE MIDDELEN VERSCHAFT DOOR DE BANK." + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"As part of your rights, you are entitled to a refund from\n" +" your bank under the terms and conditions of your agreement\n" +" with your bank.\n" +" A refund must be claimed within 8 weeks starting from the date on which your account was debited." +msgstr "Als onderdeel van uw rechten heeft u recht op een credit van uw bank onder de condities en voorwaarden van uw bank.\nEen credit moet worden geclaimed binnen 8 dagen vanaf de datum waarop het bedrag is afgeschreven." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:76 +#, python-format +msgid "" +"As you changed the bank account attached to this mandate, the 'Sequence " +"Type' has been set back to 'First'." +msgstr "Omdat u de gekoppelde bankrekening heeft gewijzigd is de reeks terug gezet naar 'Eerste'." + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_bank_payment_line +msgid "Bank Payment Lines" +msgstr "Bank betaalregels" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Basic (CORE)" +msgstr "Basic (CORE)" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "By signing this mandate form, you authorise (A)" +msgstr "Met ondertekening van dit mandaat autoriseert u (A)" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_res_company +msgid "Companies" +msgstr "Bedrijven" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. If not defined, SEPA Creditor Identifier from company will be used.\n" +"This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "Geef de Incassant-ID in, welke is toegewezen aan uw bedrijf om incasso's uit te voeren. De Incassant-ID is samengesteld uit:\n- uw ISO landcode (2 letters)\n- een 2 cijferig controlegetal\n- een 3 cijferig business code\n- een landspecifieke identifier" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "Geef de Incassant-ID in, welke is toegewezen aan uw bedrijf om incasso's uit te voeren. De Incassant-ID is samengesteld uit:\n- uw ISO landcode (2 letters)\n- een 2 cijferig controlegetal\n- een 3 cijferig business code\n- een landspecifieke identifier" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Enterprise (B2B)" +msgstr "Enterprise (B2B)" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Final" +msgstr "Definitief" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "First" +msgstr "Eerste" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:75 +#, python-format +msgid "Mandate update" +msgstr "Machtiging bijwerken" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:78 +#, python-format +msgid "" +"Missing SEPA Direct Debit mandate on the bank payment line with partner '%s'" +" (reference '%s')." +msgstr "Missende SEPA Incasso mandaten op betaalregel met klant '%s' (referentie '%s')." + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "One-Off" +msgstr "Eenmalig" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_method +msgid "Payment Methods" +msgstr "Betaalwijzes" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_mode +msgid "Payment Modes" +msgstr "Betaalwijze" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_order +msgid "Payment Order" +msgstr "Betalingsopdracht" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:41 +#, python-format +msgid "" +"Payment Type Code '%s' is not supported. The only Payment Type Code " +"supported for SEPA Direct Debit are 'pain.008.001.02', 'pain.008.001.03' and" +" 'pain.008.001.04'." +msgstr "Betaal soort code '%s' wordt niet ondersteund. De enige betaalsoort code ondersteund voor SEPA incasso's zijn 'pain.008.001.02', 'pain.008.001.03' en 'pain.008.001.04'." + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Recurrent" +msgstr "Terugkerend" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Recurring" +msgstr "Terugkerend" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "SEPA Creditor Identifier" +msgstr "SEPA Incassant-ID" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.method,name:account_banking_sepa_direct_debit.sepa_direct_debit +msgid "SEPA Direct Debit for customers" +msgstr "SEPA Automatische Incasso voor klanten" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.mode,name:account_banking_sepa_direct_debit.payment_mode_inbound_sepa_dd1 +msgid "SEPA Direct Debit of customers" +msgstr "SEPA Incasso voor klanten" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_scheme +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Scheme" +msgstr "Schema" + +#. module: account_banking_sepa_direct_debit +#: model:ir.actions.report.xml,name:account_banking_sepa_direct_debit.report_sepa_direct_debit_mandate +msgid "Sepa Mandate" +msgstr "Sepa mandaat" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Sequence Type" +msgstr "Volgorde Type" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "Sequence Type for Next Debit" +msgstr "Reeks soort voor volgende incasso" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_mode.py:39 +#: code:addons/account_banking_sepa_direct_debit/models/res_company.py:31 +#, python-format +msgid "The SEPA Creditor Identifier '%s' is invalid." +msgstr "De SEPA Incassant-ID '%s' is ongeldig." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:85 +#, python-format +msgid "" +"The SEPA Direct Debit mandate with reference '%s' for partner '%s' has " +"expired." +msgstr "De SEPA incasso machtiging met referentie '%s' voor relatie '%s' is verlopen." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:93 +#, python-format +msgid "" +"The mandate with reference '%s' for partner '%s' has type set to 'One-Off' " +"and it has a last debit date set to '%s', so we can't use it." +msgstr "De machtiging referentie '%s' voor relatie %s' is ingesteld op 'eenmalig' en de laatste incasso datum is ingesteld op '%s'. Zodoende kunnen we deze niet gebruiken." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:48 +#, python-format +msgid "The recurrent mandate '%s' must have a sequence type." +msgstr "De herhalende machtiging '%s' dient een reeks soort te hebben." + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "" +"This field is only used for Recurrent mandates, not for One-Off mandates." +msgstr "Dit veld wordt alleen gebruikt voor herhalende machtigingen, niet voor een eenmalige machtiging." + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"This mandate is only intended for business-to-business transactions.\n" +" You are not entitled to a refund from your bank after your account has\n" +" been debited, but you are entitled to request your bank\n" +" not to debit your account up until the day on which the payment is due." +msgstr "Deze mandaat is alleen bedoelt voor B2B transacties.\nHet is niet toegestaan een credit te doen nadat het bedrag is afgeschreven, maar je kan een verzoek doen aan de bank om het bedrag niet af te schrijven totaan de vervaldatum." + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the creditor" +msgstr "Moet ingevuld worden door de crediteur" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the debtor" +msgstr "Moet ingevuld worden door de debiteur" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Type" +msgstr "Soort" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_type +msgid "Type of Mandate" +msgstr "Soort machtiging" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +msgid "Write the ICS of your company" +msgstr "Vul hier de ICS van uw bedrijf in" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_config_settings +msgid "account.config.settings" +msgstr "account.config.settings" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"to send instructions to your bank to debit your account and (B) your bank to\n" +" debit your account in accordance with the instructions from" +msgstr "om " diff --git a/account_banking_sepa_direct_debit/i18n/pt_BR.po b/account_banking_sepa_direct_debit/i18n/pt_BR.po new file mode 100644 index 000000000..e6e0b358c --- /dev/null +++ b/account_banking_sepa_direct_debit/i18n/pt_BR.po @@ -0,0 +1,366 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_banking_sepa_direct_debit +# +# Translators: +# OCA Transbot , 2016 +msgid "" +msgstr "" +"Project-Id-Version: bank-payment (10.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-11-21 10:17+0000\n" +"PO-Revision-Date: 2016-10-19 23:47+0000\n" +"Last-Translator: OCA Transbot \n" +"Language-Team: Portuguese (Brazil) (http://www.transifex.com/oca/OCA-bank-payment-10-0/language/pt_BR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt_BR\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Account Number - IBAN:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address of the Debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country of the debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Creditor's Name:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Date - Location:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Debtor's Name:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Identifier:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Mandate Reference:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Postal Code - City - Town:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Signature of the debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Swift BIC (up to 8 or 11 characteres):" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Type of payment:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Business-To-Business Direct debit Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Direct Debit Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_banking_mandate +msgid "A generic banking mandate" +msgstr "Uma ordem bancária genérica" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO " +"CREDITOR FOR STORAGE." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO CREDITOR FOR STORAGE.\n" +" NEVERTHELESS, THE BANK OF DEBTOR REQUIRES DEBTOR’S AUTHORIZATION BEFORE DEBITING B2B DIRECT DEBITS IN THE ACCOUNT.\n" +" THE DEBTOR WILL BE ABLE TO MANAGE THE MENTIONED AUTHORIZATION THROUGH THE MEANS PROVIDED BY HIS BANK." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"As part of your rights, you are entitled to a refund from\n" +" your bank under the terms and conditions of your agreement\n" +" with your bank.\n" +" A refund must be claimed within 8 weeks starting from the date on which your account was debited." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:76 +#, python-format +msgid "" +"As you changed the bank account attached to this mandate, the 'Sequence " +"Type' has been set back to 'First'." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_bank_payment_line +msgid "Bank Payment Lines" +msgstr "Linhas de pagamento bancária" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Basic (CORE)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "By signing this mandate form, you authorise (A)" +msgstr "Assinando este formulário de Ordem, você autoriza (A)" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_res_company +msgid "Companies" +msgstr "Empresas" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. If not defined, SEPA Creditor Identifier from company will be used.\n" +"This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Enterprise (B2B)" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Final" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "First" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:75 +#, python-format +msgid "Mandate update" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:77 +#, python-format +msgid "" +"Missing SEPA Direct Debit mandate on the bank payment line with partner '%s'" +" (reference '%s')." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "One-Off" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_method +msgid "Payment Methods" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_mode +msgid "Payment Modes" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_order +msgid "Payment Order" +msgstr "Ordem de Pagamento" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:41 +#, python-format +msgid "" +"Payment Type Code '%s' is not supported. The only Payment Type Code " +"supported for SEPA Direct Debit are 'pain.008.001.02', 'pain.008.001.03' and" +" 'pain.008.001.04'." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Recurrent" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Recurring" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "SEPA Creditor Identifier" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.mode,name:account_banking_sepa_direct_debit.payment_mode_inbound_sepa_dd1 +msgid "SEPA Direct Debit of customers" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_scheme +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Scheme" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.actions.report.xml,name:account_banking_sepa_direct_debit.report_sepa_direct_debit_mandate +msgid "Sepa Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Sequence Type" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "Sequence Type for Next Debit" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_mode.py:39 +#: code:addons/account_banking_sepa_direct_debit/models/res_company.py:31 +#, python-format +msgid "The SEPA Creditor Identifier '%s' is invalid." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:84 +#, python-format +msgid "" +"The SEPA Direct Debit mandate with reference '%s' for partner '%s' has " +"expired." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:92 +#, python-format +msgid "" +"The mandate with reference '%s' for partner '%s' has type set to 'One-Off' " +"and it has a last debit date set to '%s', so we can't use it." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:48 +#, python-format +msgid "The recurrent mandate '%s' must have a sequence type." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "" +"This field is only used for Recurrent mandates, not for One-Off mandates." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"This mandate is only intended for business-to-business transactions.\n" +" You are not entitled to a refund from your bank after your account has\n" +" been debited, but you are entitled to request your bank\n" +" not to debit your account up until the day on which the payment is due." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the creditor" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the debtor" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Type" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_type +msgid "Type of Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +msgid "Write the ICS of your company" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_config_settings +msgid "account.config.settings" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"to send instructions to your bank to debit your account and (B) your bank to\n" +" debit your account in accordance with the instructions from" +msgstr "" diff --git a/account_banking_sepa_direct_debit/i18n/sl.po b/account_banking_sepa_direct_debit/i18n/sl.po new file mode 100644 index 000000000..0341be139 --- /dev/null +++ b/account_banking_sepa_direct_debit/i18n/sl.po @@ -0,0 +1,371 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_banking_sepa_direct_debit +# +# Translators: +# OCA Transbot , 2016 +msgid "" +msgstr "" +"Project-Id-Version: bank-payment (10.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-01 01:24+0000\n" +"PO-Revision-Date: 2017-02-23 12:57+0000\n" +"Last-Translator: OCA Transbot \n" +"Language-Team: Slovenian (http://www.transifex.com/oca/OCA-bank-payment-10-0/language/sl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: sl\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Account Number - IBAN:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address of the Debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Address:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country of the debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Country:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Creditor's Name:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Date - Location:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Debtor's Name:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Identifier:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Mandate Reference:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Postal Code - City - Town:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Signature of the debtor:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Swift BIC (up to 8 or 11 characteres):" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Type of payment:" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Business-To-Business Direct debit Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "Sepa Direct Debit Mandate" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_banking_mandate +msgid "A generic banking mandate" +msgstr "Generični bančni mandat" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO " +"CREDITOR FOR STORAGE." +msgstr "VSE VRZELI SO OBVEZNE. PO PODPISU MANDATA, SE GA MORA POSLATI UPNIKU V HRANJENJE." + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"ALL GAPS ARE MANDATORY. ONCE THIS MANDATE HAS BEEN SIGNED MUST BE SENT TO CREDITOR FOR STORAGE.\n" +" NEVERTHELESS, THE BANK OF DEBTOR REQUIRES DEBTOR’S AUTHORIZATION BEFORE DEBITING B2B DIRECT DEBITS IN THE ACCOUNT.\n" +" THE DEBTOR WILL BE ABLE TO MANAGE THE MENTIONED AUTHORIZATION THROUGH THE MEANS PROVIDED BY HIS BANK." +msgstr "VSE VRZELI SO OBVEZNE. PO PODPISU MANDATA, SE GA MORA POSLATI UPNIKU V HRANJENJE.\n KLJUB VSEMU, BANKA DOLŽNIKA ZAHTEVA DOLŽNIKOVO POOBLASTILO PRED NEPOSREDNO B2B OBREMENITVIJO RAČUNA.\n DOLŽNIK BI LAHKO UPRAVLJAL OMENJENO POOBLASTILO NA NAČIN, KI MU GA OMOGOČA NJEGOVA BANKA." + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"As part of your rights, you are entitled to a refund from\n" +" your bank under the terms and conditions of your agreement\n" +" with your bank.\n" +" A refund must be claimed within 8 weeks starting from the date on which your account was debited." +msgstr "V sklopu vaših pravic je dobropis/povračilo vaše banke\n v skladu s splošnimi pogoji vašega dogovora\n z banko.\n Povračilo je potrebno zahtevati v do 8 tednih od datuma, na katerega je bil vaš račun obremenjen." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:76 +#, python-format +msgid "" +"As you changed the bank account attached to this mandate, the 'Sequence " +"Type' has been set back to 'First'." +msgstr "Ker ste spremenili bančni račun pripet temu mandatu, se je tip zaporedja vrnil v 'Prvi'." + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_bank_payment_line +msgid "Bank Payment Lines" +msgstr "Postavke bančnih plačil" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Basic (CORE)" +msgstr "Osnovna (CORE)" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "By signing this mandate form, you authorise (A)" +msgstr "S podpisom tega mandata vi pooblaščate (A)" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_res_company +msgid "Companies" +msgstr "Družbe" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. If not defined, SEPA Creditor Identifier from company will be used.\n" +"This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "Vnesi identifikator upnika, ki je bil dodeljen vaši družbi za izvajanje SEPA direktnih obremenitev. Če ni določen, se uporabi SEPA identifikator upnika iz nastavitev družbe.\nIdentifikator sestavljajo:\n- ISO koda vaše države (2 znaka)\n- 2-značna checkum koda\n- 3-značna poslovna koda\n- specifični identifikator glede na državo" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "" +"Enter the Creditor Identifier that has been attributed to your company to make SEPA Direct Debits. This identifier is composed of :\n" +"- your country ISO code (2 letters)\n" +"- a 2-digits checkum\n" +"- a 3-letters business code\n" +"- a country-specific identifier" +msgstr "Vnesi identifikator upnika, ki je bil dodeljen vaši družbi za izvajanje SEPA direktnih obremenitev. Identifikator sestavljajo:\n- ISO koda vaše države (2 znaka)\n- 2-značna checkum koda\n- 3-značna poslovna koda\n- specifični identifikator glede na državo" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,scheme:0 +msgid "Enterprise (B2B)" +msgstr "Podjetje (B2B)" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Final" +msgstr "Končna" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "First" +msgstr "Prva" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:75 +#, python-format +msgid "Mandate update" +msgstr "Posodobitev mandata" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:78 +#, python-format +msgid "" +"Missing SEPA Direct Debit mandate on the bank payment line with partner '%s'" +" (reference '%s')." +msgstr "Pri postavki bančnega plačila partnerja '%s' (sklic '%s') manjka SEPA direktna obremenitev." + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "One-Off" +msgstr "Enkratna" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_method +msgid "Payment Methods" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_mode +msgid "Payment Modes" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_payment_order +msgid "Payment Order" +msgstr "Plačilni nalog" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:41 +#, python-format +msgid "" +"Payment Type Code '%s' is not supported. The only Payment Type Code " +"supported for SEPA Direct Debit are 'pain.008.001.02', 'pain.008.001.03' and" +" 'pain.008.001.04'." +msgstr "Koda tipa plačila '%s' ni podprta. Edine kode tipov plačil, ki so podprte za SEPA bremenilne transakcije, so 'pain.008.001.02', 'pain.008.001.03' in 'pain.008.001.04'." + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,type:0 +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Recurrent" +msgstr "Ponavljajoče se" + +#. module: account_banking_sepa_direct_debit +#: selection:account.banking.mandate,recurrent_sequence_type:0 +msgid "Recurring" +msgstr "Ponavljajoč" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_config_settings_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_payment_mode_sepa_creditor_identifier +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_res_company_sepa_creditor_identifier +msgid "SEPA Creditor Identifier" +msgstr "Identifikator SEPA upnika" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.method,name:account_banking_sepa_direct_debit.sepa_direct_debit +msgid "SEPA Direct Debit for customers" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:account.payment.mode,name:account_banking_sepa_direct_debit.payment_mode_inbound_sepa_dd1 +msgid "SEPA Direct Debit of customers" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_scheme +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +msgid "Scheme" +msgstr "Shema" + +#. module: account_banking_sepa_direct_debit +#: model:ir.actions.report.xml,name:account_banking_sepa_direct_debit.report_sepa_direct_debit_mandate +msgid "Sepa Mandate" +msgstr "SEPA mandat" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Sequence Type" +msgstr "Tip zaporedja" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "Sequence Type for Next Debit" +msgstr "Tip zaporedja za naslednjo obremenitev" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_mode.py:39 +#: code:addons/account_banking_sepa_direct_debit/models/res_company.py:31 +#, python-format +msgid "The SEPA Creditor Identifier '%s' is invalid." +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:85 +#, python-format +msgid "" +"The SEPA Direct Debit mandate with reference '%s' for partner '%s' has " +"expired." +msgstr "SEPA mandat za direktno obremenitev s sklicem '%s' za partnerja '%s' je potekel." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_payment_order.py:93 +#, python-format +msgid "" +"The mandate with reference '%s' for partner '%s' has type set to 'One-Off' " +"and it has a last debit date set to '%s', so we can't use it." +msgstr "Pri mandatu s sklicem '%s' za partnerja '%s' je tip nastavljen na 'enkraten', zadnji datum obremenitve pa ima nastavljen na '%s', zato ga ne moremo uporabiti." + +#. module: account_banking_sepa_direct_debit +#: code:addons/account_banking_sepa_direct_debit/models/account_banking_mandate.py:48 +#, python-format +msgid "The recurrent mandate '%s' must have a sequence type." +msgstr "Ponavljajoči se mandat '%s' mora vsebovati tip zaporedja." + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,help:account_banking_sepa_direct_debit.field_account_banking_mandate_recurrent_sequence_type +msgid "" +"This field is only used for Recurrent mandates, not for One-Off mandates." +msgstr "To polje se uporablja le za ponavljajoče se mandate, ne pa za enkratne mandate." + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"This mandate is only intended for business-to-business transactions.\n" +" You are not entitled to a refund from your bank after your account has\n" +" been debited, but you are entitled to request your bank\n" +" not to debit your account up until the day on which the payment is due." +msgstr "Ta mandat je mišljen le za transakcije med pravnimi osebami.\n Po obremenitvi vašega računa nimate pravice do povračila\n svoje banke,, lahko pa pri banki zahtevate, da se računa\n ne bremeni do dneva zapadlosti plačila." + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the creditor" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "To be completed by the debtor" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_search +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_mandate_tree +msgid "Type" +msgstr "Tip" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model.fields,field_description:account_banking_sepa_direct_debit.field_account_banking_mandate_type +msgid "Type of Mandate" +msgstr "Tip mandata" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.view_account_config_settings +msgid "Write the ICS of your company" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.model,name:account_banking_sepa_direct_debit.model_account_config_settings +msgid "account.config.settings" +msgstr "" + +#. module: account_banking_sepa_direct_debit +#: model:ir.ui.view,arch_db:account_banking_sepa_direct_debit.sepa_direct_debit_mandate_document +msgid "" +"to send instructions to your bank to debit your account and (B) your bank to\n" +" debit your account in accordance with the instructions from" +msgstr "za pošiljanje navodil svoji banki glede bremenitve vašega računa in (B) svoji banki\n naj bremeni vaš račun v skladu z navodili iz" diff --git a/account_banking_sepa_direct_debit/models/__init__.py b/account_banking_sepa_direct_debit/models/__init__.py new file mode 100644 index 000000000..64b7c3874 --- /dev/null +++ b/account_banking_sepa_direct_debit/models/__init__.py @@ -0,0 +1,9 @@ +# -*- coding: utf-8 -*- + +from . import res_company +from . import res_config +from . import account_banking_mandate +from . import bank_payment_line +from . import account_payment_mode +from . import account_payment_method +from . import account_payment_order diff --git a/account_banking_sepa_direct_debit/models/account_banking_mandate.py b/account_banking_sepa_direct_debit/models/account_banking_mandate.py new file mode 100644 index 000000000..c45550bc1 --- /dev/null +++ b/account_banking_sepa_direct_debit/models/account_banking_mandate.py @@ -0,0 +1,104 @@ +# -*- coding: utf-8 -*- +# © 2013-2016 Akretion - Alexis de Lattre +# © 2014 Serv. Tecnol. Avanzados - Pedro M. Baeza +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from odoo import models, fields, api, exceptions, _ +from datetime import datetime +from dateutil.relativedelta import relativedelta +import logging + +NUMBER_OF_UNUSED_MONTHS_BEFORE_EXPIRY = 36 + +logger = logging.getLogger(__name__) + + +class AccountBankingMandate(models.Model): + """SEPA Direct Debit Mandate""" + _inherit = 'account.banking.mandate' + _rec_name = 'display_name' + + format = fields.Selection( + selection_add=[('sepa', 'Sepa Mandate')], default='sepa') + type = fields.Selection( + selection_add=[ + ('recurrent', 'Recurrent'), + ('oneoff', 'One-Off') + ]) + recurrent_sequence_type = fields.Selection( + [('first', 'First'), + ('recurring', 'Recurring'), + ('final', 'Final')], + string='Sequence Type for Next Debit', track_visibility='onchange', + help="This field is only used for Recurrent mandates, not for " + "One-Off mandates.", default="first") + scheme = fields.Selection([ + ('CORE', 'Basic (CORE)'), + ('B2B', 'Enterprise (B2B)')], + string='Scheme', default="CORE", track_visibility='onchange') + unique_mandate_reference = fields.Char(size=35) # cf ISO 20022 + display_name = fields.Char(compute='compute_display_name', store=True) + + @api.multi + @api.constrains('type', 'recurrent_sequence_type') + def _check_recurring_type(self): + for mandate in self: + if (mandate.type == 'recurrent' and + not mandate.recurrent_sequence_type): + raise exceptions.Warning( + _("The recurrent mandate '%s' must have a sequence type.") + % mandate.unique_mandate_reference) + + @api.multi + @api.depends('unique_mandate_reference', 'recurrent_sequence_type') + def compute_display_name(self): + for mandate in self: + if mandate.format == 'sepa': + name = '%s (%s)' % ( + mandate.unique_mandate_reference, + mandate.recurrent_sequence_type) + else: + name = mandate.unique_mandate_reference + mandate.display_name = name + + @api.multi + @api.onchange('partner_bank_id') + def mandate_partner_bank_change(self): + for mandate in self: + super(AccountBankingMandate, self).mandate_partner_bank_change() + res = {} + if ( + mandate.state == 'valid' and + mandate.partner_bank_id and + mandate.type == 'recurrent' and + mandate.recurrent_sequence_type != 'first' + ): + mandate.recurrent_sequence_type = 'first' + res['warning'] = { + 'title': _('Mandate update'), + 'message': _("As you changed the bank account attached " + "to this mandate, the 'Sequence Type' has " + "been set back to 'First'."), + } + return res + + @api.model + def _sdd_mandate_set_state_to_expired(self): + logger.info('Searching for SDD Mandates that must be set to Expired') + expire_limit_date = datetime.today() + relativedelta( + months=-NUMBER_OF_UNUSED_MONTHS_BEFORE_EXPIRY) + expire_limit_date_str = expire_limit_date.strftime('%Y-%m-%d') + expired_mandates = self.search( + ['|', + ('last_debit_date', '=', False), + ('last_debit_date', '<=', expire_limit_date_str), + ('state', '=', 'valid'), + ('signature_date', '<=', expire_limit_date_str)]) + if expired_mandates: + expired_mandates.write({'state': 'expired'}) + logger.info( + 'The following SDD Mandate IDs has been set to expired: %s' + % expired_mandates.ids) + else: + logger.info('0 SDD Mandates had to be set to Expired') + return True diff --git a/account_banking_sepa_direct_debit/models/account_payment_method.py b/account_banking_sepa_direct_debit/models/account_payment_method.py new file mode 100644 index 000000000..006f923c0 --- /dev/null +++ b/account_banking_sepa_direct_debit/models/account_payment_method.py @@ -0,0 +1,27 @@ +# -*- coding: utf-8 -*- +# © 2016 Akretion (Alexis de Lattre ) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from odoo import models, fields, api + + +class AccountPaymentMethod(models.Model): + _inherit = 'account.payment.method' + + pain_version = fields.Selection(selection_add=[ + ('pain.008.001.02', 'pain.008.001.02 (recommended for direct debit)'), + ('pain.008.001.03', 'pain.008.001.03'), + ('pain.008.001.04', 'pain.008.001.04'), + ('pain.008.003.02', 'pain.008.003.02 (direct debit in Germany)'), + ]) + + @api.multi + def get_xsd_file_path(self): + self.ensure_one() + if self.pain_version in [ + 'pain.008.001.02', 'pain.008.001.03', 'pain.008.001.04', + 'pain.008.003.02']: + path = 'account_banking_sepa_direct_debit/data/%s.xsd'\ + % self.pain_version + return path + return super(AccountPaymentMethod, self).get_xsd_file_path() diff --git a/account_banking_sepa_direct_debit/models/account_payment_mode.py b/account_banking_sepa_direct_debit/models/account_payment_mode.py new file mode 100644 index 000000000..083ea5582 --- /dev/null +++ b/account_banking_sepa_direct_debit/models/account_payment_mode.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- +# © 2016 Antiun Ingenieria S.L. - Antonio Espinosa +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from odoo import models, fields, api, _ +from .common import is_sepa_creditor_identifier_valid +from odoo.exceptions import ValidationError + + +class AccountPaymentMode(models.Model): + _inherit = 'account.payment.mode' + + sepa_creditor_identifier = fields.Char( + string='SEPA Creditor Identifier', size=35, + help="Enter the Creditor Identifier that has been attributed to your " + "company to make SEPA Direct Debits. If not defined, " + "SEPA Creditor Identifier from company will be used.\n" + "This identifier is composed of :\n" + "- your country ISO code (2 letters)\n" + "- a 2-digits checkum\n" + "- a 3-letters business code\n" + "- a country-specific identifier") + + @api.multi + @api.constrains('sepa_creditor_identifier') + def _check_sepa_creditor_identifier(self): + for payment_mode in self: + if payment_mode.sepa_creditor_identifier: + if not is_sepa_creditor_identifier_valid( + payment_mode.sepa_creditor_identifier): + raise ValidationError( + _("The SEPA Creditor Identifier '%s' is invalid.") + % payment_mode.sepa_creditor_identifier) diff --git a/account_banking_sepa_direct_debit/models/account_payment_order.py b/account_banking_sepa_direct_debit/models/account_payment_order.py new file mode 100644 index 000000000..c759e8323 --- /dev/null +++ b/account_banking_sepa_direct_debit/models/account_payment_order.py @@ -0,0 +1,258 @@ +# -*- coding: utf-8 -*- +# © 2016 Akretion (Alexis de Lattre ) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import models, fields, api, _ +from odoo.exceptions import UserError +from lxml import etree + + +class AccountPaymentOrder(models.Model): + _inherit = 'account.payment.order' + + @api.multi + def generate_payment_file(self): + """Creates the SEPA Direct Debit file. That's the important code !""" + self.ensure_one() + if self.payment_method_id.code != 'sepa_direct_debit': + return super(AccountPaymentOrder, self).generate_payment_file() + pain_flavor = self.payment_method_id.pain_version + # We use pain_flavor.startswith('pain.008.001.xx') + # to support country-specific extensions such as + # pain.008.001.02.ch.01 (cf l10n_ch_sepa) + if pain_flavor.startswith('pain.008.001.02'): + bic_xml_tag = 'BIC' + name_maxsize = 70 + root_xml_tag = 'CstmrDrctDbtInitn' + elif pain_flavor.startswith('pain.008.003.02'): + bic_xml_tag = 'BIC' + name_maxsize = 70 + root_xml_tag = 'CstmrDrctDbtInitn' + elif pain_flavor.startswith('pain.008.001.03'): + bic_xml_tag = 'BICFI' + name_maxsize = 140 + root_xml_tag = 'CstmrDrctDbtInitn' + elif pain_flavor.startswith('pain.008.001.04'): + bic_xml_tag = 'BICFI' + name_maxsize = 140 + root_xml_tag = 'CstmrDrctDbtInitn' + else: + raise UserError( + _("Payment Type Code '%s' is not supported. The only " + "Payment Type Code supported for SEPA Direct Debit are " + "'pain.008.001.02', 'pain.008.001.03' and " + "'pain.008.001.04'.") % pain_flavor) + pay_method = self.payment_mode_id.payment_method_id + xsd_file = pay_method.get_xsd_file_path() + gen_args = { + 'bic_xml_tag': bic_xml_tag, + 'name_maxsize': name_maxsize, + 'convert_to_ascii': pay_method.convert_to_ascii, + 'payment_method': 'DD', + 'file_prefix': 'sdd_', + 'pain_flavor': pain_flavor, + 'pain_xsd_file': xsd_file, + } + nsmap = self.generate_pain_nsmap() + attrib = self.generate_pain_attrib() + xml_root = etree.Element('Document', nsmap=nsmap, attrib=attrib) + pain_root = etree.SubElement(xml_root, root_xml_tag) + # A. Group header + group_header, nb_of_transactions_a, control_sum_a = \ + self.generate_group_header_block(pain_root, gen_args) + transactions_count_a = 0 + amount_control_sum_a = 0.0 + lines_per_group = {} + # key = (requested_date, priority, sequence type) + # value = list of lines as objects + for line in self.bank_line_ids: + transactions_count_a += 1 + priority = line.priority + categ_purpose = line.category_purpose + # The field line.date is the requested payment date + # taking into account the 'date_prefered' setting + # cf account_banking_payment_export/models/account_payment.py + # in the inherit of action_open() + if not line.mandate_id: + raise UserError( + _("Missing SEPA Direct Debit mandate on the " + "bank payment line with partner '%s' " + "(reference '%s').") + % (line.partner_id.name, line.name)) + scheme = line.mandate_id.scheme + if line.mandate_id.state != 'valid': + raise Warning( + _("The SEPA Direct Debit mandate with reference '%s' " + "for partner '%s' has expired.") + % (line.mandate_id.unique_mandate_reference, + line.mandate_id.partner_id.name)) + if line.mandate_id.type == 'oneoff': + seq_type = 'OOFF' + if line.mandate_id.last_debit_date: + raise Warning( + _("The mandate with reference '%s' for partner " + "'%s' has type set to 'One-Off' and it has a " + "last debit date set to '%s', so we can't use " + "it.") + % (line.mandate_id.unique_mandate_reference, + line.mandate_id.partner_id.name, + line.mandate_id.last_debit_date)) + elif line.mandate_id.type == 'recurrent': + seq_type_map = { + 'recurring': 'RCUR', + 'first': 'FRST', + 'final': 'FNAL', + } + seq_type_label = \ + line.mandate_id.recurrent_sequence_type + assert seq_type_label is not False + seq_type = seq_type_map[seq_type_label] + key = (line.date, priority, categ_purpose, seq_type, scheme) + if key in lines_per_group: + lines_per_group[key].append(line) + else: + lines_per_group[key] = [line] + + for (requested_date, priority, categ_purpose, sequence_type, scheme),\ + lines in list(lines_per_group.items()): + # B. Payment info + payment_info, nb_of_transactions_b, control_sum_b = \ + self.generate_start_payment_info_block( + pain_root, + "self.name + '-' + " + "sequence_type + '-' + requested_date.replace('-', '') " + "+ '-' + priority + '-' + category_purpose", + priority, scheme, categ_purpose, + sequence_type, requested_date, { + 'self': self, + 'sequence_type': sequence_type, + 'priority': priority, + 'category_purpose': categ_purpose or 'NOcateg', + 'requested_date': requested_date, + }, gen_args) + + self.generate_party_block( + payment_info, 'Cdtr', 'B', + self.company_partner_bank_id, gen_args) + charge_bearer = etree.SubElement(payment_info, 'ChrgBr') + if self.sepa: + charge_bearer_text = 'SLEV' + else: + charge_bearer_text = self.charge_bearer + charge_bearer.text = charge_bearer_text + creditor_scheme_identification = etree.SubElement( + payment_info, 'CdtrSchmeId') + self.generate_creditor_scheme_identification( + creditor_scheme_identification, + 'self.payment_mode_id.sepa_creditor_identifier or ' + 'self.company_id.sepa_creditor_identifier', + 'SEPA Creditor Identifier', {'self': self}, 'SEPA', gen_args) + transactions_count_b = 0 + amount_control_sum_b = 0.0 + for line in lines: + transactions_count_b += 1 + # C. Direct Debit Transaction Info + dd_transaction_info = etree.SubElement( + payment_info, 'DrctDbtTxInf') + payment_identification = etree.SubElement( + dd_transaction_info, 'PmtId') + if pain_flavor == 'pain.008.001.02.ch.01': + instruction_identification = etree.SubElement( + payment_identification, 'InstrId') + instruction_identification.text = self._prepare_field( + 'Intruction Identification', 'line.name', + {'line': line}, 35, gen_args=gen_args) + end2end_identification = etree.SubElement( + payment_identification, 'EndToEndId') + end2end_identification.text = self._prepare_field( + 'End to End Identification', 'line.name', + {'line': line}, 35, gen_args=gen_args) + currency_name = self._prepare_field( + 'Currency Code', 'line.currency_id.name', + {'line': line}, 3, gen_args=gen_args) + instructed_amount = etree.SubElement( + dd_transaction_info, 'InstdAmt', Ccy=currency_name) + instructed_amount.text = '%.2f' % line.amount_currency + amount_control_sum_a += line.amount_currency + amount_control_sum_b += line.amount_currency + dd_transaction = etree.SubElement( + dd_transaction_info, 'DrctDbtTx') + mandate_related_info = etree.SubElement( + dd_transaction, 'MndtRltdInf') + mandate_identification = etree.SubElement( + mandate_related_info, 'MndtId') + mandate_identification.text = self._prepare_field( + 'Unique Mandate Reference', + 'line.mandate_id.unique_mandate_reference', + {'line': line}, 35, gen_args=gen_args) + mandate_signature_date = etree.SubElement( + mandate_related_info, 'DtOfSgntr') + mandate_signature_date.text = self._prepare_field( + 'Mandate Signature Date', + 'line.mandate_id.signature_date', + {'line': line}, 10, gen_args=gen_args) + if sequence_type == 'FRST' and line.mandate_id.last_debit_date: + amendment_indicator = etree.SubElement( + mandate_related_info, 'AmdmntInd') + amendment_indicator.text = 'true' + amendment_info_details = etree.SubElement( + mandate_related_info, 'AmdmntInfDtls') + ori_debtor_account = etree.SubElement( + amendment_info_details, 'OrgnlDbtrAcct') + ori_debtor_account_id = etree.SubElement( + ori_debtor_account, 'Id') + ori_debtor_agent_other = etree.SubElement( + ori_debtor_account_id, 'Othr') + ori_debtor_agent_other_id = etree.SubElement( + ori_debtor_agent_other, 'Id') + ori_debtor_agent_other_id.text = 'SMNDA' + # Until 20/11/2016, SMNDA meant + # "Same Mandate New Debtor Agent" + # After 20/11/2016, SMNDA means + # "Same Mandate New Debtor Account" + + self.generate_party_block( + dd_transaction_info, 'Dbtr', 'C', + line.partner_bank_id, gen_args, line) + + self.generate_remittance_info_block( + dd_transaction_info, line, gen_args) + + nb_of_transactions_b.text = str(transactions_count_b) + control_sum_b.text = '%.2f' % amount_control_sum_b + nb_of_transactions_a.text = str(transactions_count_a) + control_sum_a.text = '%.2f' % amount_control_sum_a + + return self.finalize_sepa_file_creation( + xml_root, gen_args) + + @api.multi + def finalize_sepa_file_creation(self, xml_root, gen_args): + """Save the SEPA Direct Debit file: mark all payments in the file + as 'sent'. Write 'last debit date' on mandate and set oneoff + mandate to expired. + """ + abmo = self.env['account.banking.mandate'] + to_expire_mandates = abmo.browse([]) + first_mandates = abmo.browse([]) + all_mandates = abmo.browse([]) + for bline in self.bank_line_ids: + if bline.mandate_id in all_mandates: + continue + all_mandates += bline.mandate_id + if bline.mandate_id.type == 'oneoff': + to_expire_mandates += bline.mandate_id + elif bline.mandate_id.type == 'recurrent': + seq_type = bline.mandate_id.recurrent_sequence_type + if seq_type == 'final': + to_expire_mandates += bline.mandate_id + elif seq_type == 'first': + first_mandates += bline.mandate_id + all_mandates.write( + {'last_debit_date': fields.Date.context_today(self)}) + to_expire_mandates.write({'state': 'expired'}) + first_mandates.write({ + 'recurrent_sequence_type': 'recurring', + }) + return super(AccountPaymentOrder, self).finalize_sepa_file_creation( + xml_root, gen_args) diff --git a/account_banking_sepa_direct_debit/models/bank_payment_line.py b/account_banking_sepa_direct_debit/models/bank_payment_line.py new file mode 100644 index 000000000..4c600e24c --- /dev/null +++ b/account_banking_sepa_direct_debit/models/bank_payment_line.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +# © 2015-2016 Akretion - Alexis de Lattre +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from odoo import models, api + + +class BankPaymentLine(models.Model): + _inherit = 'bank.payment.line' + + @api.multi + def move_line_offsetting_account_hashcode(self): + """ + From my experience, even when you ask several direct debits + at the same date with enough delay, you will have several credits + on your bank statement: one for each mandate types. + So we split the transfer move lines by mandate type, so easier + reconciliation of the bank statement. + """ + hashcode = super(BankPaymentLine, self).\ + move_line_offsetting_account_hashcode() + hashcode += '-' + str(self.mandate_id.recurrent_sequence_type) + return hashcode diff --git a/account_banking_sepa_direct_debit/models/common.py b/account_banking_sepa_direct_debit/models/common.py new file mode 100644 index 000000000..cf32c81c2 --- /dev/null +++ b/account_banking_sepa_direct_debit/models/common.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- +# © 2013-2016 Akretion (Alexis de Lattre ) +# © 2014 Serv. Tecnol. Avanzados - Pedro M. Baeza +# © 2016 Antiun Ingenieria S.L. - Antonio Espinosa +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +import logging + +logger = logging.getLogger(__name__) + + +def is_sepa_creditor_identifier_valid(sepa_creditor_identifier): + """Check if SEPA Creditor Identifier is valid + @param sepa_creditor_identifier: SEPA Creditor Identifier as str + or unicode + @return: True if valid, False otherwise + """ + if not isinstance(sepa_creditor_identifier, str): + return False + try: + sci = str(sepa_creditor_identifier).lower() + except: + logger.warning( + "SEPA Creditor ID should contain only ASCII characters.") + return False + if len(sci) < 9: + return False + before_replacement = sci[7:] + sci[0:2] + '00' + logger.debug( + "SEPA ID check before_replacement = %s" % before_replacement) + after_replacement = '' + for char in before_replacement: + if char.isalpha(): + after_replacement += str(ord(char) - 87) + else: + after_replacement += char + logger.debug( + "SEPA ID check after_replacement = %s" % after_replacement) + return int(sci[2:4]) == (98 - (int(after_replacement) % 97)) diff --git a/account_banking_sepa_direct_debit/models/res_company.py b/account_banking_sepa_direct_debit/models/res_company.py new file mode 100644 index 000000000..7edcde4a6 --- /dev/null +++ b/account_banking_sepa_direct_debit/models/res_company.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +# © 2013-2016 Akretion (Alexis de Lattre ) +# © 2014 Serv. Tecnol. Avanzados - Pedro M. Baeza +# © 2016 Antiun Ingenieria S.L. - Antonio Espinosa +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from odoo import models, fields, api, _ +from .common import is_sepa_creditor_identifier_valid +from odoo.exceptions import ValidationError + + +class ResCompany(models.Model): + _inherit = 'res.company' + + sepa_creditor_identifier = fields.Char( + string='SEPA Creditor Identifier', size=35, + help="Enter the Creditor Identifier that has been attributed to your " + "company to make SEPA Direct Debits. This identifier is composed " + "of :\n- your country ISO code (2 letters)\n- a 2-digits " + "checkum\n- a 3-letters business code\n- a country-specific " + "identifier") + + @api.multi + @api.constrains('sepa_creditor_identifier') + def _check_sepa_creditor_identifier(self): + for company in self: + if company.sepa_creditor_identifier: + if not is_sepa_creditor_identifier_valid( + company.sepa_creditor_identifier): + raise ValidationError( + _("The SEPA Creditor Identifier '%s' is invalid.") + % company.sepa_creditor_identifier) diff --git a/account_banking_sepa_direct_debit/models/res_config.py b/account_banking_sepa_direct_debit/models/res_config.py new file mode 100644 index 000000000..531b9ccf8 --- /dev/null +++ b/account_banking_sepa_direct_debit/models/res_config.py @@ -0,0 +1,12 @@ +# -*- coding: utf-8 -*- +# © 2016 Akretion (Alexis de Lattre ) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from odoo import models, fields + + +class ResConfigSettings(models.TransientModel): + _inherit = 'res.config.settings' + + sepa_creditor_identifier = fields.Char( + related='company_id.sepa_creditor_identifier') diff --git a/account_banking_sepa_direct_debit/post_install.py b/account_banking_sepa_direct_debit/post_install.py new file mode 100644 index 000000000..b357674f3 --- /dev/null +++ b/account_banking_sepa_direct_debit/post_install.py @@ -0,0 +1,19 @@ +# -*- coding: utf-8 -*- +# © 2016 Akretion (Alexis de Lattre ) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import api, SUPERUSER_ID + + +def update_bank_journals(cr, registry): + with api.Environment.manage(): + env = api.Environment(cr, SUPERUSER_ID, {}) + ajo = env['account.journal'] + journals = ajo.search([('type', '=', 'bank')]) + sdd = env.ref( + 'account_banking_sepa_direct_debit.sepa_direct_debit') + if sdd: + journals.write({ + 'inbound_payment_method_ids': [(4, sdd.id)], + }) + return diff --git a/account_banking_sepa_direct_debit/reports/sepa_direct_debit_mandate.xml b/account_banking_sepa_direct_debit/reports/sepa_direct_debit_mandate.xml new file mode 100644 index 000000000..5f84a6d30 --- /dev/null +++ b/account_banking_sepa_direct_debit/reports/sepa_direct_debit_mandate.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + diff --git a/account_banking_sepa_direct_debit/static/description/icon.png b/account_banking_sepa_direct_debit/static/description/icon.png new file mode 100644 index 000000000..dca4d23f2 Binary files /dev/null and b/account_banking_sepa_direct_debit/static/description/icon.png differ diff --git a/account_banking_sepa_direct_debit/static/description/icon.svg b/account_banking_sepa_direct_debit/static/description/icon.svg new file mode 100644 index 000000000..c3bc242a4 --- /dev/null +++ b/account_banking_sepa_direct_debit/static/description/icon.svg @@ -0,0 +1,92 @@ + + + +image/svg+xmlDIRECTDEBIT + \ No newline at end of file diff --git a/account_banking_sepa_direct_debit/tests/__init__.py b/account_banking_sepa_direct_debit/tests/__init__.py new file mode 100644 index 000000000..6d038500f --- /dev/null +++ b/account_banking_sepa_direct_debit/tests/__init__.py @@ -0,0 +1,4 @@ +# -*- coding: utf-8 -*- + +from . import test_sdd +from . import test_mandate diff --git a/account_banking_sepa_direct_debit/tests/test_mandate.py b/account_banking_sepa_direct_debit/tests/test_mandate.py new file mode 100644 index 000000000..3ff0b57e8 --- /dev/null +++ b/account_banking_sepa_direct_debit/tests/test_mandate.py @@ -0,0 +1,47 @@ +# -*- coding: utf-8 -*- +# © 2016 Akretion (Alexis de Lattre ) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo.tests.common import TransactionCase +from odoo.exceptions import ValidationError +from datetime import datetime +from dateutil.relativedelta import relativedelta + + +class TestMandate(TransactionCase): + def test_contrains(self): + with self.assertRaises(ValidationError): + self.mandate.recurrent_sequence_type = False + self.mandate.type = 'recurrent' + self.mandate._check_recurring_type() + + def test_onchange_bank(self): + self.mandate.write({ + 'type': 'recurrent', 'recurrent_sequence_type': 'recurring' + }) + self.mandate.validate() + self.mandate.partner_bank_id = self.env.ref( + 'account_payment_mode.res_partner_2_iban' + ) + self.mandate.mandate_partner_bank_change() + self.assertEqual(self.mandate.recurrent_sequence_type, 'first') + + def test_expire(self): + self.mandate.signature_date = datetime.now() + relativedelta( + months=-50) + self.mandate.validate() + self.assertEqual(self.mandate.state, 'valid') + self.env['account.banking.mandate']._sdd_mandate_set_state_to_expired() + self.assertEqual(self.mandate.state, 'expired') + + def setUp(self): + res = super(TestMandate, self).setUp() + self.partner = self.env.ref('base.res_partner_12') + bank_account = self.env.ref('account_payment_mode.res_partner_12_iban') + self.mandate = self.env['account.banking.mandate'].create({ + 'partner_bank_id': bank_account.id, + 'format': 'sepa', + 'type': 'oneoff', + 'signature_date': '2015-01-01', + }) + return res diff --git a/account_banking_sepa_direct_debit/tests/test_sdd.py b/account_banking_sepa_direct_debit/tests/test_sdd.py new file mode 100644 index 000000000..92c324a9f --- /dev/null +++ b/account_banking_sepa_direct_debit/tests/test_sdd.py @@ -0,0 +1,194 @@ +# -*- coding: utf-8 -*- +# © 2016 Akretion (Alexis de Lattre ) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +import base64 +from odoo.addons.account.tests.account_test_classes import AccountingTestCase +from odoo.tools import float_compare +import time +from lxml import etree + + +class TestSDD(AccountingTestCase): + + def setUp(self): + super(TestSDD, self).setUp() + self.company = self.env['res.company'] + self.account_model = self.env['account.account'] + self.move_model = self.env['account.move'] + self.journal_model = self.env['account.journal'] + self.payment_order_model = self.env['account.payment.order'] + self.payment_line_model = self.env['account.payment.line'] + self.mandate_model = self.env['account.banking.mandate'] + self.bank_line_model = self.env['bank.payment.line'] + self.partner_bank_model = self.env['res.partner.bank'] + self.attachment_model = self.env['ir.attachment'] + self.invoice_model = self.env['account.invoice'] + self.invoice_line_model = self.env['account.invoice.line'] + company = self.env.ref('base.main_company') + self.partner_agrolait = self.env.ref('base.res_partner_2') + self.partner_c2c = self.env.ref('base.res_partner_12') + self.account_revenue = self.account_model.search([( + 'user_type_id', + '=', + self.env.ref('account.data_account_type_revenue').id)], limit=1) + self.account_receivable = self.account_model.search([( + 'user_type_id', + '=', + self.env.ref('account.data_account_type_receivable').id)], limit=1) + # create journal + self.bank_journal = self.journal_model.create({ + 'name': 'Company Bank journal', + 'type': 'bank', + 'code': 'BNKFC', + 'bank_account_id': + self.env.ref('account_payment_mode.main_company_iban').id, + 'bank_id': + self.env.ref('account_payment_mode.bank_la_banque_postale').id, + }) + # update payment mode + self.payment_mode = self.env.ref( + 'account_banking_sepa_direct_debit.' + 'payment_mode_inbound_sepa_dd1') + self.payment_mode.write({ + 'bank_account_link': 'fixed', + 'fixed_journal_id': self.bank_journal.id, + }) + self.eur_currency_id = self.env.ref('base.EUR').id + company.currency_id = self.eur_currency_id + # Trigger the recompute of account type on res.partner.bank + for bank_acc in self.partner_bank_model.search([]): + bank_acc.acc_number = bank_acc.acc_number + + def test_pain_001_02(self): + self.payment_mode.payment_method_id.pain_version = 'pain.008.001.02' + self.check_sdd() + + def test_pain_003_02(self): + self.payment_mode.payment_method_id.pain_version = 'pain.008.003.02' + self.check_sdd() + + def test_pain_001_03(self): + self.payment_mode.payment_method_id.pain_version = 'pain.008.001.03' + self.check_sdd() + + def test_pain_001_04(self): + self.payment_mode.payment_method_id.pain_version = 'pain.008.001.04' + self.check_sdd() + + def check_sdd(self): + self.env.ref( + 'account_banking_sepa_direct_debit.res_partner_2_mandate' + ).recurrent_sequence_type = 'first' + invoice1 = self.create_invoice( + self.partner_agrolait.id, + 'account_banking_sepa_direct_debit.res_partner_2_mandate', 42.0) + self.env.ref( + 'account_banking_sepa_direct_debit.res_partner_12_mandate' + ).type = 'oneoff' + invoice2 = self.create_invoice( + self.partner_c2c.id, + 'account_banking_sepa_direct_debit.res_partner_12_mandate', 11.0) + for inv in [invoice1, invoice2]: + action = inv.create_account_payment_line() + self.assertEqual(action['res_model'], 'account.payment.order') + payment_order = self.payment_order_model.browse(action['res_id']) + self.assertEqual( + payment_order.payment_type, 'inbound') + self.assertEqual( + payment_order.payment_mode_id, self.payment_mode) + self.assertEqual( + payment_order.journal_id, self.bank_journal) + # Check payment line + pay_lines = self.payment_line_model.search([ + ('partner_id', '=', self.partner_agrolait.id), + ('order_id', '=', payment_order.id)]) + self.assertEqual(len(pay_lines), 1) + agrolait_pay_line1 = pay_lines[0] + accpre = self.env['decimal.precision'].precision_get('Account') + self.assertEqual( + agrolait_pay_line1.currency_id.id, self.eur_currency_id) + self.assertEqual( + agrolait_pay_line1.mandate_id, invoice1.mandate_id) + self.assertEqual( + agrolait_pay_line1.partner_bank_id, + invoice1.mandate_id.partner_bank_id) + self.assertEqual(float_compare( + agrolait_pay_line1.amount_currency, 42, precision_digits=accpre), + 0) + self.assertEqual(agrolait_pay_line1.communication_type, 'normal') + self.assertEqual(agrolait_pay_line1.communication, invoice1.number) + payment_order.draft2open() + self.assertEqual(payment_order.state, 'open') + self.assertEqual(payment_order.sepa, True) + # Check bank payment line + bank_lines = self.bank_line_model.search([ + ('partner_id', '=', self.partner_agrolait.id)]) + self.assertEqual(len(bank_lines), 1) + agrolait_bank_line = bank_lines[0] + self.assertEqual( + agrolait_bank_line.currency_id.id, self.eur_currency_id) + self.assertEqual(float_compare( + agrolait_bank_line.amount_currency, 42.0, precision_digits=accpre), + 0) + self.assertEqual(agrolait_bank_line.communication_type, 'normal') + self.assertEqual( + agrolait_bank_line.communication, invoice1.number) + self.assertEqual( + agrolait_bank_line.mandate_id, invoice1.mandate_id) + self.assertEqual( + agrolait_bank_line.partner_bank_id, + invoice1.mandate_id.partner_bank_id) + action = payment_order.open2generated() + self.assertEqual(payment_order.state, 'generated') + self.assertEqual(action['res_model'], 'ir.attachment') + attachment = self.attachment_model.browse(action['res_id']) + self.assertEqual(attachment.datas_fname[-4:], '.xml') + xml_file = base64.b64decode(attachment.datas) + xml_root = etree.fromstring(xml_file) + # print "xml_file=", etree.tostring(xml_root, pretty_print=True) + namespaces = xml_root.nsmap + namespaces['p'] = xml_root.nsmap[None] + namespaces.pop(None) + pay_method_xpath = xml_root.xpath( + '//p:PmtInf/p:PmtMtd', namespaces=namespaces) + self.assertEqual(pay_method_xpath[0].text, 'DD') + sepa_xpath = xml_root.xpath( + '//p:PmtInf/p:PmtTpInf/p:SvcLvl/p:Cd', namespaces=namespaces) + self.assertEqual(sepa_xpath[0].text, 'SEPA') + debtor_acc_xpath = xml_root.xpath( + '//p:PmtInf/p:CdtrAcct/p:Id/p:IBAN', namespaces=namespaces) + self.assertEqual( + debtor_acc_xpath[0].text, + payment_order.company_partner_bank_id.sanitized_acc_number) + payment_order.generated2uploaded() + self.assertEqual(payment_order.state, 'uploaded') + for inv in [invoice1, invoice2]: + self.assertEqual(inv.state, 'paid') + self.assertEqual(self.env.ref( + 'account_banking_sepa_direct_debit.res_partner_2_mandate'). + recurrent_sequence_type, 'recurring') + return + + def create_invoice( + self, partner_id, mandate_xmlid, price_unit, type='out_invoice'): + invoice = self.invoice_model.create({ + 'partner_id': partner_id, + 'reference_type': 'none', + 'currency_id': self.env.ref('base.EUR').id, + 'name': 'test', + 'account_id': self.account_receivable.id, + 'type': type, + 'date_invoice': time.strftime('%Y-%m-%d'), + 'payment_mode_id': self.payment_mode.id, + 'mandate_id': self.env.ref(mandate_xmlid).id, + }) + self.invoice_line_model.create({ + 'invoice_id': invoice.id, + 'price_unit': price_unit, + 'quantity': 1, + 'name': 'Great service', + 'account_id': self.account_revenue.id, + }) + invoice.action_invoice_open() + return invoice diff --git a/account_banking_sepa_direct_debit/views/account_banking_mandate_view.xml b/account_banking_sepa_direct_debit/views/account_banking_mandate_view.xml new file mode 100644 index 000000000..78c4285b3 --- /dev/null +++ b/account_banking_sepa_direct_debit/views/account_banking_mandate_view.xml @@ -0,0 +1,64 @@ + + + + + + + + sdd.mandate.form + account.banking.mandate + + + + + + + + + + + + sdd.mandate.tree + account.banking.mandate + + + + + + + + + + + + sdd.mandate.search + account.banking.mandate + + + + + + + + + + + + + + + + diff --git a/account_banking_sepa_direct_debit/views/account_payment_mode.xml b/account_banking_sepa_direct_debit/views/account_payment_mode.xml new file mode 100644 index 000000000..498ae7c6c --- /dev/null +++ b/account_banking_sepa_direct_debit/views/account_payment_mode.xml @@ -0,0 +1,20 @@ + + + + + + + Add SEPA identifiers on payment mode form + account.payment.mode + + + + + + + + + + diff --git a/account_banking_sepa_direct_debit/views/report_sepa_direct_debit_mandate.xml b/account_banking_sepa_direct_debit/views/report_sepa_direct_debit_mandate.xml new file mode 100644 index 000000000..6e750e330 --- /dev/null +++ b/account_banking_sepa_direct_debit/views/report_sepa_direct_debit_mandate.xml @@ -0,0 +1,279 @@ + + + + + + + + diff --git a/account_banking_sepa_direct_debit/views/res_config.xml b/account_banking_sepa_direct_debit/views/res_config.xml new file mode 100644 index 000000000..1a297a5f3 --- /dev/null +++ b/account_banking_sepa_direct_debit/views/res_config.xml @@ -0,0 +1,24 @@ + + + + + + sepa_direct_debit.account_config_settings.form + + res.config.settings + + + +
+
+
+
+
+ + +
diff --git a/setup/account_banking_sepa_direct_debit/odoo/__init__.py b/setup/account_banking_sepa_direct_debit/odoo/__init__.py new file mode 100644 index 000000000..de40ea7ca --- /dev/null +++ b/setup/account_banking_sepa_direct_debit/odoo/__init__.py @@ -0,0 +1 @@ +__import__('pkg_resources').declare_namespace(__name__) diff --git a/setup/account_banking_sepa_direct_debit/odoo/addons/__init__.py b/setup/account_banking_sepa_direct_debit/odoo/addons/__init__.py new file mode 100644 index 000000000..de40ea7ca --- /dev/null +++ b/setup/account_banking_sepa_direct_debit/odoo/addons/__init__.py @@ -0,0 +1 @@ +__import__('pkg_resources').declare_namespace(__name__) diff --git a/setup/account_banking_sepa_direct_debit/odoo/addons/account_banking_sepa_direct_debit b/setup/account_banking_sepa_direct_debit/odoo/addons/account_banking_sepa_direct_debit new file mode 120000 index 000000000..48dd50874 --- /dev/null +++ b/setup/account_banking_sepa_direct_debit/odoo/addons/account_banking_sepa_direct_debit @@ -0,0 +1 @@ +../../../../account_banking_sepa_direct_debit \ No newline at end of file diff --git a/setup/account_banking_sepa_direct_debit/setup.py b/setup/account_banking_sepa_direct_debit/setup.py new file mode 100644 index 000000000..999b290c8 --- /dev/null +++ b/setup/account_banking_sepa_direct_debit/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +) \ No newline at end of file