From 1f59191b1c96def2de60c72f7991fac1301b13ce Mon Sep 17 00:00:00 2001
From: Alexis de Lattre
Date: Wed, 18 Nov 2020 00:37:47 +0100
Subject: [PATCH 01/17] [MIG] account_statement_import_ofx to v14
Rename module to account_statement_import_ofx
Add support for multi-account OFX files
---
account_statement_import_ofx/README.rst | 94 ++++
account_statement_import_ofx/__init__.py | 2 +
account_statement_import_ofx/__manifest__.py | 18 +
.../account_bank_statement_import_ofx.pot | 38 ++
.../i18n/account_statement_import_ofx.pot | 56 +++
account_statement_import_ofx/i18n/de.po | 66 +++
account_statement_import_ofx/i18n/es.po | 62 +++
account_statement_import_ofx/i18n/fi.po | 62 +++
account_statement_import_ofx/i18n/fr.po | 66 +++
account_statement_import_ofx/i18n/fr_CH.po | 63 +++
account_statement_import_ofx/i18n/gl.po | 62 +++
account_statement_import_ofx/i18n/lt_LT.po | 67 +++
account_statement_import_ofx/i18n/nb_NO.po | 63 +++
account_statement_import_ofx/i18n/nl.po | 66 +++
account_statement_import_ofx/i18n/pt_BR.po | 68 +++
account_statement_import_ofx/i18n/pt_PT.po | 63 +++
account_statement_import_ofx/i18n/sl.po | 66 +++
.../models/__init__.py | 1 +
.../models/account_journal.py | 11 +
.../readme/CONTRIBUTORS.rst | 7 +
.../readme/DESCRIPTION.rst | 6 +
.../readme/INSTALL.rst | 1 +
.../static/description/icon.png | Bin 0 -> 6282 bytes
.../static/description/index.html | 438 ++++++++++++++++++
.../tests/__init__.py | 1 +
.../tests/test_import_bank_statement.py | 110 +++++
.../tests/test_ofx_file/test_ofx.ofx | 100 ++++
.../tests/test_ofx_file/test_ofx_iban.ofx | 101 ++++
.../tests/test_ofx_file/test_ofx_wrong.ofx | 100 ++++
.../views/account_statement_import.xml | 15 +
.../wizard/__init__.py | 1 +
.../wizard/account_statement_import.py | 88 ++++
32 files changed, 1962 insertions(+)
create mode 100644 account_statement_import_ofx/README.rst
create mode 100644 account_statement_import_ofx/__init__.py
create mode 100644 account_statement_import_ofx/__manifest__.py
create mode 100644 account_statement_import_ofx/i18n/account_bank_statement_import_ofx.pot
create mode 100644 account_statement_import_ofx/i18n/account_statement_import_ofx.pot
create mode 100644 account_statement_import_ofx/i18n/de.po
create mode 100644 account_statement_import_ofx/i18n/es.po
create mode 100644 account_statement_import_ofx/i18n/fi.po
create mode 100644 account_statement_import_ofx/i18n/fr.po
create mode 100644 account_statement_import_ofx/i18n/fr_CH.po
create mode 100644 account_statement_import_ofx/i18n/gl.po
create mode 100644 account_statement_import_ofx/i18n/lt_LT.po
create mode 100644 account_statement_import_ofx/i18n/nb_NO.po
create mode 100644 account_statement_import_ofx/i18n/nl.po
create mode 100644 account_statement_import_ofx/i18n/pt_BR.po
create mode 100644 account_statement_import_ofx/i18n/pt_PT.po
create mode 100644 account_statement_import_ofx/i18n/sl.po
create mode 100644 account_statement_import_ofx/models/__init__.py
create mode 100644 account_statement_import_ofx/models/account_journal.py
create mode 100644 account_statement_import_ofx/readme/CONTRIBUTORS.rst
create mode 100644 account_statement_import_ofx/readme/DESCRIPTION.rst
create mode 100644 account_statement_import_ofx/readme/INSTALL.rst
create mode 100644 account_statement_import_ofx/static/description/icon.png
create mode 100644 account_statement_import_ofx/static/description/index.html
create mode 100644 account_statement_import_ofx/tests/__init__.py
create mode 100644 account_statement_import_ofx/tests/test_import_bank_statement.py
create mode 100644 account_statement_import_ofx/tests/test_ofx_file/test_ofx.ofx
create mode 100644 account_statement_import_ofx/tests/test_ofx_file/test_ofx_iban.ofx
create mode 100644 account_statement_import_ofx/tests/test_ofx_file/test_ofx_wrong.ofx
create mode 100644 account_statement_import_ofx/views/account_statement_import.xml
create mode 100644 account_statement_import_ofx/wizard/__init__.py
create mode 100644 account_statement_import_ofx/wizard/account_statement_import.py
diff --git a/account_statement_import_ofx/README.rst b/account_statement_import_ofx/README.rst
new file mode 100644
index 0000000000..fde571694c
--- /dev/null
+++ b/account_statement_import_ofx/README.rst
@@ -0,0 +1,94 @@
+=========================
+Import OFX Bank Statement
+=========================
+
+.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ !! This file is generated by oca-gen-addon-readme !!
+ !! changes will be overwritten. !!
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
+ :target: https://odoo-community.org/page/development-status
+ :alt: Beta
+.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
+ :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
+ :alt: License: AGPL-3
+.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fbank--statement--import-lightgray.png?logo=github
+ :target: https://github.com/OCA/bank-statement-import/tree/14.0/account_statement_import_ofx
+ :alt: OCA/bank-statement-import
+.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
+ :target: https://translation.odoo-community.org/projects/bank-statement-import-14-0/bank-statement-import-14-0-account_statement_import_ofx
+ :alt: Translate me on Weblate
+.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
+ :target: https://runbot.odoo-community.org/runbot/174/14.0
+ :alt: Try me on Runbot
+
+|badge1| |badge2| |badge3| |badge4| |badge5|
+
+This module adds support for the import of bank statements in `OFX format `_.
+
+Bank Statements may be generated containing a subset of the OFX information (only those transaction lines that are required for the
+creation of the Financial Accounting records).
+
+Since v14, this module support multi-account OFX files i.e. several different bank accounts in the same OFX file.
+
+**Table of contents**
+
+.. contents::
+ :local:
+
+Installation
+============
+
+This module requires the `ofxparse `_ python lib.
+
+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 `_.
+
+Do not contact contributors directly about support or help with technical issues.
+
+Credits
+=======
+
+Authors
+~~~~~~~
+
+* Odoo SA
+* Akretion
+* La Louve
+* GRAP
+* Nicolas JEUDY
+* Le Filament
+
+Contributors
+~~~~~~~~~~~~
+
+* Odoo SA
+* Alexis de Lattre
+* Laurent Mignon
+* Ronald Portier
+* Sylvain LE GAL
+* Nicolas JEUDY
+* Le Filament
+
+Maintainers
+~~~~~~~~~~~
+
+This module is maintained by the OCA.
+
+.. image:: https://odoo-community.org/logo.png
+ :alt: Odoo Community Association
+ :target: https://odoo-community.org
+
+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.
+
+This module is part of the `OCA/bank-statement-import `_ project on GitHub.
+
+You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/account_statement_import_ofx/__init__.py b/account_statement_import_ofx/__init__.py
new file mode 100644
index 0000000000..9b4296142f
--- /dev/null
+++ b/account_statement_import_ofx/__init__.py
@@ -0,0 +1,2 @@
+from . import models
+from . import wizard
diff --git a/account_statement_import_ofx/__manifest__.py b/account_statement_import_ofx/__manifest__.py
new file mode 100644
index 0000000000..5d34944f88
--- /dev/null
+++ b/account_statement_import_ofx/__manifest__.py
@@ -0,0 +1,18 @@
+{
+ "name": "Import OFX Bank Statement",
+ "category": "Banking addons",
+ "version": "14.0.1.0.0",
+ "license": "AGPL-3",
+ "author": "Odoo SA,"
+ "Akretion,"
+ "La Louve,"
+ "GRAP,"
+ "Nicolas JEUDY,"
+ "Le Filament,"
+ "Odoo Community Association (OCA)",
+ "website": "https://github.com/OCA/bank-statement-import",
+ "depends": ["account_statement_import"],
+ "data": ["views/account_statement_import.xml"],
+ "external_dependencies": {"python": ["ofxparse"]},
+ "installable": True,
+}
diff --git a/account_statement_import_ofx/i18n/account_bank_statement_import_ofx.pot b/account_statement_import_ofx/i18n/account_bank_statement_import_ofx.pot
new file mode 100644
index 0000000000..8f4b849a76
--- /dev/null
+++ b/account_statement_import_ofx/i18n/account_bank_statement_import_ofx.pot
@@ -0,0 +1,38 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 12.0\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: <>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: \n"
+
+#. module: account_bank_statement_import_ofx
+#: model:ir.model,name:account_bank_statement_import_ofx.model_account_bank_statement_import
+msgid "Import Bank Statement"
+msgstr ""
+
+#. module: account_bank_statement_import_ofx
+#: model:ir.model,name:account_bank_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_bank_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_bank_statement_import_ofx.view_account_bank_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr ""
+
+#. module: account_bank_statement_import_ofx
+#: code:addons/account_bank_statement_import_ofx/wizard/account_bank_statement_import.py:85
+#, python-format
+msgid "The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
+
diff --git a/account_statement_import_ofx/i18n/account_statement_import_ofx.pot b/account_statement_import_ofx/i18n/account_statement_import_ofx.pot
new file mode 100644
index 0000000000..17a7be59f4
--- /dev/null
+++ b/account_statement_import_ofx/i18n/account_statement_import_ofx.pot
@@ -0,0 +1,56 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_statement_import_ofx
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 14.0\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: \n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+msgid "Import Bank Statement Files"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
diff --git a/account_statement_import_ofx/i18n/de.po b/account_statement_import_ofx/i18n/de.po
new file mode 100644
index 0000000000..e246e94beb
--- /dev/null
+++ b/account_statement_import_ofx/i18n/de.po
@@ -0,0 +1,66 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+# Translators:
+# OCA Transbot , 2017
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 10.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-04-11 21:55+0000\n"
+"PO-Revision-Date: 2017-04-11 21:55+0000\n"
+"Last-Translator: OCA Transbot , 2017\n"
+"Language-Team: German (https://www.transifex.com/oca/teams/23907/de/)\n"
+"Language: de\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+#, fuzzy
+msgid "Import Bank Statement Files"
+msgstr "Kontoauszug importieren"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr "Open Financial Exchange (.OFX Money)"
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
+"Das folgende Problem ist beim Importieren aufgetreten. Die Datei ist dürfte "
+"ungültig sein.\n"
+"\n"
+"%s"
diff --git a/account_statement_import_ofx/i18n/es.po b/account_statement_import_ofx/i18n/es.po
new file mode 100644
index 0000000000..2b42744424
--- /dev/null
+++ b/account_statement_import_ofx/i18n/es.po
@@ -0,0 +1,62 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: bank-statement-import (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2015-07-24 21:51+0000\n"
+"PO-Revision-Date: 2015-05-29 00:50+0000\n"
+"Last-Translator: OCA Transbot \n"
+"Language-Team: Spanish (http://www.transifex.com/oca/OCA-bank-statement-"
+"import-8-0/language/es/)\n"
+"Language: es\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+#, fuzzy
+msgid "Import Bank Statement Files"
+msgstr "Importar extracto bancario"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
diff --git a/account_statement_import_ofx/i18n/fi.po b/account_statement_import_ofx/i18n/fi.po
new file mode 100644
index 0000000000..24986d3a80
--- /dev/null
+++ b/account_statement_import_ofx/i18n/fi.po
@@ -0,0 +1,62 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+# Translators:
+# OCA Transbot , 2017
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 10.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-03-19 03:39+0000\n"
+"PO-Revision-Date: 2017-03-19 03:39+0000\n"
+"Last-Translator: OCA Transbot , 2017\n"
+"Language-Team: Finnish (https://www.transifex.com/oca/teams/23907/fi/)\n"
+"Language: fi\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+#, fuzzy
+msgid "Import Bank Statement Files"
+msgstr "Tuo pankkiaineisto"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
diff --git a/account_statement_import_ofx/i18n/fr.po b/account_statement_import_ofx/i18n/fr.po
new file mode 100644
index 0000000000..b0feff1254
--- /dev/null
+++ b/account_statement_import_ofx/i18n/fr.po
@@ -0,0 +1,66 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+# Translators:
+# OCA Transbot , 2016
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 10.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-04-11 21:55+0000\n"
+"PO-Revision-Date: 2017-04-11 21:55+0000\n"
+"Last-Translator: OCA Transbot , 2016\n"
+"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n"
+"Language: fr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+#, fuzzy
+msgid "Import Bank Statement Files"
+msgstr "Importer Relevé Bancaire"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr "Open Financial Exchange (.OFX Money)"
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
+"Le problème suivant est survenu lors de l'importation. Le fichier n'est pas "
+"valide.\n"
+"\n"
+"%s"
diff --git a/account_statement_import_ofx/i18n/fr_CH.po b/account_statement_import_ofx/i18n/fr_CH.po
new file mode 100644
index 0000000000..6fe7ea38a8
--- /dev/null
+++ b/account_statement_import_ofx/i18n/fr_CH.po
@@ -0,0 +1,63 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+# Translators:
+# OCA Transbot , 2017
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 10.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-03-19 03:39+0000\n"
+"PO-Revision-Date: 2017-03-19 03:39+0000\n"
+"Last-Translator: OCA Transbot , 2017\n"
+"Language-Team: French (Switzerland) (https://www.transifex.com/oca/"
+"teams/23907/fr_CH/)\n"
+"Language: fr_CH\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+#, fuzzy
+msgid "Import Bank Statement Files"
+msgstr "Importer Relevé"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
diff --git a/account_statement_import_ofx/i18n/gl.po b/account_statement_import_ofx/i18n/gl.po
new file mode 100644
index 0000000000..6e580bf94a
--- /dev/null
+++ b/account_statement_import_ofx/i18n/gl.po
@@ -0,0 +1,62 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+# Translators:
+# OCA Transbot , 2017
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 10.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-03-19 03:39+0000\n"
+"PO-Revision-Date: 2017-03-19 03:39+0000\n"
+"Last-Translator: OCA Transbot , 2017\n"
+"Language-Team: Galician (https://www.transifex.com/oca/teams/23907/gl/)\n"
+"Language: gl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+#, fuzzy
+msgid "Import Bank Statement Files"
+msgstr "Importar extracto bancario"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
diff --git a/account_statement_import_ofx/i18n/lt_LT.po b/account_statement_import_ofx/i18n/lt_LT.po
new file mode 100644
index 0000000000..cc341fcef3
--- /dev/null
+++ b/account_statement_import_ofx/i18n/lt_LT.po
@@ -0,0 +1,67 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+# Translators:
+# OCA Transbot , 2016
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 10.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-04-11 21:55+0000\n"
+"PO-Revision-Date: 2017-04-11 21:55+0000\n"
+"Last-Translator: OCA Transbot , 2016\n"
+"Language-Team: Lithuanian (Lithuania) (https://www.transifex.com/oca/"
+"teams/23907/lt_LT/)\n"
+"Language: lt_LT\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n"
+"%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+#, fuzzy
+msgid "Import Bank Statement Files"
+msgstr "Importuoti banko išrašą"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
+"Klaida. Failas gali būti sugadintas arba negaliojantis.\n"
+"\n"
+" %s"
diff --git a/account_statement_import_ofx/i18n/nb_NO.po b/account_statement_import_ofx/i18n/nb_NO.po
new file mode 100644
index 0000000000..ac678a8ef7
--- /dev/null
+++ b/account_statement_import_ofx/i18n/nb_NO.po
@@ -0,0 +1,63 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+# Translators:
+# OCA Transbot , 2017
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 10.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-03-19 03:39+0000\n"
+"PO-Revision-Date: 2017-03-19 03:39+0000\n"
+"Last-Translator: OCA Transbot , 2017\n"
+"Language-Team: Norwegian Bokmål (Norway) (https://www.transifex.com/oca/"
+"teams/23907/nb_NO/)\n"
+"Language: nb_NO\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+#, fuzzy
+msgid "Import Bank Statement Files"
+msgstr "Importer bankutsagn"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
diff --git a/account_statement_import_ofx/i18n/nl.po b/account_statement_import_ofx/i18n/nl.po
new file mode 100644
index 0000000000..3c339a5db2
--- /dev/null
+++ b/account_statement_import_ofx/i18n/nl.po
@@ -0,0 +1,66 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+# Translators:
+# OCA Transbot , 2016
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 10.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-04-11 21:55+0000\n"
+"PO-Revision-Date: 2017-04-11 21:55+0000\n"
+"Last-Translator: OCA Transbot , 2016\n"
+"Language-Team: Dutch (https://www.transifex.com/oca/teams/23907/nl/)\n"
+"Language: nl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+#, fuzzy
+msgid "Import Bank Statement Files"
+msgstr "Importeer bankafschrift"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
+"Het volgende probleem is opgetreden tijdens de import. Het bestand is "
+"waarschijnlijk niet juist.\n"
+"\n"
+"%s"
diff --git a/account_statement_import_ofx/i18n/pt_BR.po b/account_statement_import_ofx/i18n/pt_BR.po
new file mode 100644
index 0000000000..83532de156
--- /dev/null
+++ b/account_statement_import_ofx/i18n/pt_BR.po
@@ -0,0 +1,68 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+# Translators:
+# OCA Transbot , 2017
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 10.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-11-21 01:42+0000\n"
+"PO-Revision-Date: 2019-08-26 15:01+0000\n"
+"Last-Translator: Rodrigo Macedo \n"
+"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/"
+"teams/23907/pt_BR/)\n"
+"Language: pt_BR\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 3.8\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+#, fuzzy
+msgid "Import Bank Statement Files"
+msgstr "Importar Extrato Bancário"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr "Troca Financeira Aberta (.OFX Money)"
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
+"O seguinte problema ocorreu durante a importação. O arquivo não deve ser "
+"válido.\n"
+"\n"
+"%s"
diff --git a/account_statement_import_ofx/i18n/pt_PT.po b/account_statement_import_ofx/i18n/pt_PT.po
new file mode 100644
index 0000000000..4f4e18ce0c
--- /dev/null
+++ b/account_statement_import_ofx/i18n/pt_PT.po
@@ -0,0 +1,63 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+# Translators:
+# OCA Transbot , 2017
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 10.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-03-19 03:39+0000\n"
+"PO-Revision-Date: 2017-03-19 03:39+0000\n"
+"Last-Translator: OCA Transbot , 2017\n"
+"Language-Team: Portuguese (Portugal) (https://www.transifex.com/oca/"
+"teams/23907/pt_PT/)\n"
+"Language: pt_PT\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+#, fuzzy
+msgid "Import Bank Statement Files"
+msgstr "Importar Extrato Bancário"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
diff --git a/account_statement_import_ofx/i18n/sl.po b/account_statement_import_ofx/i18n/sl.po
new file mode 100644
index 0000000000..e2deebbde1
--- /dev/null
+++ b/account_statement_import_ofx/i18n/sl.po
@@ -0,0 +1,66 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_bank_statement_import_ofx
+#
+# Translators:
+# OCA Transbot , 2016
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 10.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-04-11 21:55+0000\n"
+"PO-Revision-Date: 2017-04-11 21:55+0000\n"
+"Last-Translator: OCA Transbot , 2016\n"
+"Language-Team: Slovenian (https://www.transifex.com/oca/teams/23907/sl/)\n"
+"Language: sl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \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_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+#, fuzzy
+msgid "Import Bank Statement Files"
+msgstr "Uvoz bančnega izpiska"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
+"Med uvozom je prišlo do težav. Datoteka ni veljavna.\n"
+"\n"
+" %s"
diff --git a/account_statement_import_ofx/models/__init__.py b/account_statement_import_ofx/models/__init__.py
new file mode 100644
index 0000000000..2388e11968
--- /dev/null
+++ b/account_statement_import_ofx/models/__init__.py
@@ -0,0 +1 @@
+from . import account_journal
diff --git a/account_statement_import_ofx/models/account_journal.py b/account_statement_import_ofx/models/account_journal.py
new file mode 100644
index 0000000000..efbb0b8643
--- /dev/null
+++ b/account_statement_import_ofx/models/account_journal.py
@@ -0,0 +1,11 @@
+from odoo import models
+
+
+class AccountJournal(models.Model):
+ _inherit = "account.journal"
+
+ def _get_bank_statements_available_import_formats(self):
+ """Adds ofx to supported import formats."""
+ rslt = super()._get_bank_statements_available_import_formats()
+ rslt.append("ofx")
+ return rslt
diff --git a/account_statement_import_ofx/readme/CONTRIBUTORS.rst b/account_statement_import_ofx/readme/CONTRIBUTORS.rst
new file mode 100644
index 0000000000..06df395303
--- /dev/null
+++ b/account_statement_import_ofx/readme/CONTRIBUTORS.rst
@@ -0,0 +1,7 @@
+* Odoo SA
+* Alexis de Lattre
+* Laurent Mignon
+* Ronald Portier
+* Sylvain LE GAL
+* Nicolas JEUDY
+* Le Filament
diff --git a/account_statement_import_ofx/readme/DESCRIPTION.rst b/account_statement_import_ofx/readme/DESCRIPTION.rst
new file mode 100644
index 0000000000..8b68e4c8a9
--- /dev/null
+++ b/account_statement_import_ofx/readme/DESCRIPTION.rst
@@ -0,0 +1,6 @@
+This module adds support for the import of bank statements in `OFX format `_.
+
+Bank Statements may be generated containing a subset of the OFX information (only those transaction lines that are required for the
+creation of the Financial Accounting records).
+
+Since v14, this module support multi-account OFX files i.e. several different bank accounts in the same OFX file.
diff --git a/account_statement_import_ofx/readme/INSTALL.rst b/account_statement_import_ofx/readme/INSTALL.rst
new file mode 100644
index 0000000000..39c872345c
--- /dev/null
+++ b/account_statement_import_ofx/readme/INSTALL.rst
@@ -0,0 +1 @@
+This module requires the `ofxparse `_ python lib.
diff --git a/account_statement_import_ofx/static/description/icon.png b/account_statement_import_ofx/static/description/icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..c630877c1c5f76912c1e9197d3e688eb2f0e65d4
GIT binary patch
literal 6282
zcma)BXHXMLv`(S-AiV_wN|B-@Aiac8yr=|hfJ!%nOAEbAD4}T}u|a6kRFEn`kRC+^
zF+flRK_E1x2Lur@0+0Luy_vT&=bYIyJNskjJMG&{^aWc%J{dj$03dkQ4&`)Y@&5@A
z*OBfq^ZamRIKq%;FYz3$cpjgOqdhOq&Ls>0fVBK4zZQB2;Y&y;tGP==RfZq5iDxSwUT$_Da{#MTZEc(e7l}#@?XeMoW=D>q7FDHP!2kqGbq~
z$AY2^!Ry+>05`KyfPT45zsoTqlEr{9%#b$_0wz2ajsUQF?n7E?T4*j
zhxFEHaCH93IDZEYs=F*Fa2b$)32js`!n$6eh
zi83+*3Iinz#ut+yG$zR-2+)PatWNEJwQ%={t7I>u4?PLUFuYbJwE$dz_nzDr_mE^j
zf9uNZ-zIzDZMGrH;;rm|J%l$8X;{RyJ2vug5$7Pxd{Tmi;HJd*#zrIh31@@h{kUTW
ze7tsF(LscEcOV^f0(9o{J_HfyY?VeR7}u+4!p~3bf99(GdkRk(utc(x+aFz8_ztjU
zfao53;biFmI!H3cnQ|hdc-viWPzSBJ~|0bicTDAH6hlJ9AR*V
z@!wHy=QY;G=T%E_2;oFhZ%O)BkZH%KBy(V|vX_A*xra!j;|9ZL_%V^*YG(lCp2r!o
z0vuNWojvr^qS4UbfCeVLjz0V(J0tF|JNBzDWFz`aQ`o6Fh_WU!|=*X+*+R7_ib(
z=6%o%NTttVZ2gBAlpuk(wva@8Gy>|ex_anWKxszdT3%yQXxnM7c&X>V4W7N;^`mK^
zUMR#j2U%fnz=_9YZcNS)(AiS&Y1-whsKP-_>-D=O`L42%kH
z5XK44%)(0)79DOEK@+B}S6u%5xM9I;+UE9E%Uy@7M7pUW_^rDG!EL>_4zEwNUL@a`
zzisi=Xp&ioJD5w0XQhw$62t%%?NL^r5_J&&w1YpF{w=|+Nj075g>DHU^jdgsvOx|N
z4=9rDkq#cw6B{|H-am$-5kI`QSfDs
z|ZAc0u%&x
zTLcVV(VLZw!L(tQN6yOSr$=Z-*n#P+(GB?}rDm>T)WoYG)KAzN03+utxXS1$%#ZwQ
zW!I-qGJiTQvSNJldW$(u8+YTk*6T5m);lgFn1cF61@ZPJXi
zv!=WYOuo9{#A3Pfc*AY%X{$8*S+*Bq;)Jqj#HEQCoi=t?lec(Z+pZ|iYVD;m_lJJ;
z?u+M4ZGH`3qfxSGp3KZ1dN=ybL85H`TkgKtnV<^bnr&)CV5Kk5M-3y`yCPF7L>R**>*ZiL|w~iBg6P!0r#&*VWR|Qmys0Ylmf;ohlZbHSG6OZ?EC@*aM6aUZ~dg-o8K_r${v~X2)
z2!gwru=JRS(f=|fNpW$n;1xi^Esg5*sGJrL+I581_weoAKA0)e`B&uLhIdm;I5ooJ
zD*P+)A?*Zw$5!nGZwG&EYfJe}Shl0|iVX1YvDm(l5r8}Ly2rJNVEE+z*6$>bkPZ-W
z(32KCux5nP-LQRztri$F=RUuBkscs`liR#c>AXG4o}%5xy5vCz_uLUHOx~dq+qBr*
zSzdQ(yp{9murnbY-Z}i`8rkC5`$hSY@xrdu7F>e_PGoZ5rJ{H`36l|njnq|O}88E`|^A$gSI2cbof4A$DT?s-#j*>A-4IPgWSwhom4QqCRz&O
z{VGgm&cS{P)Z4r(8=zs~vKy>8bgy|bhbJsF^NbdPQ&ehjJsFc3ZZ&wBM(7)LyZ4KI
z=HrT;YSQlan03AiB5HA+GwmoU&$@QH*DP*RtSDrfWya4yRCbYh*^56M6^n-_w|IV8
zF0iUIR8c<5J+t?C6M=50s1mHMF?yZFuyO0e2r%XtR5)-sttKPI`z?zzGJo6|kx~mD
zO$`N{;Z7dQxg<62jTx2YEHDv2c!Xc$>Liim#g?1`j^Z;fb(AJglg8G{C0(lc#BiOI
z{jJ!@+X0H#jQ8!)Z@P6TRXZ+@!OZ?9nM{oEONahZ+VFucK<+ds3~({6U+-Q<5SX@E
zPn(b*dNOC*776p65J-nXw1xw~ET?aEyid>VB)z7HA~c@_??axn^Aa#}z$sDhYI?
z3$GUHPMoH{%Ny^dua&t@Ao}S+`qbOry%$bXe?32BQ^t!hk%4L3=9lfKq!Zy(s=wh=
z)6J{8+quek3MSH~d0SYV_&^dT>AGrLx*V&XACz0ZjCj<6AMf*SIW^L*e&2kE&O%-M
zwOp|UJRm(jU&P3$K23EmcWmZZ3dZc?-P_n7X`h_fLj6dwR=CP0iBdGrau{){bHmnj;Q3#_h=r|=
zV=F%GS_|v=x&dGW@ugWk<(ty+kdVx}3_F_`U@HT{dxPI;)<^48-HoJFKil8yY76_<
z^W-wz?bLhhIfPD{;XGH(CqagT+L{k
z?mo2rLL0TRxp{w*UZcIZaBX@j7j$^<+u}-meQp}F^c(dR!#M`XpOm9G|2`Tn%Xd9z
zZ7tDe`qlLq;4u;IyzDYu5VCH%z8p2;NfV7a49V8Nk@kcQTsnwK+pL51eS!0YkchNy
zWxeM9siy_wwX`enIE8VwiBd(f{cs~y)Ok@!V1UlD&8}PTll{`7J)|ReF{%1rS;Za8
zQbXElY+yW~HnV)V=Mk|`8B8W)CAq(I`eacGh@u-n*>91L{OSZt_M
zvs<*9|HfIEbMA@WQfa*C@8e!uwq-)=X~@SXV5_c1CkPvorX5GtS-|#%@1eYrlWRUO_P;=`fE9z-EC)Y;W}iTS6Lgq{mnL$
zUajrE`42*;67R9%u^ps_+CED-r*v|i0QGGYT8veN)##Qbps$wt&4AK!trWFY{@!OPZ_;7!b?XrcXFg#{F
zqY~k5cIx3~2sgVtr8BEI)URUUu`Y2!MzD>BP@hJwdUU9?>*AQ=fM*4Th@`&aCZAfE
z7b@nD2SrS>Gg5CM{xA^Tnz0(YL-~3Kf!KYrQ(HVR^5$%iiB0BX;v@Cgw$Re1`%seuhCceA1T+WRf{*F
zA0gwwIS6XdEE{|xTsSp*X5Zfv)0^kQ4fprQbPi~iw}~0oJN&K_icpaK8APuMt6apw
zSMQc)XCI{>sjA`UEX?S{eRmNZ<2UpRyopd>%wfh-$nHApAR6InAGE+Nc8}whgtSAN
zveV_0ya?(mS}uLf%;$U|Q9yU7WG6;13vnP^;fSyrEUbU}!q2Bh@S+GXkofS~c}tQ+
z8#_!5wiF0oO-gpw2beo_zjs=XSJUR5OwIUoeM>Qk)y30#-59pvIkY(?E{)ITDcaRm
z-1vyHX-rRisz3B_nL19%Uw$%b}276OaOF{a_8UoNjun
z29A=^UA|y-_5|F~c@*Td?7{swPw8+UHKTxl3tEGo%Mt+77B;w7LCiyiW$O8jK%Ia$(xeDPV%f(99o)c?0~{jvCu4uCE7*IEdQfZr%G`_C%R+0ImOW&Q|
zb>PcNNNI{f^&R+Qb~jIt?Sw^Py+@C{(oILx?c1(au8w-E=bKX(vI2%m>36MEOP1r6
z^A8f!Y&JaZ-%Zf|SYO?@--Uuforj}jcU%oA_;xy!Ig`=S?6Dto*2@o?S%NWT$
z|I?+G6=RH3o>To~fTLE%|B!Rt(ne69s`m)OE?CL46;~Fb-7LiB$0#Y=AYIcnUxti{
zcA+^(?KuByy$d#-oiPB8WiqujYVJTYe!XF*kQ)nubq
zFz?xfOP%SCg;vMg7QfNDLpFcuzqNf0l!+hcPSI@TMOX@vI&>5T)3LK`LmV-ETANc0
zt~2u#+h4>dKv&lB(ERxJY3cILkR9^^z_=16Ab?
zmA^QUsCY6e9;H0z?1w30G%+O&E8Z!W$?(QnKjF(tdKc?X1NYsP7~-!)`3L$Q!6vV;
zw62$te<&kb+1l4(GD3H=h%c9neJQ_%y(YNn-uJd0I1Z_UNlaYk*5n)GCS-LJQ$6_`
zb;6M*YX1lgJWU`bAC=PEBtEGj{yak8q)~;}3)^$Ij>Y1}w?OY;p0UuXE5ilG3YPF!
z)94|Mf07a}Uw#Y4x1@Oe%wF=p{DWIMDgm`#P@Aru#T#q@eU?UQh^air
zM4jtuCN)s7Q^gYO=_HW-Aj)UW(I+iI-%7q->DZ2`T}eKeY4u9IwK=rtt>?&|#rQp1
zToSj};Vv=+Na11L81dXCYmOCIQSQ>3F{3AKK;=c9Tm)~!vn3RHNQTcDxNH!n=v-#;
z@P_F?&1DqG-|wO--1rmyg0_4GO8^;|Xlr}AdsD&zU!Ct5xQD)}Gn
z%R`T+7pKC)o|d4g1g!1A+rH?ZH+>jYD3h5#nt?I|hI1Vz?zI=MYLNxC^xJBqks%c-|wp1g>mAkQimpIi$
zon`e)$U?e~(DN(n<))5vOY>@&*#MtcCK7=Whx(#l2G!#KeqjEO=btA9!e3cFI!_$y?Sj#>@-ddPdz%_Dej}t
zc&RIuqeTmr``*6%9|}j=uCRfww0rvW{wKzmotupK2Y%<2kp(tP#`w{MvBp@DB@3=QVR{?GrLfU<;WXp1$@zHODMoP&m
zqXm~H=QLF+l_8~5IR;4gl|=_NBR*5`WLn;a{!hj7v9_somh3=)UgKn-_47S8Z{xP-E78M(7=7OW1uMhUgu9Kz87pQu`k7Gvm&
zYw;TQ7+#y&e}JnEE~DI3&;NY41MtsD9U4Oh+WBTntm*RFgV{e!$1~9R@opAJnGbTF3|5H&-pp3f
znW1&y>-rusxCeaTBCq1X&ca+y|dR&Zn#J~5yGSo-L#;=q}y@LTaolx1+$Fbj^gU
zfF!#q#|-Z4L6`!xt-h5_(KcQ4s%iidxvi)>a|iW=8F)0B<_I8Hk$Y-fn;@UbR=MRZ
zHsq>-Brn|!Zj4P?MaVsv-?gz-GPFou!|KYF40k5+=1a)L@
+
+
+
+
+
+Import OFX Bank Statement
+
+
+
+
+
Import OFX Bank Statement
+
+
+

+
This module adds support for the import of bank statements in OFX format.
+
Bank Statements may be generated containing a subset of the OFX information (only those transaction lines that are required for the
+creation of the Financial Accounting records).
+
Since v14, this module support multi-account OFX files i.e. several different bank accounts in the same OFX file.
+
Table of contents
+
+
+
+
This module requires the ofxparse python lib.
+
+
+
+
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.
+
Do not contact contributors directly about support or help with technical issues.
+
+
+
+
+
+
+- Odoo SA
+- Akretion
+- La Louve
+- GRAP
+- Nicolas JEUDY
+- Le Filament
+
+
+
+
+
+
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.
+
This module is part of the OCA/bank-statement-import project on GitHub.
+
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
+
+
+
+
+
diff --git a/account_statement_import_ofx/tests/__init__.py b/account_statement_import_ofx/tests/__init__.py
new file mode 100644
index 0000000000..bb3456ae94
--- /dev/null
+++ b/account_statement_import_ofx/tests/__init__.py
@@ -0,0 +1 @@
+from . import test_import_bank_statement
diff --git a/account_statement_import_ofx/tests/test_import_bank_statement.py b/account_statement_import_ofx/tests/test_import_bank_statement.py
new file mode 100644
index 0000000000..c9aed5a464
--- /dev/null
+++ b/account_statement_import_ofx/tests/test_import_bank_statement.py
@@ -0,0 +1,110 @@
+import base64
+import datetime
+
+from odoo.modules.module import get_module_resource
+from odoo.tests.common import TransactionCase
+
+
+class TestOfxFile(TransactionCase):
+ """Tests for import bank statement ofx file format
+ (account.bank.statement.import)
+ """
+
+ def setUp(self):
+ super(TestOfxFile, self).setUp()
+ self.asi_model = self.env["account.statement.import"]
+ self.abs_model = self.env["account.bank.statement"]
+ self.j_model = self.env["account.journal"]
+ self.absl_model = self.env["account.bank.statement.line"]
+ cur = self.env.ref("base.USD")
+ # self.env.ref("base.main_company").currency_id = cur.id
+ bank = self.env["res.partner.bank"].create(
+ {
+ "acc_number": "123456",
+ "partner_id": self.env.ref("base.main_partner").id,
+ "company_id": self.env.ref("base.main_company").id,
+ "bank_id": self.env.ref("base.res_bank_1").id,
+ }
+ )
+ self.env["account.journal"].create(
+ {
+ "name": "Bank Journal TEST OFX",
+ "code": "BNK12",
+ "type": "bank",
+ "bank_account_id": bank.id,
+ "currency_id": cur.id,
+ }
+ )
+
+ bank_iban_ofx = self.env["res.partner.bank"].create(
+ {
+ "acc_number": "FR7630001007941234567890185",
+ "partner_id": self.env.ref("base.main_partner").id,
+ "company_id": self.env.ref("base.main_company").id,
+ "bank_id": self.env.ref("base.res_bank_1").id,
+ }
+ )
+
+ self.env["account.journal"].create(
+ {
+ "name": "FR7630001007941234567890185",
+ "code": "BNK13",
+ "type": "bank",
+ "bank_account_id": bank_iban_ofx.id,
+ "currency_id": cur.id,
+ }
+ )
+
+ def test_wrong_ofx_file_import(self):
+ ofx_file_path = get_module_resource(
+ "account_statement_import_ofx",
+ "tests/test_ofx_file/",
+ "test_ofx_wrong.ofx",
+ )
+ ofx_file_wrong = base64.b64encode(open(ofx_file_path, "rb").read())
+ bank_statement = self.asi_model.create(
+ {
+ "statement_file": ofx_file_wrong,
+ "statement_filename": "test_ofx_wrong.ofx",
+ }
+ )
+ self.assertFalse(bank_statement._check_ofx(data_file=ofx_file_wrong))
+
+ def test_ofx_file_import(self):
+ ofx_file_path = get_module_resource(
+ "account_statement_import_ofx", "tests/test_ofx_file/", "test_ofx.ofx"
+ )
+ ofx_file = base64.b64encode(open(ofx_file_path, "rb").read())
+ bank_statement = self.asi_model.create(
+ {
+ "statement_file": ofx_file,
+ "statement_filename": "test_ofx.ofx",
+ }
+ )
+ bank_statement.import_file_button()
+ bank_st_record = self.abs_model.search([("name", "like", "123456")])[0]
+ self.assertEqual(bank_st_record.balance_start, 2516.56)
+ self.assertEqual(bank_st_record.balance_end_real, 2156.56)
+
+ line = self.absl_model.search(
+ [
+ ("payment_ref", "=", "Agrolait"),
+ ("statement_id", "=", bank_st_record.id),
+ ]
+ )[0]
+ self.assertEqual(line.date, datetime.date(2013, 8, 24))
+
+ def test_check_journal_bank_account(self):
+ ofx_file_path = get_module_resource(
+ "account_statement_import_ofx",
+ "tests/test_ofx_file/",
+ "test_ofx_iban.ofx",
+ )
+ ofx_file = base64.b64encode(open(ofx_file_path, "rb").read())
+ bank_st = self.asi_model.create(
+ {
+ "statement_file": ofx_file,
+ "statement_filename": "test_ofx_iban.ofx",
+ }
+ )
+ bank_st.import_file_button()
diff --git a/account_statement_import_ofx/tests/test_ofx_file/test_ofx.ofx b/account_statement_import_ofx/tests/test_ofx_file/test_ofx.ofx
new file mode 100644
index 0000000000..37df4d0c99
--- /dev/null
+++ b/account_statement_import_ofx/tests/test_ofx_file/test_ofx.ofx
@@ -0,0 +1,100 @@
+
+
+
+
+
+
+ 0
+ INFO
+
+ 20130831165153.000[-8:PST]
+ ENG
+
+
+
+
+ 0
+
+ 0
+ INFO
+
+
+ USD
+
+ 000000123
+ 123456
+ CHECKING
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ POS
+ 20130824080000
+ -80
+ 219378
+ Agrolait
+
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ POS
+ 20130824080000
+ -90
+ 219379
+ China Export
+
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ POS
+ 20130824080000
+ -100
+ 219380
+ Axelor Scuba
+
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ POS
+ 20130824080000
+ -90
+ 219381
+ China Scuba
+
+
+
+ 2156.56
+ 20130831165153
+
+
+
+
+
+
+ 0
+
+ 0
+ INFO
+
+
+ USD
+
+ 123412341234
+
+
+
+
+ -562.00
+ 20130831165153
+
+
+
+
+
diff --git a/account_statement_import_ofx/tests/test_ofx_file/test_ofx_iban.ofx b/account_statement_import_ofx/tests/test_ofx_file/test_ofx_iban.ofx
new file mode 100644
index 0000000000..99c01618f1
--- /dev/null
+++ b/account_statement_import_ofx/tests/test_ofx_file/test_ofx_iban.ofx
@@ -0,0 +1,101 @@
+
+
+
+
+
+
+ 0
+ INFO
+
+ 20130831165153.000[-8:PST]
+ ENG
+
+
+
+
+ 0
+
+ 0
+ INFO
+
+
+ USD
+
+ 30001
+ 00794
+ 12345678901
+ CHECKING
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ POS
+ 20130824080000
+ -80
+ 219378
+ Agrolait
+
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ POS
+ 20130824080000
+ -90
+ 219379
+ China Export
+
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ POS
+ 20130824080000
+ -100
+ 219380
+ Axelor Scuba
+
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ POS
+ 20130824080000
+ -90
+ 219381
+ China Scuba
+
+
+
+ 2156.56
+ 20130831165153
+
+
+
+
+
+
+ 0
+
+ 0
+ INFO
+
+
+ USD
+
+ 123412341234
+
+
+
+
+ -562.00
+ 20130831165153
+
+
+
+
+
diff --git a/account_statement_import_ofx/tests/test_ofx_file/test_ofx_wrong.ofx b/account_statement_import_ofx/tests/test_ofx_file/test_ofx_wrong.ofx
new file mode 100644
index 0000000000..b9e64a391b
--- /dev/null
+++ b/account_statement_import_ofx/tests/test_ofx_file/test_ofx_wrong.ofx
@@ -0,0 +1,100 @@
+
+
+
+
+
+
+ 0
+ INFO
+
+ 20130831165153.000[-8:PST]
+ ENG
+
+
+
+
+ 0
+
+ 0
+ INFO
+
+
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ POS
+ 20130824080000
+ -80
+ 219378
+ Agrolait
+
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ POS
+
+ China Export
+
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ POS
+ 20130824080000
+ -100
+ 219380
+ Axelor Scuba
+
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ POS
+ 20130824080000
+ -90
+ 219381
+ China Scuba
+
+
+
+ 2156.56
+ 20130831165153
+
+
+
+
+
+
+ 0
+
+ 0
+ INFO
+
+
+ USD
+
+ 123412341234
+
+
+
+
+ -562.00
+ 20130831165153
+
+
+
+
+
diff --git a/account_statement_import_ofx/views/account_statement_import.xml b/account_statement_import_ofx/views/account_statement_import.xml
new file mode 100644
index 0000000000..e47d2cc995
--- /dev/null
+++ b/account_statement_import_ofx/views/account_statement_import.xml
@@ -0,0 +1,15 @@
+
+
+
+ account.statement.import
+
+
+
+ Open Financial Exchange (.OFX Money)
+
+
+
+
diff --git a/account_statement_import_ofx/wizard/__init__.py b/account_statement_import_ofx/wizard/__init__.py
new file mode 100644
index 0000000000..ae69bca274
--- /dev/null
+++ b/account_statement_import_ofx/wizard/__init__.py
@@ -0,0 +1 @@
+from . import account_statement_import
diff --git a/account_statement_import_ofx/wizard/account_statement_import.py b/account_statement_import_ofx/wizard/account_statement_import.py
new file mode 100644
index 0000000000..5275c098a1
--- /dev/null
+++ b/account_statement_import_ofx/wizard/account_statement_import.py
@@ -0,0 +1,88 @@
+import io
+import logging
+
+from odoo import _, api, models
+from odoo.exceptions import UserError
+
+_logger = logging.getLogger(__name__)
+
+try:
+ from ofxparse import OfxParser
+except ImportError:
+ _logger.debug("ofxparse not found.")
+ OfxParser = None
+
+
+class AccountStatementImport(models.TransientModel):
+ _inherit = "account.statement.import"
+
+ @api.model
+ def _check_ofx(self, data_file):
+ if not OfxParser:
+ return False
+ try:
+ ofx = OfxParser.parse(io.BytesIO(data_file))
+ except Exception as e:
+ _logger.debug(e)
+ return False
+ return ofx
+
+ @api.model
+ def _prepare_ofx_transaction_line(self, transaction):
+ # Since ofxparse doesn't provide account numbers,
+ # we cannot provide the key 'bank_account_id',
+ # nor the key 'account_number'
+ # If you read odoo10/addons/account_bank_statement_import/
+ # account_bank_statement_import.py, it's the only 2 keys
+ # we can provide to match a partner.
+ payment_ref = transaction.payee
+ if transaction.checknum:
+ payment_ref += " " + transaction.checknum
+ if transaction.memo:
+ payment_ref += " : " + transaction.memo
+ vals = {
+ "date": transaction.date,
+ "payment_ref": payment_ref,
+ "amount": float(transaction.amount),
+ "unique_import_id": transaction.id,
+ }
+ return vals
+
+ def _parse_file(self, data_file):
+ ofx = self._check_ofx(data_file)
+ if not ofx:
+ return super()._parse_file(data_file)
+
+ result = []
+ try:
+ for account in ofx.accounts:
+ transactions = []
+ total_amt = 0.00
+
+ if not account.statement.transactions:
+ continue
+
+ for transaction in account.statement.transactions:
+ vals = self._prepare_ofx_transaction_line(transaction)
+ if vals:
+ transactions.append(vals)
+ total_amt += vals["amount"]
+ balance = float(account.statement.balance)
+ vals_bank_statement = {
+ "name": account.number,
+ "transactions": transactions,
+ "balance_start": balance - total_amt,
+ "balance_end_real": balance,
+ }
+ result.append(
+ (account.statement.currency, account.number, [vals_bank_statement])
+ )
+ except Exception as e:
+ raise UserError(
+ _(
+ "The following problem occurred during import. "
+ "The file might not be valid.\n\n %s"
+ )
+ % str(e)
+ )
+ return result
From 1caf4f30d90213f8ae3b6a9f0fe9ab61627bd514 Mon Sep 17 00:00:00 2001
From: Yves Le Doeuff
Date: Sat, 10 Apr 2021 15:02:25 +0000
Subject: [PATCH 02/17] Translated using Weblate (French)
Currently translated at 57.1% (4 of 7 strings)
Translation: bank-statement-import-14.0/bank-statement-import-14.0-account_statement_import_ofx
Translate-URL: https://translation.odoo-community.org/projects/bank-statement-import-14-0/bank-statement-import-14-0-account_statement_import_ofx/fr/
---
account_statement_import_ofx/i18n/fr.po | 12 ++---
account_statement_import_ofx/i18n/fr_FR.po | 63 ++++++++++++++++++++++
2 files changed, 69 insertions(+), 6 deletions(-)
create mode 100644 account_statement_import_ofx/i18n/fr_FR.po
diff --git a/account_statement_import_ofx/i18n/fr.po b/account_statement_import_ofx/i18n/fr.po
index b0feff1254..de833e499d 100644
--- a/account_statement_import_ofx/i18n/fr.po
+++ b/account_statement_import_ofx/i18n/fr.po
@@ -9,14 +9,15 @@ msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-04-11 21:55+0000\n"
-"PO-Revision-Date: 2017-04-11 21:55+0000\n"
-"Last-Translator: OCA Transbot , 2016\n"
+"PO-Revision-Date: 2021-04-10 15:02+0000\n"
+"Last-Translator: Yves Le Doeuff \n"
"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 4.3.2\n"
#. module: account_statement_import_ofx
#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
@@ -32,9 +33,8 @@ msgstr ""
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
-#, fuzzy
msgid "Import Bank Statement Files"
-msgstr "Importer Relevé Bancaire"
+msgstr "Importer des Relevés Bancaires"
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_journal
@@ -45,7 +45,7 @@ msgstr ""
#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
msgid "Last Modified on"
-msgstr ""
+msgstr "Dernière modification"
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
diff --git a/account_statement_import_ofx/i18n/fr_FR.po b/account_statement_import_ofx/i18n/fr_FR.po
new file mode 100644
index 0000000000..4004934b97
--- /dev/null
+++ b/account_statement_import_ofx/i18n/fr_FR.po
@@ -0,0 +1,63 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_statement_import_ofx
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 14.0\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: 2021-04-10 17:46+0000\n"
+"Last-Translator: Yves Le Doeuff \n"
+"Language-Team: none\n"
+"Language: fr_FR\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 4.3.2\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+msgid "Import Bank Statement Files"
+msgstr "Importer des Relevés Bancaires"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr "Dernière modification"
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr "Open Financial Exchange (.OFX Money)"
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
+"Le problème suivant est survenu lors de l'importation. Le fichier n'est pas "
+"valide.\n"
+"\n"
+"%s"
From f4642b7f7256f50db47e2dbc2c545cbb45c94822 Mon Sep 17 00:00:00 2001
From: Sergio Zanchetta
Date: Thu, 25 Nov 2021 17:01:11 +0000
Subject: [PATCH 03/17] Added translation using Weblate (Italian)
---
account_statement_import_ofx/i18n/it.po | 59 +++++++++++++++++++++++++
1 file changed, 59 insertions(+)
create mode 100644 account_statement_import_ofx/i18n/it.po
diff --git a/account_statement_import_ofx/i18n/it.po b/account_statement_import_ofx/i18n/it.po
new file mode 100644
index 0000000000..558e8c442f
--- /dev/null
+++ b/account_statement_import_ofx/i18n/it.po
@@ -0,0 +1,59 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_statement_import_ofx
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 14.0\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: 2021-11-25 17:36+0000\n"
+"Last-Translator: Sergio Zanchetta \n"
+"Language-Team: none\n"
+"Language: it\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.3.2\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr "Nome visualizzato"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr "ID"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+msgid "Import Bank Statement Files"
+msgstr "Importazione file estratto conto bancario"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr "Registro"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr "Ultima modifica il"
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr ""
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
From 573f776d44253ed441f508f56aa4cf86f6ced102 Mon Sep 17 00:00:00 2001
From: Ignacio Buioli
Date: Fri, 7 Jan 2022 13:47:45 +0000
Subject: [PATCH 04/17] Added translation using Weblate (Spanish (Argentina))
---
account_statement_import_ofx/i18n/es_AR.po | 63 ++++++++++++++++++++++
1 file changed, 63 insertions(+)
create mode 100644 account_statement_import_ofx/i18n/es_AR.po
diff --git a/account_statement_import_ofx/i18n/es_AR.po b/account_statement_import_ofx/i18n/es_AR.po
new file mode 100644
index 0000000000..fe224f862b
--- /dev/null
+++ b/account_statement_import_ofx/i18n/es_AR.po
@@ -0,0 +1,63 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * account_statement_import_ofx
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 14.0\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: 2022-01-07 16:40+0000\n"
+"Last-Translator: Ignacio Buioli \n"
+"Language-Team: none\n"
+"Language: es_AR\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.3.2\n"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
+msgid "Display Name"
+msgstr "Mostrar Nombre"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
+msgid "ID"
+msgstr "ID"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
+msgid "Import Bank Statement Files"
+msgstr "Importar Archivos de Extractos Bancarios"
+
+#. module: account_statement_import_ofx
+#: model:ir.model,name:account_statement_import_ofx.model_account_journal
+msgid "Journal"
+msgstr "Diario"
+
+#. module: account_statement_import_ofx
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
+#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
+msgid "Last Modified on"
+msgstr "Última modificación en"
+
+#. module: account_statement_import_ofx
+#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
+msgid "Open Financial Exchange (.OFX Money)"
+msgstr "Open Financial Exchange (.OFX Dinero)"
+
+#. module: account_statement_import_ofx
+#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
+#, python-format
+msgid ""
+"The following problem occurred during import. The file might not be valid.\n"
+"\n"
+" %s"
+msgstr ""
+"El siguiente problema ocurrió durante la importación. Es posible que el "
+"archivo no sea válido.\n"
+"\n"
+" %s"
From c6da10be660c27ce105c9a21cc395f87bb5f2bba Mon Sep 17 00:00:00 2001
From: Alexis de Lattre
Date: Mon, 6 Mar 2023 22:58:45 +0100
Subject: [PATCH 05/17] [MIG] account_statement_import_ofx to v16
---
account_statement_import_ofx/README.rst | 22 +++++++++++++------
account_statement_import_ofx/__manifest__.py | 6 +++--
.../i18n/account_statement_import_ofx.pot | 21 ++----------------
.../static/description/index.html | 8 ++++---
.../views/account_statement_import.xml | 2 +-
.../wizard/account_statement_import.py | 2 +-
6 files changed, 28 insertions(+), 33 deletions(-)
diff --git a/account_statement_import_ofx/README.rst b/account_statement_import_ofx/README.rst
index fde571694c..a1046759df 100644
--- a/account_statement_import_ofx/README.rst
+++ b/account_statement_import_ofx/README.rst
@@ -7,20 +7,20 @@ Import OFX Bank Statement
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
+.. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png
:target: https://odoo-community.org/page/development-status
- :alt: Beta
+ :alt: Mature
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fbank--statement--import-lightgray.png?logo=github
- :target: https://github.com/OCA/bank-statement-import/tree/14.0/account_statement_import_ofx
+ :target: https://github.com/OCA/bank-statement-import/tree/16.0/account_statement_import_ofx
:alt: OCA/bank-statement-import
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/bank-statement-import-14-0/bank-statement-import-14-0-account_statement_import_ofx
+ :target: https://translation.odoo-community.org/projects/bank-statement-import-16-0/bank-statement-import-16-0-account_statement_import_ofx
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/174/14.0
+ :target: https://runbot.odoo-community.org/runbot/174/16.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
@@ -48,7 +48,7 @@ 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 `_.
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -89,6 +89,14 @@ 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.
-This module is part of the `OCA/bank-statement-import `_ project on GitHub.
+.. |maintainer-alexis-via| image:: https://github.com/alexis-via.png?size=40px
+ :target: https://github.com/alexis-via
+ :alt: alexis-via
+
+Current `maintainer `__:
+
+|maintainer-alexis-via|
+
+This module is part of the `OCA/bank-statement-import `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/account_statement_import_ofx/__manifest__.py b/account_statement_import_ofx/__manifest__.py
index 5d34944f88..77b622e8fa 100644
--- a/account_statement_import_ofx/__manifest__.py
+++ b/account_statement_import_ofx/__manifest__.py
@@ -1,7 +1,7 @@
{
"name": "Import OFX Bank Statement",
"category": "Banking addons",
- "version": "14.0.1.0.0",
+ "version": "16.0.1.0.0",
"license": "AGPL-3",
"author": "Odoo SA,"
"Akretion,"
@@ -10,8 +10,10 @@
"Nicolas JEUDY,"
"Le Filament,"
"Odoo Community Association (OCA)",
+ "maintainers": ["alexis-via"],
+ "development_status": "Mature",
"website": "https://github.com/OCA/bank-statement-import",
- "depends": ["account_statement_import"],
+ "depends": ["account_statement_import_file"],
"data": ["views/account_statement_import.xml"],
"external_dependencies": {"python": ["ofxparse"]},
"installable": True,
diff --git a/account_statement_import_ofx/i18n/account_statement_import_ofx.pot b/account_statement_import_ofx/i18n/account_statement_import_ofx.pot
index 17a7be59f4..8ee2d81325 100644
--- a/account_statement_import_ofx/i18n/account_statement_import_ofx.pot
+++ b/account_statement_import_ofx/i18n/account_statement_import_ofx.pot
@@ -4,7 +4,7 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 14.0\n"
+"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -13,18 +13,6 @@ msgstr ""
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
msgid "Import Bank Statement Files"
@@ -35,18 +23,13 @@ msgstr ""
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr ""
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
diff --git a/account_statement_import_ofx/static/description/index.html b/account_statement_import_ofx/static/description/index.html
index 8aecfd9f53..1d213aadc0 100644
--- a/account_statement_import_ofx/static/description/index.html
+++ b/account_statement_import_ofx/static/description/index.html
@@ -367,7 +367,7 @@ Import OFX Bank Statement
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-

+

This module adds support for the import of bank statements in OFX format.
Bank Statements may be generated containing a subset of the OFX information (only those transaction lines that are required for the
creation of the Financial Accounting records).
@@ -394,7 +394,7 @@
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.
+feedback.
Do not contact contributors directly about support or help with technical issues.
diff --git a/account_statement_import_ofx/views/account_statement_import.xml b/account_statement_import_ofx/views/account_statement_import.xml
index e47d2cc995..6d8b68dac7 100644
--- a/account_statement_import_ofx/views/account_statement_import.xml
+++ b/account_statement_import_ofx/views/account_statement_import.xml
@@ -4,7 +4,7 @@
account.statement.import
diff --git a/account_statement_import_ofx/wizard/account_statement_import.py b/account_statement_import_ofx/wizard/account_statement_import.py
index 5275c098a1..d88c9085e7 100644
--- a/account_statement_import_ofx/wizard/account_statement_import.py
+++ b/account_statement_import_ofx/wizard/account_statement_import.py
@@ -84,5 +84,5 @@ def _parse_file(self, data_file):
"The file might not be valid.\n\n %s"
)
% str(e)
- )
+ ) from e
return result
From 1188b95dff982d50a16dd785ca4aa605048554ee Mon Sep 17 00:00:00 2001
From: Weblate
Date: Fri, 24 Mar 2023 12:12:40 +0000
Subject: [PATCH 06/17] Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.
Translation: bank-statement-import-16.0/bank-statement-import-16.0-account_statement_import_ofx
Translate-URL: https://translation.odoo-community.org/projects/bank-statement-import-16-0/bank-statement-import-16-0-account_statement_import_ofx/
---
account_statement_import_ofx/i18n/de.po | 19 +---------
account_statement_import_ofx/i18n/es.po | 41 ++++++++--------------
account_statement_import_ofx/i18n/es_AR.po | 28 ++++++---------
account_statement_import_ofx/i18n/fi.po | 19 +---------
account_statement_import_ofx/i18n/fr.po | 22 +++---------
account_statement_import_ofx/i18n/fr_CH.po | 19 +---------
account_statement_import_ofx/i18n/fr_FR.po | 22 +++---------
account_statement_import_ofx/i18n/gl.po | 19 +---------
account_statement_import_ofx/i18n/it.po | 28 ++++++---------
account_statement_import_ofx/i18n/lt_LT.po | 19 +---------
account_statement_import_ofx/i18n/nb_NO.po | 19 +---------
account_statement_import_ofx/i18n/nl.po | 19 +---------
account_statement_import_ofx/i18n/pt_BR.po | 19 +---------
account_statement_import_ofx/i18n/pt_PT.po | 19 +---------
account_statement_import_ofx/i18n/sl.po | 19 +---------
15 files changed, 52 insertions(+), 279 deletions(-)
diff --git a/account_statement_import_ofx/i18n/de.po b/account_statement_import_ofx/i18n/de.po
index e246e94beb..3e41deff1a 100644
--- a/account_statement_import_ofx/i18n/de.po
+++ b/account_statement_import_ofx/i18n/de.po
@@ -18,18 +18,6 @@ msgstr ""
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
#, fuzzy
@@ -41,18 +29,13 @@ msgstr "Kontoauszug importieren"
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr "Open Financial Exchange (.OFX Money)"
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
diff --git a/account_statement_import_ofx/i18n/es.po b/account_statement_import_ofx/i18n/es.po
index 2b42744424..a7864321d4 100644
--- a/account_statement_import_ofx/i18n/es.po
+++ b/account_statement_import_ofx/i18n/es.po
@@ -8,51 +8,34 @@ msgstr ""
"Project-Id-Version: bank-statement-import (8.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-07-24 21:51+0000\n"
-"PO-Revision-Date: 2015-05-29 00:50+0000\n"
-"Last-Translator: OCA Transbot \n"
-"Language-Team: Spanish (http://www.transifex.com/oca/OCA-bank-statement-"
-"import-8-0/language/es/)\n"
+"PO-Revision-Date: 2023-05-17 11:34+0000\n"
+"Last-Translator: gelo joga Rodríguez \n"
+"Language-Team: Spanish (http://www.transifex.com/oca/"
+"OCA-bank-statement-import-8-0/language/es/)\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.14.1\n"
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
-#, fuzzy
msgid "Import Bank Statement Files"
-msgstr "Importar extracto bancario"
+msgstr "Importar archivos de extractos bancarios"
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_journal
msgid "Journal"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr ""
+msgstr "Diario"
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
-msgstr ""
+msgstr "Abrir intercambio financiero (.OFX Money)"
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
@@ -60,3 +43,7 @@ msgid ""
"\n"
" %s"
msgstr ""
+"El siguiente problema ocurrió durante la importación. Es posible que el "
+"archivo no sea válido.\n"
+"\n"
+" %s"
diff --git a/account_statement_import_ofx/i18n/es_AR.po b/account_statement_import_ofx/i18n/es_AR.po
index fe224f862b..8f4259a15a 100644
--- a/account_statement_import_ofx/i18n/es_AR.po
+++ b/account_statement_import_ofx/i18n/es_AR.po
@@ -16,18 +16,6 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.3.2\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr "Mostrar Nombre"
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr "ID"
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
msgid "Import Bank Statement Files"
@@ -38,18 +26,13 @@ msgstr "Importar Archivos de Extractos Bancarios"
msgid "Journal"
msgstr "Diario"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr "Última modificación en"
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr "Open Financial Exchange (.OFX Dinero)"
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
@@ -61,3 +44,12 @@ msgstr ""
"archivo no sea válido.\n"
"\n"
" %s"
+
+#~ msgid "Display Name"
+#~ msgstr "Mostrar Nombre"
+
+#~ msgid "ID"
+#~ msgstr "ID"
+
+#~ msgid "Last Modified on"
+#~ msgstr "Última modificación en"
diff --git a/account_statement_import_ofx/i18n/fi.po b/account_statement_import_ofx/i18n/fi.po
index 24986d3a80..0953c69aa2 100644
--- a/account_statement_import_ofx/i18n/fi.po
+++ b/account_statement_import_ofx/i18n/fi.po
@@ -18,18 +18,6 @@ msgstr ""
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
#, fuzzy
@@ -41,18 +29,13 @@ msgstr "Tuo pankkiaineisto"
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr ""
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
diff --git a/account_statement_import_ofx/i18n/fr.po b/account_statement_import_ofx/i18n/fr.po
index de833e499d..4651c57657 100644
--- a/account_statement_import_ofx/i18n/fr.po
+++ b/account_statement_import_ofx/i18n/fr.po
@@ -19,18 +19,6 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.3.2\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
msgid "Import Bank Statement Files"
@@ -41,18 +29,13 @@ msgstr "Importer des Relevés Bancaires"
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr "Dernière modification"
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr "Open Financial Exchange (.OFX Money)"
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
@@ -64,3 +47,6 @@ msgstr ""
"valide.\n"
"\n"
"%s"
+
+#~ msgid "Last Modified on"
+#~ msgstr "Dernière modification"
diff --git a/account_statement_import_ofx/i18n/fr_CH.po b/account_statement_import_ofx/i18n/fr_CH.po
index 6fe7ea38a8..d5c8b913e8 100644
--- a/account_statement_import_ofx/i18n/fr_CH.po
+++ b/account_statement_import_ofx/i18n/fr_CH.po
@@ -19,18 +19,6 @@ msgstr ""
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
#, fuzzy
@@ -42,18 +30,13 @@ msgstr "Importer Relevé"
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr ""
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
diff --git a/account_statement_import_ofx/i18n/fr_FR.po b/account_statement_import_ofx/i18n/fr_FR.po
index 4004934b97..22b57757aa 100644
--- a/account_statement_import_ofx/i18n/fr_FR.po
+++ b/account_statement_import_ofx/i18n/fr_FR.po
@@ -16,18 +16,6 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.3.2\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
msgid "Import Bank Statement Files"
@@ -38,18 +26,13 @@ msgstr "Importer des Relevés Bancaires"
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr "Dernière modification"
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr "Open Financial Exchange (.OFX Money)"
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
@@ -61,3 +44,6 @@ msgstr ""
"valide.\n"
"\n"
"%s"
+
+#~ msgid "Last Modified on"
+#~ msgstr "Dernière modification"
diff --git a/account_statement_import_ofx/i18n/gl.po b/account_statement_import_ofx/i18n/gl.po
index 6e580bf94a..2e291f712f 100644
--- a/account_statement_import_ofx/i18n/gl.po
+++ b/account_statement_import_ofx/i18n/gl.po
@@ -18,18 +18,6 @@ msgstr ""
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
#, fuzzy
@@ -41,18 +29,13 @@ msgstr "Importar extracto bancario"
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr ""
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
diff --git a/account_statement_import_ofx/i18n/it.po b/account_statement_import_ofx/i18n/it.po
index 558e8c442f..5047451acf 100644
--- a/account_statement_import_ofx/i18n/it.po
+++ b/account_statement_import_ofx/i18n/it.po
@@ -16,18 +16,6 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.3.2\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr "Nome visualizzato"
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr "ID"
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
msgid "Import Bank Statement Files"
@@ -38,18 +26,13 @@ msgstr "Importazione file estratto conto bancario"
msgid "Journal"
msgstr "Registro"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr "Ultima modifica il"
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr ""
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
@@ -57,3 +40,12 @@ msgid ""
"\n"
" %s"
msgstr ""
+
+#~ msgid "Display Name"
+#~ msgstr "Nome visualizzato"
+
+#~ msgid "ID"
+#~ msgstr "ID"
+
+#~ msgid "Last Modified on"
+#~ msgstr "Ultima modifica il"
diff --git a/account_statement_import_ofx/i18n/lt_LT.po b/account_statement_import_ofx/i18n/lt_LT.po
index cc341fcef3..7e3d6739e6 100644
--- a/account_statement_import_ofx/i18n/lt_LT.po
+++ b/account_statement_import_ofx/i18n/lt_LT.po
@@ -20,18 +20,6 @@ msgstr ""
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n"
"%100<10 || n%100>=20) ? 1 : 2);\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
#, fuzzy
@@ -43,18 +31,13 @@ msgstr "Importuoti banko išrašą"
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr ""
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
diff --git a/account_statement_import_ofx/i18n/nb_NO.po b/account_statement_import_ofx/i18n/nb_NO.po
index ac678a8ef7..fde0d43e19 100644
--- a/account_statement_import_ofx/i18n/nb_NO.po
+++ b/account_statement_import_ofx/i18n/nb_NO.po
@@ -19,18 +19,6 @@ msgstr ""
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
#, fuzzy
@@ -42,18 +30,13 @@ msgstr "Importer bankutsagn"
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr ""
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
diff --git a/account_statement_import_ofx/i18n/nl.po b/account_statement_import_ofx/i18n/nl.po
index 3c339a5db2..16cf33f960 100644
--- a/account_statement_import_ofx/i18n/nl.po
+++ b/account_statement_import_ofx/i18n/nl.po
@@ -18,18 +18,6 @@ msgstr ""
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
#, fuzzy
@@ -41,18 +29,13 @@ msgstr "Importeer bankafschrift"
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr ""
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
diff --git a/account_statement_import_ofx/i18n/pt_BR.po b/account_statement_import_ofx/i18n/pt_BR.po
index 83532de156..45a69167e9 100644
--- a/account_statement_import_ofx/i18n/pt_BR.po
+++ b/account_statement_import_ofx/i18n/pt_BR.po
@@ -20,18 +20,6 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 3.8\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
#, fuzzy
@@ -43,18 +31,13 @@ msgstr "Importar Extrato Bancário"
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr "Troca Financeira Aberta (.OFX Money)"
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
diff --git a/account_statement_import_ofx/i18n/pt_PT.po b/account_statement_import_ofx/i18n/pt_PT.po
index 4f4e18ce0c..bece783ba6 100644
--- a/account_statement_import_ofx/i18n/pt_PT.po
+++ b/account_statement_import_ofx/i18n/pt_PT.po
@@ -19,18 +19,6 @@ msgstr ""
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
#, fuzzy
@@ -42,18 +30,13 @@ msgstr "Importar Extrato Bancário"
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr ""
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
diff --git a/account_statement_import_ofx/i18n/sl.po b/account_statement_import_ofx/i18n/sl.po
index e2deebbde1..73f9070349 100644
--- a/account_statement_import_ofx/i18n/sl.po
+++ b/account_statement_import_ofx/i18n/sl.po
@@ -19,18 +19,6 @@ msgstr ""
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
"%100==4 ? 2 : 3);\n"
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__display_name
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__display_name
-msgid "Display Name"
-msgstr ""
-
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal__id
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import__id
-msgid "ID"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
#, fuzzy
@@ -42,18 +30,13 @@ msgstr "Uvoz bančnega izpiska"
msgid "Journal"
msgstr ""
-#. module: account_statement_import_ofx
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_journal____last_update
-#: model:ir.model.fields,field_description:account_statement_import_ofx.field_account_statement_import____last_update
-msgid "Last Modified on"
-msgstr ""
-
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
msgid "Open Financial Exchange (.OFX Money)"
msgstr ""
#. module: account_statement_import_ofx
+#. odoo-python
#: code:addons/account_statement_import_ofx/wizard/account_statement_import.py:0
#, python-format
msgid ""
From 2dc7a5f4256f76b2df2a9769212c4824719542a2 Mon Sep 17 00:00:00 2001
From: Alexis de Lattre
Date: Thu, 8 Jun 2023 13:30:44 +0000
Subject: [PATCH 07/17] Translated using Weblate (French)
Currently translated at 100.0% (4 of 4 strings)
Translation: bank-statement-import-16.0/bank-statement-import-16.0-account_statement_import_ofx
Translate-URL: https://translation.odoo-community.org/projects/bank-statement-import-16-0/bank-statement-import-16-0-account_statement_import_ofx/fr/
---
account_statement_import_ofx/i18n/fr.po | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/account_statement_import_ofx/i18n/fr.po b/account_statement_import_ofx/i18n/fr.po
index 4651c57657..b434e55c4a 100644
--- a/account_statement_import_ofx/i18n/fr.po
+++ b/account_statement_import_ofx/i18n/fr.po
@@ -9,25 +9,25 @@ msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-04-11 21:55+0000\n"
-"PO-Revision-Date: 2021-04-10 15:02+0000\n"
-"Last-Translator: Yves Le Doeuff \n"
+"PO-Revision-Date: 2023-06-08 14:08+0000\n"
+"Last-Translator: Alexis de Lattre \n"
"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
-"X-Generator: Weblate 4.3.2\n"
+"X-Generator: Weblate 4.17\n"
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
msgid "Import Bank Statement Files"
-msgstr "Importer des Relevés Bancaires"
+msgstr "Import des relevés de compte"
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_journal
msgid "Journal"
-msgstr ""
+msgstr "Journal"
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
@@ -43,8 +43,8 @@ msgid ""
"\n"
" %s"
msgstr ""
-"Le problème suivant est survenu lors de l'importation. Le fichier n'est pas "
-"valide.\n"
+"Le problème suivant est survenu lors de l'import. Le fichier n'est peut-être "
+"pas valide.\n"
"\n"
"%s"
From 3758bc2cf5ee80a8c5752ff94ac6229b22559f07 Mon Sep 17 00:00:00 2001
From: Adriano Prado
Date: Mon, 12 Jun 2023 14:26:10 +0000
Subject: [PATCH 08/17] Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (4 of 4 strings)
Translation: bank-statement-import-16.0/bank-statement-import-16.0-account_statement_import_ofx
Translate-URL: https://translation.odoo-community.org/projects/bank-statement-import-16-0/bank-statement-import-16-0-account_statement_import_ofx/pt_BR/
---
account_statement_import_ofx/README.rst | 15 ++++---
account_statement_import_ofx/i18n/es.po | 4 +-
account_statement_import_ofx/i18n/pt_BR.po | 15 ++++---
.../static/description/index.html | 40 ++++++++++---------
4 files changed, 39 insertions(+), 35 deletions(-)
diff --git a/account_statement_import_ofx/README.rst b/account_statement_import_ofx/README.rst
index a1046759df..a33cfa998b 100644
--- a/account_statement_import_ofx/README.rst
+++ b/account_statement_import_ofx/README.rst
@@ -2,10 +2,13 @@
Import OFX Bank Statement
=========================
-.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+..
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ !! source digest: sha256:1716bd49010fb3f50b7f5ffc4ade620361a09a4b341089d3dc456197bf779819
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png
:target: https://odoo-community.org/page/development-status
@@ -19,11 +22,11 @@ Import OFX Bank Statement
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/bank-statement-import-16-0/bank-statement-import-16-0-account_statement_import_ofx
:alt: Translate me on Weblate
-.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/174/16.0
- :alt: Try me on Runbot
+.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
+ :target: https://runboat.odoo-community.org/builds?repo=OCA/bank-statement-import&target_branch=16.0
+ :alt: Try me on Runboat
-|badge1| |badge2| |badge3| |badge4| |badge5|
+|badge1| |badge2| |badge3| |badge4| |badge5|
This module adds support for the import of bank statements in `OFX format `_.
@@ -47,7 +50,7 @@ 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
+If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback `_.
Do not contact contributors directly about support or help with technical issues.
diff --git a/account_statement_import_ofx/i18n/es.po b/account_statement_import_ofx/i18n/es.po
index a7864321d4..f563436017 100644
--- a/account_statement_import_ofx/i18n/es.po
+++ b/account_statement_import_ofx/i18n/es.po
@@ -10,8 +10,8 @@ msgstr ""
"POT-Creation-Date: 2015-07-24 21:51+0000\n"
"PO-Revision-Date: 2023-05-17 11:34+0000\n"
"Last-Translator: gelo joga Rodríguez \n"
-"Language-Team: Spanish (http://www.transifex.com/oca/"
-"OCA-bank-statement-import-8-0/language/es/)\n"
+"Language-Team: Spanish (http://www.transifex.com/oca/OCA-bank-statement-"
+"import-8-0/language/es/)\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
diff --git a/account_statement_import_ofx/i18n/pt_BR.po b/account_statement_import_ofx/i18n/pt_BR.po
index 45a69167e9..be00aeefe5 100644
--- a/account_statement_import_ofx/i18n/pt_BR.po
+++ b/account_statement_import_ofx/i18n/pt_BR.po
@@ -9,27 +9,26 @@ msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-21 01:42+0000\n"
-"PO-Revision-Date: 2019-08-26 15:01+0000\n"
-"Last-Translator: Rodrigo Macedo \n"
-"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/"
-"teams/23907/pt_BR/)\n"
+"PO-Revision-Date: 2023-12-28 23:48+0000\n"
+"Last-Translator: Adriano Prado \n"
+"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/teams/"
+"23907/pt_BR/)\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
-"X-Generator: Weblate 3.8\n"
+"X-Generator: Weblate 4.17\n"
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_statement_import
-#, fuzzy
msgid "Import Bank Statement Files"
-msgstr "Importar Extrato Bancário"
+msgstr "Importar Arquivos Extrato Bancário"
#. module: account_statement_import_ofx
#: model:ir.model,name:account_statement_import_ofx.model_account_journal
msgid "Journal"
-msgstr ""
+msgstr "Diário"
#. module: account_statement_import_ofx
#: model_terms:ir.ui.view,arch_db:account_statement_import_ofx.account_statement_import_form
diff --git a/account_statement_import_ofx/static/description/index.html b/account_statement_import_ofx/static/description/index.html
index 1d213aadc0..dcacafd35c 100644
--- a/account_statement_import_ofx/static/description/index.html
+++ b/account_statement_import_ofx/static/description/index.html
@@ -1,20 +1,20 @@
-
+
-
+
Import OFX Bank Statement
-
-
Import OFX Bank Statement
+
+
+
+
+
+
+
Import OFX Bank Statement
-

+

This module adds support for the import of bank statements in OFX
format.
Bank Statements may be generated containing a subset of the OFX
@@ -391,22 +396,22 @@
Import OFX Bank Statement
-
+
This module requires the
ofxparse python lib.
-
+
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 to smash it by providing a detailed and welcomed
-feedback.
+
feedback.
Do not contact contributors directly about support or help with technical issues.
-
+
-
+
- Odoo SA
- Akretion
@@ -417,7 +422,7 @@
+
diff --git a/account_statement_import_ofx/wizard/account_statement_import.py b/account_statement_import_ofx/wizard/account_statement_import.py
index 2c6acf81ed..c7196df212 100644
--- a/account_statement_import_ofx/wizard/account_statement_import.py
+++ b/account_statement_import_ofx/wizard/account_statement_import.py
@@ -1,7 +1,7 @@
import io
import logging
-from odoo import _, api, models
+from odoo import api, models
from odoo.exceptions import UserError
_logger = logging.getLogger(__name__)
@@ -77,10 +77,10 @@ def _parse_file(self, data_file):
)
except Exception as e:
raise UserError(
- _(
+ self.env._(
"The following problem occurred during import. "
- "The file might not be valid.\n\n %s"
+ "The file might not be valid.\n\n %s",
+ str(e),
)
- % str(e)
) from e
return result
diff --git a/requirements.txt b/requirements.txt
index 542d351c7a..6fff9265e8 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,2 +1,3 @@
# generated from manifests external_dependencies
+ofxparse
xlrd
From fd37ab6d132b60baa5d8f66b4bc60750bee1db1d Mon Sep 17 00:00:00 2001
From: Ken Woychesko
Date: Sat, 18 Apr 2026 19:17:24 -0400
Subject: [PATCH 14/17] [IMP] account_statement_import_ofx: improve test
coverage
Fix and extend tests to address codecov/patch failures:
- Enable previously disabled IBAN import test (was prefixed no_test_)
and fix bank account number to match OFX ACCTID field
- Add test for checknum and memo fields in payment_ref construction
- Add test for _parse_file error handling (UserError on bad data)
- Add test for non-OFX file fallback to super()._parse_file
- Add OFX fixture with CHECKNUM and MEMO transaction fields
---
.../tests/test_import_bank_statement.py | 73 +++++++++++++++++--
.../test_ofx_file/test_ofx_checknum_memo.ofx | 48 ++++++++++++
2 files changed, 115 insertions(+), 6 deletions(-)
create mode 100644 account_statement_import_ofx/tests/test_ofx_file/test_ofx_checknum_memo.ofx
diff --git a/account_statement_import_ofx/tests/test_import_bank_statement.py b/account_statement_import_ofx/tests/test_import_bank_statement.py
index c6f01fe768..ccd78450ab 100644
--- a/account_statement_import_ofx/tests/test_import_bank_statement.py
+++ b/account_statement_import_ofx/tests/test_import_bank_statement.py
@@ -1,13 +1,15 @@
import base64
import datetime
+from unittest.mock import patch
import odoo.tests.common as common
+from odoo.exceptions import UserError
from odoo.tools import file_open
class TestOfxFile(common.TransactionCase):
"""Tests for import bank statement ofx file format
- (account.bank.statement.import)
+ (account.statement.import)
"""
@classmethod
@@ -36,7 +38,7 @@ def setUpClass(cls):
)
bank_iban_ofx = cls.env["res.partner.bank"].create(
{
- "acc_number": "FR7630001007941234567890185",
+ "acc_number": "12345678901",
"partner_id": cls.env.ref("base.main_partner").id,
"company_id": cls.env.ref("base.main_company").id,
"bank_id": cls.env.ref("base.res_bank_1").id,
@@ -44,7 +46,7 @@ def setUpClass(cls):
)
cls.env["account.journal"].create(
{
- "name": "FR7630001007941234567890185",
+ "name": "Bank Journal TEST OFX IBAN",
"code": "BNK13",
"type": "bank",
"bank_account_id": bank_iban_ofx.id,
@@ -65,7 +67,9 @@ def test_wrong_ofx_file_import(self):
self.assertFalse(wizard._check_ofx(data_file=ofx_bin_wrong))
def test_ofx_file_import(self):
- ofx_path = "account_statement_import_ofx/tests/test_ofx_file/test_ofx.ofx"
+ ofx_path = (
+ "account_statement_import_ofx/tests/test_ofx_file/test_ofx.ofx"
+ )
with file_open(ofx_path, "rb") as ofx_file:
ofx_bin = ofx_file.read()
wizard = self.asi_model.create(
@@ -75,7 +79,9 @@ def test_ofx_file_import(self):
}
)
wizard.import_file_button()
- bank_st_record = self.abs_model.search([("name", "like", "123456")])[0]
+ bank_st_record = self.abs_model.search(
+ [("name", "like", "123456")]
+ )[0]
self.assertEqual(bank_st_record.balance_start, 2516.56)
self.assertEqual(bank_st_record.balance_end_real, 2156.56)
@@ -87,7 +93,7 @@ def test_ofx_file_import(self):
)[0]
self.assertEqual(line.date, datetime.date(2013, 8, 24))
- def no_test_check_journal_bank_account(self):
+ def test_ofx_iban_file_import(self):
ofx_path = "account_statement_import_ofx/tests/test_ofx_file/test_ofx_iban.ofx"
with file_open(ofx_path, "rb") as ofx_file:
ofx_bin = ofx_file.read()
@@ -98,3 +104,58 @@ def no_test_check_journal_bank_account(self):
}
)
wizard.import_file_button()
+ bank_st_record = self.abs_model.search(
+ [("name", "like", "12345678901")]
+ )[0]
+ self.assertEqual(bank_st_record.balance_end_real, 2156.56)
+
+ def test_ofx_transaction_checknum_and_memo(self):
+ ofx_path = (
+ "account_statement_import_ofx/tests/test_ofx_file/"
+ "test_ofx_checknum_memo.ofx"
+ )
+ with file_open(ofx_path, "rb") as ofx_file:
+ ofx_bin = ofx_file.read()
+ wizard = self.asi_model.create(
+ {
+ "statement_file": base64.b64encode(ofx_bin),
+ "statement_filename": "test_ofx_checknum_memo.ofx",
+ }
+ )
+ wizard.import_file_button()
+ line = self.absl_model.search(
+ [("payment_ref", "like", "Office Supplies")]
+ )[0]
+ self.assertIn("1001", line.payment_ref)
+ self.assertIn("Paper and pens for Q3", line.payment_ref)
+
+ def test_parse_file_error_handling(self):
+ ofx_path = (
+ "account_statement_import_ofx/tests/test_ofx_file/test_ofx.ofx"
+ )
+ with file_open(ofx_path, "rb") as ofx_file:
+ ofx_bin = ofx_file.read()
+ wizard = self.asi_model.create(
+ {
+ "statement_file": base64.b64encode(ofx_bin),
+ "statement_filename": "test_ofx.ofx",
+ }
+ )
+ ofx = wizard._check_ofx(ofx_bin)
+ with patch.object(type(wizard), "_check_ofx", return_value=ofx):
+ # Make account iteration fail by breaking the balance attribute
+ for account in ofx.accounts:
+ account.statement.balance = "not_a_number"
+ with self.assertRaises(UserError):
+ wizard._parse_file(ofx_bin)
+
+ def test_parse_non_ofx_file(self):
+ non_ofx_data = b"This is not an OFX file"
+ wizard = self.asi_model.create(
+ {
+ "statement_file": base64.b64encode(non_ofx_data),
+ "statement_filename": "test.txt",
+ }
+ )
+ with self.assertRaises(UserError):
+ wizard._parse_file(non_ofx_data)
diff --git a/account_statement_import_ofx/tests/test_ofx_file/test_ofx_checknum_memo.ofx b/account_statement_import_ofx/tests/test_ofx_file/test_ofx_checknum_memo.ofx
new file mode 100644
index 0000000000..d837f1dcaf
--- /dev/null
+++ b/account_statement_import_ofx/tests/test_ofx_file/test_ofx_checknum_memo.ofx
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+ 0
+ INFO
+
+ 20130831165153.000[-8:PST]
+ ENG
+
+
+
+
+ 0
+
+ 0
+ INFO
+
+
+ USD
+
+ 000000123
+ 123456
+ CHECKING
+
+
+ 20130801
+ 20130831165153.000[-8:PST]
+
+ CHECK
+ 20130824080000
+ -150
+ 219400
+ 1001
+ Office Supplies
+ Paper and pens for Q3
+
+
+
+ 2006.56
+ 20130831165153
+
+
+
+
+
\ No newline at end of file
From 1c14af1becc9b1c1c13da289a2dbcd8b00e7ab1b Mon Sep 17 00:00:00 2001
From: Ken Woychesko
Date: Sat, 18 Apr 2026 19:21:25 -0400
Subject: [PATCH 15/17] [FIX] account_statement_import_ofx: fix pre-commit
formatting
- Reformat test file with ruff-format (default line length 88)
- Add missing trailing newline to OFX test fixture
---
.../tests/test_import_bank_statement.py | 22 ++++++-------------
.../test_ofx_file/test_ofx_checknum_memo.ofx | 2 +-
2 files changed, 8 insertions(+), 16 deletions(-)
diff --git a/account_statement_import_ofx/tests/test_import_bank_statement.py b/account_statement_import_ofx/tests/test_import_bank_statement.py
index ccd78450ab..3b4434c6f1 100644
--- a/account_statement_import_ofx/tests/test_import_bank_statement.py
+++ b/account_statement_import_ofx/tests/test_import_bank_statement.py
@@ -67,9 +67,7 @@ def test_wrong_ofx_file_import(self):
self.assertFalse(wizard._check_ofx(data_file=ofx_bin_wrong))
def test_ofx_file_import(self):
- ofx_path = (
- "account_statement_import_ofx/tests/test_ofx_file/test_ofx.ofx"
- )
+ ofx_path = "account_statement_import_ofx/tests/test_ofx_file/test_ofx.ofx"
with file_open(ofx_path, "rb") as ofx_file:
ofx_bin = ofx_file.read()
wizard = self.asi_model.create(
@@ -79,9 +77,7 @@ def test_ofx_file_import(self):
}
)
wizard.import_file_button()
- bank_st_record = self.abs_model.search(
- [("name", "like", "123456")]
- )[0]
+ bank_st_record = self.abs_model.search([("name", "like", "123456")])[0]
self.assertEqual(bank_st_record.balance_start, 2516.56)
self.assertEqual(bank_st_record.balance_end_real, 2156.56)
@@ -104,9 +100,7 @@ def test_ofx_iban_file_import(self):
}
)
wizard.import_file_button()
- bank_st_record = self.abs_model.search(
- [("name", "like", "12345678901")]
- )[0]
+ bank_st_record = self.abs_model.search([("name", "like", "12345678901")])[0]
self.assertEqual(bank_st_record.balance_end_real, 2156.56)
def test_ofx_transaction_checknum_and_memo(self):
@@ -123,16 +117,14 @@ def test_ofx_transaction_checknum_and_memo(self):
}
)
wizard.import_file_button()
- line = self.absl_model.search(
- [("payment_ref", "like", "Office Supplies")]
- )[0]
+ line = self.absl_model.search([("payment_ref", "like", "Office Supplies")])[
+ 0
+ ]
self.assertIn("1001", line.payment_ref)
self.assertIn("Paper and pens for Q3", line.payment_ref)
def test_parse_file_error_handling(self):
- ofx_path = (
- "account_statement_import_ofx/tests/test_ofx_file/test_ofx.ofx"
- )
+ ofx_path = "account_statement_import_ofx/tests/test_ofx_file/test_ofx.ofx"
with file_open(ofx_path, "rb") as ofx_file:
ofx_bin = ofx_file.read()
wizard = self.asi_model.create(
diff --git a/account_statement_import_ofx/tests/test_ofx_file/test_ofx_checknum_memo.ofx b/account_statement_import_ofx/tests/test_ofx_file/test_ofx_checknum_memo.ofx
index d837f1dcaf..3f6caff3fa 100644
--- a/account_statement_import_ofx/tests/test_ofx_file/test_ofx_checknum_memo.ofx
+++ b/account_statement_import_ofx/tests/test_ofx_file/test_ofx_checknum_memo.ofx
@@ -45,4 +45,4 @@
-
\ No newline at end of file
+
From b0585282e65139201bb531afc467e7a442aea1c8 Mon Sep 17 00:00:00 2001
From: Ken Woychesko
Date: Sat, 18 Apr 2026 19:36:13 -0400
Subject: [PATCH 16/17] [FIX] account_statement_import_ofx: avoid ERROR log in
non-OFX test
Calling _parse_file with non-OFX data cascades through the CAMT
parser which logs an ERROR for BadZipFile, causing the OCA CI log
checker to fail. Test _check_ofx directly instead.
---
.../tests/test_import_bank_statement.py | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/account_statement_import_ofx/tests/test_import_bank_statement.py b/account_statement_import_ofx/tests/test_import_bank_statement.py
index 3b4434c6f1..eada0871a3 100644
--- a/account_statement_import_ofx/tests/test_import_bank_statement.py
+++ b/account_statement_import_ofx/tests/test_import_bank_statement.py
@@ -149,5 +149,4 @@ def test_parse_non_ofx_file(self):
"statement_filename": "test.txt",
}
)
- with self.assertRaises(UserError):
- wizard._parse_file(non_ofx_data)
+ self.assertFalse(wizard._check_ofx(non_ofx_data))
From 861d9610f3aa24cbbdf45578ceba8377aecab8fc Mon Sep 17 00:00:00 2001
From: Ken Woychesko
Date: Sun, 19 Apr 2026 11:12:34 -0400
Subject: [PATCH 17/17] [FIX] account_statement_import_ofx: ensure suspense
account in tests
Ensure a suspense account exists on the company before creating test
journals. Without this, bank statement line creation fails with:
"You can't create a new statement line without a suspense account set
on the journal."
---
.../tests/test_import_bank_statement.py | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/account_statement_import_ofx/tests/test_import_bank_statement.py b/account_statement_import_ofx/tests/test_import_bank_statement.py
index eada0871a3..41d3d05027 100644
--- a/account_statement_import_ofx/tests/test_import_bank_statement.py
+++ b/account_statement_import_ofx/tests/test_import_bank_statement.py
@@ -19,11 +19,22 @@ def setUpClass(cls):
cls.abs_model = cls.env["account.bank.statement"]
cls.absl_model = cls.env["account.bank.statement.line"]
cur = cls.env.ref("base.USD")
+ company = cls.env.ref("base.main_company")
+ suspense_account = company.account_journal_suspense_account_id
+ if not suspense_account:
+ suspense_account = cls.env["account.account"].create(
+ {
+ "name": "Suspense Account",
+ "code": "999999",
+ "account_type": "asset_current",
+ }
+ )
+ company.account_journal_suspense_account_id = suspense_account
bank = cls.env["res.partner.bank"].create(
{
"acc_number": "123456",
"partner_id": cls.env.ref("base.main_partner").id,
- "company_id": cls.env.ref("base.main_company").id,
+ "company_id": company.id,
"bank_id": cls.env.ref("base.res_bank_1").id,
}
)
@@ -40,7 +51,7 @@ def setUpClass(cls):
{
"acc_number": "12345678901",
"partner_id": cls.env.ref("base.main_partner").id,
- "company_id": cls.env.ref("base.main_company").id,
+ "company_id": company.id,
"bank_id": cls.env.ref("base.res_bank_1").id,
}
)