[tryton-debian-vcs] tryton-modules-account-payment-sepa branch debian updated. debian/3.8.2-2-5-g013033e

Mathias Behrle tryton-debian-vcs at alioth.debian.org
Thu Jun 2 16:07:57 UTC 2016


The following commit has been merged in the debian branch:
https://alioth.debian.org/plugins/scmgit/cgi-bin/gitweb.cgi/?p=tryton/tryton-modules-account-payment-sepa.git;a=commitdiff;h=debian/3.8.2-2-5-g013033e

commit 013033e15294bf94ccdc6788ea58d55e27402e91
Author: Mathias Behrle <mathiasb at m9s.biz>
Date:   Wed Jun 1 21:47:14 2016 +0200

    Releasing debian version 4.0.1-1.
    
    Signed-off-by: Mathias Behrle <mathiasb at m9s.biz>

diff --git a/debian/changelog b/debian/changelog
index 7fdc9b5..1cf401c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+tryton-modules-account-payment-sepa (4.0.1-1) unstable; urgency=medium
+
+  * Updating signing-key.asc with the actual upstream maintainer keys.
+  * Merging upstream version 4.0.0.
+  * Merging upstream version 4.0.1.
+  * Updating the copyright file.
+
+ -- Mathias Behrle <mathiasb at m9s.biz>  Mon, 30 May 2016 19:27:15 +0200
+
 tryton-modules-account-payment-sepa (3.8.2-2) unstable; urgency=medium
 
   * Updating to standards version 3.9.7, no changes needed.
commit 96ec8a49d612a2cb2f8ffaa59bf6c5fd330a7a3e
Author: Mathias Behrle <mathiasb at m9s.biz>
Date:   Fri May 27 19:01:03 2016 +0200

    Updating the copyright file.

diff --git a/debian/copyright b/debian/copyright
index 25f4f72..36feed7 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -6,7 +6,7 @@ Copyright: 2013-2016 Cédric Krier
 License: GPL-3+
 
 Files: debian/*
-Copyright: 2014-2015 Mathias Behrle <mathiasb at m9s.biz>
+Copyright: 2014-2016 Mathias Behrle <mathiasb at m9s.biz>
 License: GPL-3+
 
 License: GPL-3+
commit ccf231f37e0c1dca301bfbe6914687fcd3c18009
Author: Mathias Behrle <mathiasb at m9s.biz>
Date:   Fri May 27 18:35:10 2016 +0200

    Merging upstream version 4.0.1.

diff --git a/CHANGELOG b/CHANGELOG
index 695b192..e03bef5 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 4.0.1 - 2016-05-11
+* Bug fixes (see mercurial logs for details)
+
 Version 4.0.0 - 2016-05-02
 * Bug fixes (see mercurial logs for details)
 * Add Python3 support
diff --git a/PKG-INFO b/PKG-INFO
index b81ce46..ce932e1 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: trytond_account_payment_sepa
-Version: 4.0.0
+Version: 4.0.1
 Summary: Tryton module for SEPA payment
 Home-page: http://www.tryton.org/
 Author: Tryton
diff --git a/locale/bg_BG.po b/locale/bg_BG.po
index b7801ec..cb518b8 100644
--- a/locale/bg_BG.po
+++ b/locale/bg_BG.po
@@ -283,9 +283,10 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
+#, fuzzy
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
-msgstr ""
+msgstr "."
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
diff --git a/locale/cs_CZ.po b/locale/cs_CZ.po
index 6c501b8..abf3f57 100644
--- a/locale/cs_CZ.po
+++ b/locale/cs_CZ.po
@@ -259,9 +259,10 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
+#, fuzzy
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
-msgstr ""
+msgstr "."
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
diff --git a/locale/es_MX.po b/locale/es_MX.po
index aafc441..4989491 100644
--- a/locale/es_MX.po
+++ b/locale/es_MX.po
@@ -261,9 +261,10 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr "Mensajes SEPA"
 
+#, fuzzy
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
-msgstr ""
+msgstr "."
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
diff --git a/locale/fr_FR.po b/locale/fr_FR.po
index a75eb2e..ca43264 100644
--- a/locale/fr_FR.po
+++ b/locale/fr_FR.po
@@ -263,7 +263,7 @@ msgstr "Messages SEPA"
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
-msgstr ""
+msgstr "."
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
diff --git a/locale/hu_HU.po b/locale/hu_HU.po
index 6c501b8..abf3f57 100644
--- a/locale/hu_HU.po
+++ b/locale/hu_HU.po
@@ -259,9 +259,10 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
+#, fuzzy
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
-msgstr ""
+msgstr "."
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
diff --git a/locale/it_IT.po b/locale/it_IT.po
index 6c501b8..abf3f57 100644
--- a/locale/it_IT.po
+++ b/locale/it_IT.po
@@ -259,9 +259,10 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
+#, fuzzy
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
-msgstr ""
+msgstr "."
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
diff --git a/locale/ja_JP.po b/locale/ja_JP.po
index 6c501b8..abf3f57 100644
--- a/locale/ja_JP.po
+++ b/locale/ja_JP.po
@@ -259,9 +259,10 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
+#, fuzzy
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
-msgstr ""
+msgstr "."
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
diff --git a/locale/lo_LA.po b/locale/lo_LA.po
index 6c501b8..abf3f57 100644
--- a/locale/lo_LA.po
+++ b/locale/lo_LA.po
@@ -259,9 +259,10 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
+#, fuzzy
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
-msgstr ""
+msgstr "."
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
diff --git a/locale/lt_LT.po b/locale/lt_LT.po
index 6c501b8..abf3f57 100644
--- a/locale/lt_LT.po
+++ b/locale/lt_LT.po
@@ -259,9 +259,10 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
+#, fuzzy
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
-msgstr ""
+msgstr "."
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
diff --git a/locale/nl_NL.po b/locale/nl_NL.po
index b92f95c..e8bdade 100644
--- a/locale/nl_NL.po
+++ b/locale/nl_NL.po
@@ -272,9 +272,10 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
+#, fuzzy
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
-msgstr ""
+msgstr "."
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
diff --git a/locale/ru_RU.po b/locale/ru_RU.po
index 9244558..f8a4c52 100644
--- a/locale/ru_RU.po
+++ b/locale/ru_RU.po
@@ -284,9 +284,10 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
+#, fuzzy
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
-msgstr ""
+msgstr "."
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
diff --git a/locale/zh_CN.po b/locale/zh_CN.po
index 6c501b8..abf3f57 100644
--- a/locale/zh_CN.po
+++ b/locale/zh_CN.po
@@ -259,9 +259,10 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
+#, fuzzy
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
-msgstr ""
+msgstr "."
 
 msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
diff --git a/tests/camt.054.001.01.xml b/tests/camt.054.001.01.xml
new file mode 100644
index 0000000..d515aaf
--- /dev/null
+++ b/tests/camt.054.001.01.xml
@@ -0,0 +1,67 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<Document xmlns = "urn:iso:std:iso:20022:tech:xsd:camt.054.001.01" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance">
+	<BkToCstmrDbtCdtNtfctnV01>
+		<GrpHdr>
+			<MsgId>AAAASESS-FP-00001</MsgId>
+			<CreDtTm>2007-10-18T13:20:00+01:00</CreDtTm>
+		</GrpHdr>
+		<Ntfctn>
+			<Id>AAAASESS-FP-CN-98765</Id>
+			<CreDtTm>2007-10-18T13:20:00+01:00</CreDtTm>
+			<Acct>
+				<Id>
+					<PrtryAcct>
+						<Id>50000000054910000003</Id>
+					</PrtryAcct>
+				</Id>
+				<Ownr>
+					<Nm>FINPETROL</Nm>
+				</Ownr>
+				<Svcr>
+					<FinInstnId>
+						<NmAndAdr>
+							<Nm>AAAA BANKEN</Nm>
+							<PstlAdr>
+								<Ctry>SE</Ctry>
+							</PstlAdr>
+						</NmAndAdr>
+					</FinInstnId>
+				</Svcr>
+			</Acct>
+			<Ntry>
+				<Amt Ccy = "SEK">105678.50</Amt>
+				<CdtDbtInd>CRDT</CdtDbtInd>
+				<Sts>BOOK</Sts>
+				<BookgDt>
+					<DtTm> 2007-10-18T13:15:00+01:00</DtTm>
+				</BookgDt>
+				<ValDt>
+					<Dt>2007-10-18</Dt>
+				</ValDt>
+				<AcctSvcrRef>AAAASESS-FP-CN-98765/01</AcctSvcrRef>
+				<BkTxCd>
+					<Domn>
+						<Cd>PAYM</Cd>
+						<Fmly>
+							<Cd>0001</Cd>
+							<SubFmlyCd>0005</SubFmlyCd>
+						</Fmly>
+					</Domn>
+				</BkTxCd>
+				<TxDtls>
+					<Refs>
+						<EndToEndId>MUELL/FINP/RA12345</EndToEndId>
+					</Refs>
+					<RltdPties>
+						<Dbtr>
+							<Nm>MUELLER</Nm>
+							<PstlAdr>
+								<Ctry>DE</Ctry>
+							</PstlAdr>
+						</Dbtr>
+					</RltdPties>
+				</TxDtls>
+			</Ntry>
+		</Ntfctn>
+	</BkToCstmrDbtCdtNtfctnV01>
+</Document>
\ No newline at end of file
diff --git a/tests/camt.054.001.02.xml b/tests/camt.054.001.02.xml
new file mode 100644
index 0000000..bc36d1a
--- /dev/null
+++ b/tests/camt.054.001.02.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Document xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:iso:std:iso:20022:tech:xsd:camt.054.001.02">
+	<BkToCstmrDbtCdtNtfctn>
+		<GrpHdr>
+			<MsgId>AAAASESS-FP-00001</MsgId>
+			<CreDtTm>2010-10-18T13:20:00+01:00</CreDtTm>
+		</GrpHdr>
+		<Ntfctn>
+			<Id>AAAASESS-FP-CN-98765</Id>
+			<CreDtTm>2010-10-18T13:20:00+01:00</CreDtTm>
+			<Acct>
+				<Id>
+					<Othr>
+						<Id>50000000054910000003</Id>
+					</Othr>
+				</Id>
+				<Ownr>
+					<Nm>FINPETROL</Nm>
+				</Ownr>
+				<Svcr>
+					<FinInstnId>
+						<Nm>AAAA BANKEN</Nm>
+						<PstlAdr>
+							<Ctry>SE</Ctry>
+						</PstlAdr>
+					</FinInstnId>
+				</Svcr>
+			</Acct>
+			<Ntry>
+				<Amt Ccy="SEK">105678.50</Amt>
+				<CdtDbtInd>CRDT</CdtDbtInd>
+				<Sts>BOOK</Sts>
+				<BookgDt>
+					<DtTm>2010-10-18T13:15:00+01:00</DtTm>
+				</BookgDt>
+				<ValDt>
+					<Dt>2010-10-18</Dt>
+				</ValDt>
+				<AcctSvcrRef>AAAASESS-FP-CN-98765/01</AcctSvcrRef>
+				<BkTxCd>
+					<Domn>
+						<Cd>PAYM</Cd>
+						<Fmly>
+							<Cd>0001</Cd>
+							<SubFmlyCd>0005</SubFmlyCd>
+						</Fmly>
+					</Domn>
+				</BkTxCd>
+				<NtryDtls>
+					<TxDtls>
+						<Refs>
+							<EndToEndId>MUELL/FINP/RA12345</EndToEndId>
+						</Refs>
+						<RltdPties>
+							<Dbtr>
+								<Nm>MUELLER</Nm>
+							</Dbtr>
+						</RltdPties>
+					</TxDtls>
+				</NtryDtls>
+			</Ntry>
+		</Ntfctn>
+	</BkToCstmrDbtCdtNtfctn>
+</Document>
diff --git a/tests/camt.054.001.03.xml b/tests/camt.054.001.03.xml
new file mode 100644
index 0000000..6577518
--- /dev/null
+++ b/tests/camt.054.001.03.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?Standards Smart Test Messages for SEPA Credit Transfer Scheme product version 3.0?>
+<?valid true?>
+<?description Besides providing an intraday AccountReport at 12.30 PM (see example with BankToCustomerAccountReport), AAAA Banken and Finpetrol have agreed on a credit notification service, for all incoming credits above a certain threshold. On 18 October 2010, at 1.20 PM, AAAASESS sends a BankToCustomerDebitCreditNotification to Company Finpetrol, to advise Finpetrol of an incoming credit on its account.?>
+<Document xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:iso:std:iso:20022:tech:xsd:camt.054.001.03" xsi:schemaLocation="urn:iso:std:iso:20022:tech:xsd:camt.054.001.03 file:///C:/No_Backup/tmp/camt.054.001.03.xsd">
+	<BkToCstmrDbtCdtNtfctn>
+		<GrpHdr>
+			<MsgId>AAAASESS-FP-00001</MsgId>
+			<CreDtTm>2010-10-18T13:20:00+01:00</CreDtTm>
+		</GrpHdr>
+		<Ntfctn>
+			<Id>AAAASESS-FP-CN-98765</Id>
+			<CreDtTm>2010-10-18T13:20:00+01:00</CreDtTm>
+			<Acct>
+				<Id>
+					<Othr>
+						<Id>50000000054910000003</Id>
+					</Othr>
+				</Id>
+				<Ownr>
+					<Nm>FINPETROL</Nm>
+				</Ownr>
+				<Svcr>
+					<FinInstnId>
+						<Nm>AAAA BANKEN</Nm>
+						<PstlAdr>
+							<Ctry>SE</Ctry>
+						</PstlAdr>
+					</FinInstnId>
+				</Svcr>
+			</Acct>
+			<Ntry>
+				<Amt Ccy="SEK">105678.50</Amt>
+				<CdtDbtInd>CRDT</CdtDbtInd>
+				<Sts>BOOK</Sts>
+				<BookgDt>
+					<DtTm>2010-10-18T13:15:00+01:00</DtTm>
+				</BookgDt>
+				<ValDt>
+					<Dt>2010-10-18</Dt>
+				</ValDt>
+				<AcctSvcrRef>AAAASESS-FP-CN-98765/01</AcctSvcrRef>
+				<BkTxCd>
+					<Domn>
+						<Cd>PAYM</Cd>
+						<Fmly>
+							<Cd>0001</Cd>
+							<SubFmlyCd>0005</SubFmlyCd>
+						</Fmly>
+					</Domn>
+				</BkTxCd>
+				<NtryDtls>
+					<TxDtls>
+						<Refs>
+							<EndToEndId>MUELL/FINP/RA12345</EndToEndId>
+						</Refs>
+						<Amt Ccy="SEK">105678.50</Amt>
+						<CdtDbtInd>CRDT</CdtDbtInd>
+						<RltdPties>
+							<Dbtr>
+								<Nm>MUELLER</Nm>
+							</Dbtr>
+						</RltdPties>
+					</TxDtls>
+				</NtryDtls>
+			</Ntry>
+		</Ntfctn>
+	</BkToCstmrDbtCdtNtfctn>
+</Document>
diff --git a/tests/camt.054.001.04.xml b/tests/camt.054.001.04.xml
new file mode 100644
index 0000000..1ce16a7
--- /dev/null
+++ b/tests/camt.054.001.04.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?Standards Smart Test Messages for SEPA Credit Transfer Scheme product version 3.0?>
+<?valid true?>
+<?description Besides providing an intraday AccountReport at 12.30 PM (see example with BankToCustomerAccountReport), AAAA Banken and Finpetrol have agreed on a credit notification service, for all incoming credits above a certain threshold. On 18 October 2010, at 1.20 PM, AAAASESS sends a BankToCustomerDebitCreditNotification to Company Finpetrol, to advise Finpetrol of an incoming credit on its account.?>
+<Document xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:iso:std:iso:20022:tech:xsd:camt.054.001.04" xsi:schemaLocation="urn:iso:std:iso:20022:tech:xsd:camt.054.001.04 file://BE-FILE01/tverschu$/SR%20(Standards%20Release)/SR2013/ISO/Bank-To-Customer%20Cash%20Management/camt.054.001.04.xsd">
+	<BkToCstmrDbtCdtNtfctn>
+		<GrpHdr>
+			<MsgId>AAAASESS-FP-00001</MsgId>
+			<CreDtTm>2010-10-18T13:20:00+01:00</CreDtTm>
+		</GrpHdr>
+		<Ntfctn>
+			<Id>AAAASESS-FP-CN-98765</Id>
+			<CreDtTm>2010-10-18T13:20:00+01:00</CreDtTm>
+			<Acct>
+				<Id>
+					<Othr>
+						<Id>50000000054910000003</Id>
+					</Othr>
+				</Id>
+				<Ownr>
+					<Nm>FINPETROL</Nm>
+				</Ownr>
+				<Svcr>
+					<FinInstnId>
+						<Nm>AAAA BANKEN</Nm>
+						<PstlAdr>
+							<Ctry>SE</Ctry>
+						</PstlAdr>
+					</FinInstnId>
+				</Svcr>
+			</Acct>
+			<Ntry>
+				<Amt Ccy="SEK">105678.50</Amt>
+				<CdtDbtInd>CRDT</CdtDbtInd>
+				<Sts>BOOK</Sts>
+				<BookgDt>
+					<DtTm>2010-10-18T13:15:00+01:00</DtTm>
+				</BookgDt>
+				<ValDt>
+					<Dt>2010-10-18</Dt>
+				</ValDt>
+				<AcctSvcrRef>AAAASESS-FP-CN-98765/01</AcctSvcrRef>
+				<BkTxCd>
+					<Domn>
+						<Cd>PAYM</Cd>
+						<Fmly>
+							<Cd>0001</Cd>
+							<SubFmlyCd>0005</SubFmlyCd>
+						</Fmly>
+					</Domn>
+				</BkTxCd>
+				<NtryDtls>
+					<TxDtls>
+						<Refs>
+							<EndToEndId>MUELL/FINP/RA12345</EndToEndId>
+						</Refs>
+						<Amt Ccy="SEK">0</Amt>
+						<CdtDbtInd>CRDT</CdtDbtInd>
+						<RltdPties>
+							<Dbtr>
+								<Nm>MUELLER</Nm>
+							</Dbtr>
+						</RltdPties>
+					</TxDtls>
+				</NtryDtls>
+			</Ntry>
+		</Ntfctn>
+	</BkToCstmrDbtCdtNtfctn>
+</Document>
diff --git a/tryton.cfg b/tryton.cfg
index caaba9b..3a43c3d 100644
--- a/tryton.cfg
+++ b/tryton.cfg
@@ -1,5 +1,5 @@
 [tryton]
-version=4.0.0
+version=4.0.1
 depends:
     account_payment
     company
diff --git a/trytond_account_payment_sepa.egg-info/PKG-INFO b/trytond_account_payment_sepa.egg-info/PKG-INFO
index d03120c..005bfb9 100644
--- a/trytond_account_payment_sepa.egg-info/PKG-INFO
+++ b/trytond_account_payment_sepa.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: trytond-account-payment-sepa
-Version: 4.0.0
+Version: 4.0.1
 Summary: Tryton module for SEPA payment
 Home-page: http://www.tryton.org/
 Author: Tryton
diff --git a/trytond_account_payment_sepa.egg-info/SOURCES.txt b/trytond_account_payment_sepa.egg-info/SOURCES.txt
index 0cf2e82..bb361c9 100644
--- a/trytond_account_payment_sepa.egg-info/SOURCES.txt
+++ b/trytond_account_payment_sepa.egg-info/SOURCES.txt
@@ -33,11 +33,13 @@ tryton.cfg
 ./locale/hu_HU.po
 ./locale/it_IT.po
 ./locale/ja_JP.po
+./locale/lo_LA.po
 ./locale/lt_LT.po
 ./locale/nl_NL.po
 ./locale/pt_BR.po
 ./locale/ru_RU.po
 ./locale/sl_SI.po
+./locale/zh_CN.po
 ./template/base.003.xml
 ./template/base.xml
 ./template/pain.001.001.03.xml
@@ -47,9 +49,13 @@ tryton.cfg
 ./template/pain.008.001.04.xml
 ./template/pain.008.003.02.xml
 ./tests/__init__.py
+./tests/camt.054.001.01.xml
 ./tests/camt.054.001.01.xsd
+./tests/camt.054.001.02.xml
 ./tests/camt.054.001.02.xsd
+./tests/camt.054.001.03.xml
 ./tests/camt.054.001.03.xsd
+./tests/camt.054.001.04.xml
 ./tests/camt.054.001.04.xsd
 ./tests/pain.001.001.03.xsd
 ./tests/pain.001.001.05.xsd
diff --git a/trytond_account_payment_sepa.egg-info/requires.txt b/trytond_account_payment_sepa.egg-info/requires.txt
index 8b09656..27d5a8f 100644
--- a/trytond_account_payment_sepa.egg-info/requires.txt
+++ b/trytond_account_payment_sepa.egg-info/requires.txt
@@ -5,4 +5,4 @@ trytond_account_payment >= 4.0, < 4.1
 trytond_company >= 4.0, < 4.1
 trytond_bank >= 4.0, < 4.1
 trytond_party >= 4.0, < 4.1
-trytond >= 4.0, < 4.1
\ No newline at end of file
+trytond >= 4.0, < 4.1
commit 3b3abe71461b17ae7fddf891b2d18413948c35a1
Author: Mathias Behrle <mathiasb at m9s.biz>
Date:   Fri May 27 18:25:50 2016 +0200

    Merging upstream version 4.0.0.

diff --git a/CHANGELOG b/CHANGELOG
index d5e8dd1..695b192 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,8 +1,6 @@
-Version 3.8.2 - 2016-02-06
-* Bug fixes (see mercurial logs for details)
-
-Version 3.8.1 - 2016-01-11
+Version 4.0.0 - 2016-05-02
 * Bug fixes (see mercurial logs for details)
+* Add Python3 support
 
 Version 3.8.0 - 2015-11-02
 * Bug fixes (see mercurial logs for details)
diff --git a/PKG-INFO b/PKG-INFO
index 64fe06a..b81ce46 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,12 +1,12 @@
 Metadata-Version: 1.1
 Name: trytond_account_payment_sepa
-Version: 3.8.2
+Version: 4.0.0
 Summary: Tryton module for SEPA payment
 Home-page: http://www.tryton.org/
 Author: Tryton
 Author-email: issue_tracker at tryton.org
 License: GPL-3
-Download-URL: http://downloads.tryton.org/3.8/
+Download-URL: http://downloads.tryton.org/4.0/
 Description: trytond_account_payment_sepa
         ============================
         
@@ -54,6 +54,7 @@ Classifier: Intended Audience :: Legal Industry
 Classifier: License :: OSI Approved :: GNU General Public License (GPL)
 Classifier: Natural Language :: Bulgarian
 Classifier: Natural Language :: Catalan
+Classifier: Natural Language :: Chinese (Simplified)
 Classifier: Natural Language :: Czech
 Classifier: Natural Language :: Dutch
 Classifier: Natural Language :: English
@@ -67,6 +68,9 @@ Classifier: Natural Language :: Slovenian
 Classifier: Natural Language :: Spanish
 Classifier: Operating System :: OS Independent
 Classifier: Programming Language :: Python :: 2.7
+Classifier: Programming Language :: Python :: 3.3
+Classifier: Programming Language :: Python :: 3.4
+Classifier: Programming Language :: Python :: 3.5
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
 Classifier: Topic :: Office/Business
diff --git a/account.py b/account.py
index da88600..0033ff3 100644
--- a/account.py
+++ b/account.py
@@ -5,10 +5,10 @@ from trytond.model import fields
 from trytond.pyson import Eval
 
 __all__ = ['Configuration']
-__metaclass__ = PoolMeta
 
 
 class Configuration:
+    __metaclass__ = PoolMeta
     __name__ = 'account.configuration'
     sepa_mandate_sequence = fields.Property(fields.Many2One('ir.sequence',
             'SEPA Mandate Sequence', domain=[
diff --git a/locale/bg_BG.po b/locale/bg_BG.po
index 7d7c207..b7801ec 100644
--- a/locale/bg_BG.po
+++ b/locale/bg_BG.po
@@ -283,15 +283,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -299,95 +299,95 @@ msgid ""
 "debited."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
@@ -492,13 +492,15 @@ msgctxt "view:account.payment.sepa.mandate:"
 msgid "Are you sure to cancel the mandate?"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Cancel"
-msgstr ""
+msgstr "Отказан"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Draft"
-msgstr ""
+msgstr "Проект"
 
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Mandate"
@@ -512,21 +514,24 @@ msgctxt "view:account.payment.sepa.mandate:"
 msgid "Request"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Validate"
-msgstr ""
+msgstr "Проверен"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.message:"
 msgid "Cancel"
-msgstr ""
+msgstr "Отказан"
 
 msgctxt "view:account.payment.sepa.message:"
 msgid "Do"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.message:"
 msgid "Draft"
-msgstr ""
+msgstr "Проект"
 
 msgctxt "view:account.payment.sepa.message:"
 msgid "SEPA Message"
diff --git a/locale/ca_ES.po b/locale/ca_ES.po
index 7fde6de..f83880c 100644
--- a/locale/ca_ES.po
+++ b/locale/ca_ES.po
@@ -261,15 +261,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr "Missatges SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr "."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr "Número de compte - IBAN"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -282,97 +282,97 @@ msgstr ""
 "part vostre en el termini màxim de 8 setmanes a partir de la data en que es "
 "va carregar en el vostre compte. "
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr "BIC"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 "Mitjançant la signatura d’aquest formulari d’ordre de domiciliació, "
 "autoritzeu a (A)"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr "Ciutat"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr "País"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr "Identificador del creditor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr "Nom del creditor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr "Nom del creditor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr "Data"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr "Ordre de domiciliació de dèbit directe"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr "Localitat"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr "Nom del deutor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr "Pagament únic"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr "Codi postal"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr "Pagament periòdic"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr "SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr "Signatura"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr "Signat el"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr "Nom del carrer i número"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr "Tipus de pagament"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr "El vostre número de compte"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr "La vostra adreça"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr "El vostre nom"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/cs_CZ.po b/locale/cs_CZ.po
index a1ab9e4..6c501b8 100644
--- a/locale/cs_CZ.po
+++ b/locale/cs_CZ.po
@@ -259,15 +259,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -275,95 +275,95 @@ msgid ""
 "debited."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/de_DE.po b/locale/de_DE.po
index 44b258f..af2a511 100644
--- a/locale/de_DE.po
+++ b/locale/de_DE.po
@@ -263,17 +263,17 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr "SEPA-Nachrichten"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 " Zahlungen von meinem Bankkonto mittels Lastschrift einzuziehen und weise B)"
 " mein Kreditinstitut an, diese gezogenen Lastschriften einzulösen."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr "Kontonummer - IBAN"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -284,95 +284,95 @@ msgstr ""
 "Erstattung des belasteten Betrags verlangen. Es gelten dabei die mit meiner "
 "Bank vereinbarten Bedingungen."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr "BIC"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr "Ich erteile"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr "Stadt"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr "Staat"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr "Gläubiger-ID"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr "Name Gläubiger"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr "Gläubiger"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr "Datum"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr "Lastschrift Mandat"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr "Ort"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr "Name Schuldner"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr "Einmalige Zahlung"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr "Postleitzahl"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr "Wiederkehrende Zahlung"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr "SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr "Unterschrift"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr "Unterschrieben am"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr "Straße"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr "Zahlungstyp"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr "Meine Kontonummer"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr "Meine Adresse"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr "Mein Name"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/es_AR.po b/locale/es_AR.po
index 8934e69..df8fb4c 100644
--- a/locale/es_AR.po
+++ b/locale/es_AR.po
@@ -261,15 +261,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr "SEPA Mensajes"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr "."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr "Número de cuenta - IBAN"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -281,95 +281,95 @@ msgstr ""
 "solicitud de reembolso deberá efectuarse dentro de 8 semanas a partir de la "
 "fecha en que su cuenta fue debitada."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr "CIB"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr "Al firmar este formulario de mandato, usted autoriza a"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr "Ciudad"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr "País"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr "Identificador acreedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr "Nombre acreedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr "Nombre del acreedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr "Fecha"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr "MANDATO de débito automático"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr "Ubicación"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr "Nombre del deudor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr "Pago único"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr "Código postal"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr "Pago recurrente"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr "SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr "Firma"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr "Firmado en"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr "Calle y número"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr "Tipo de pago"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr "Su número de cuenta"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr "Su dirección"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr "Su nombre"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/es_CO.po b/locale/es_CO.po
index 9c1b060..efc718b 100644
--- a/locale/es_CO.po
+++ b/locale/es_CO.po
@@ -259,15 +259,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr "Mensajes SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr "."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr "Número de cuenta - IBAN"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -279,95 +279,95 @@ msgstr ""
 "desembolso debe ser declarado dentro de las 8 semanas comenzando desde la "
 "fecha en la cual su cuenta es debitada."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr "CIB"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr "Frimar este formulario de mandato, usted autoriza"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr "Ciudad"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr "País"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr "Identificación del acreedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr "Nombre del acreedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr "El nombre del acreedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr "Fecha"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr "MANDATO Debito Directo"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr "Lugar"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr "Nombre del Debitante"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr "Pago de Contado"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr "Código postal"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr "Pago recurrente"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr "SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr "Firma"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr "Firmado por"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr "Dirección y número"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr "Tipo de Pago"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr "Número de cuenta"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr "Su dirección"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr "Su nombre"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
@@ -453,7 +453,7 @@ msgstr "SALIDA"
 
 msgctxt "view:account.configuration:"
 msgid "SEPA"
-msgstr ""
+msgstr "SEPA"
 
 msgctxt "view:account.payment.group:"
 msgid "Generate Message"
diff --git a/locale/es_EC.po b/locale/es_EC.po
index ec3268d..439da53 100644
--- a/locale/es_EC.po
+++ b/locale/es_EC.po
@@ -261,15 +261,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr "Mensajes SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr "."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr "Número de cuenta - IBAN"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -281,95 +281,95 @@ msgstr ""
 "deberá ser reclamado dentro de 8 semanas a partir de la fecha en que su "
 "cuenta fue debitada."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr "BIC / SWIFT"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr "Al firmar este formulario de mandato, usted autoriza"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr "Ciudad"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr "País"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr "Identificador acreedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr "Nombre de acreedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr "Nombre de acreedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr "Fecha"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr "MANDATO de débito directo"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr "Ubicación"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr "Nombre del deudor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr "Pago único"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr "Código postal"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr "Pago recurrente"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr "SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr "Firma"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr "Firmado en"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr "Nombre y número de calle"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr "Tipo de pago"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr "Su número de cuenta"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr "Su dirección"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr "Su nombre"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
@@ -455,7 +455,7 @@ msgstr "Salida"
 
 msgctxt "view:account.configuration:"
 msgid "SEPA"
-msgstr ""
+msgstr "SEPA"
 
 msgctxt "view:account.payment.group:"
 msgid "Generate Message"
diff --git a/locale/es_ES.po b/locale/es_ES.po
index c4309dd..71fd7d1 100644
--- a/locale/es_ES.po
+++ b/locale/es_ES.po
@@ -261,15 +261,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr "Mensajes SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr "."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr "Número de cuenta - IBAN"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -281,96 +281,96 @@ msgstr ""
 " solicitud de reembolso deberá efectuarse dentro de las 8 semanas que siguen"
 " a la fecha de adeudo en cuenta."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr "BIC"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 "Mediante la firma de esta orden de domiciliación, el deudor autoriza a (A)"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr "Ciudad"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr "País"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr "Identificador del acreedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr "Nombre del acreedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr "Nombre del acreedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr "Fecha"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr "Orden de domiciliación de adeudo directo"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr "Localidad"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr "Nombre del deudor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr "Pago único"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr "Código postal"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr "Pago recurrente"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr "SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr "Firma"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr "Firmado el"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr "Nombre de la calle y número"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr "Tipo de pago"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr "Su número de cuenta"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr "Su dirección"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr "Su nombre"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/es_MX.po b/locale/es_MX.po
index fd2af84..aafc441 100644
--- a/locale/es_MX.po
+++ b/locale/es_MX.po
@@ -261,15 +261,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr "Mensajes SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -277,95 +277,97 @@ msgid ""
 "debited."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+#, fuzzy
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
-msgstr ""
+msgstr "Identificador acreedor SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+#, fuzzy
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
-msgstr ""
+msgstr "SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
@@ -447,70 +449,83 @@ msgctxt "selection:account.payment.sepa.message,type:"
 msgid "OUT"
 msgstr "Salida"
 
+#, fuzzy
 msgctxt "view:account.configuration:"
 msgid "SEPA"
-msgstr ""
+msgstr "SEPA"
 
 msgctxt "view:account.payment.group:"
 msgid "Generate Message"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:account.payment.journal:"
 msgid "SEPA"
-msgstr ""
+msgstr "SEPA"
 
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Are you sure to cancel the mandate?"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Cancel"
-msgstr ""
+msgstr "Cancelado"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Draft"
-msgstr ""
+msgstr "Borrador"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Mandate"
-msgstr ""
+msgstr "Mandato"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Mandates"
-msgstr ""
+msgstr "Mandatos"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Request"
-msgstr ""
+msgstr "Solicitado"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Validate"
-msgstr ""
+msgstr "Validado"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.message:"
 msgid "Cancel"
-msgstr ""
+msgstr "Cancelado"
 
 msgctxt "view:account.payment.sepa.message:"
 msgid "Do"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.message:"
 msgid "Draft"
-msgstr ""
+msgstr "Borrador"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.message:"
 msgid "SEPA Message"
-msgstr ""
+msgstr "Mensaje SEPA"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.message:"
 msgid "SEPA Messages"
-msgstr ""
+msgstr "Mensajes SEPA"
 
 msgctxt "view:account.payment.sepa.message:"
 msgid "Wait"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:party.party:"
 msgid "SEPA"
-msgstr ""
+msgstr "SEPA"
diff --git a/locale/fr_FR.po b/locale/fr_FR.po
index 7b4d8e7..a75eb2e 100644
--- a/locale/fr_FR.po
+++ b/locale/fr_FR.po
@@ -261,15 +261,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr "Messages SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr "Numéro de compte - IBAN"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -281,95 +281,95 @@ msgstr ""
 " remboursement doit être demandé dans les 8 semaines à partir de la date à "
 "laquelle votre compte a été débité."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr "BIC"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr "En signant ce formulaire de mandat, vous autorisez"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr "Ville"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr "Pays"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr "Identifiant créditeur"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr "Nom du créditeur"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr "Nom du créditeur"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr "Date"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr "MANDAT de débit direct"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr "Emplacement"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr "Nom du débiteur"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr "Paiement unique"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr "Code postal"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr "Paiement récurrent"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr "SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr "Signature"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr "Signé à"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr "Rue et numéro"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr "Type de paiement"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr "Votre numéro de compte"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr "Votre adresse"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr "Votre nom"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/hu_HU.po b/locale/hu_HU.po
index a1ab9e4..6c501b8 100644
--- a/locale/hu_HU.po
+++ b/locale/hu_HU.po
@@ -259,15 +259,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -275,95 +275,95 @@ msgid ""
 "debited."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/it_IT.po b/locale/it_IT.po
index a1ab9e4..6c501b8 100644
--- a/locale/it_IT.po
+++ b/locale/it_IT.po
@@ -259,15 +259,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -275,95 +275,95 @@ msgid ""
 "debited."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/ja_JP.po b/locale/ja_JP.po
index a1ab9e4..6c501b8 100644
--- a/locale/ja_JP.po
+++ b/locale/ja_JP.po
@@ -259,15 +259,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -275,95 +275,95 @@ msgid ""
 "debited."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/it_IT.po b/locale/lo_LA.po
similarity index 88%
copy from locale/it_IT.po
copy to locale/lo_LA.po
index a1ab9e4..6c501b8 100644
--- a/locale/it_IT.po
+++ b/locale/lo_LA.po
@@ -259,15 +259,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -275,95 +275,95 @@ msgid ""
 "debited."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/lt_LT.po b/locale/lt_LT.po
index a1ab9e4..6c501b8 100644
--- a/locale/lt_LT.po
+++ b/locale/lt_LT.po
@@ -259,15 +259,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -275,95 +275,95 @@ msgid ""
 "debited."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/nl_NL.po b/locale/nl_NL.po
index 5256521..b92f95c 100644
--- a/locale/nl_NL.po
+++ b/locale/nl_NL.po
@@ -272,15 +272,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -288,95 +288,95 @@ msgid ""
 "debited."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
@@ -481,13 +481,15 @@ msgctxt "view:account.payment.sepa.mandate:"
 msgid "Are you sure to cancel the mandate?"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Cancel"
-msgstr ""
+msgstr "Geannuleerd"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Draft"
-msgstr ""
+msgstr "Concept"
 
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Mandate"
@@ -501,21 +503,24 @@ msgctxt "view:account.payment.sepa.mandate:"
 msgid "Request"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Validate"
-msgstr ""
+msgstr "Goedgekeurd"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.message:"
 msgid "Cancel"
-msgstr ""
+msgstr "Geannuleerd"
 
 msgctxt "view:account.payment.sepa.message:"
 msgid "Do"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.message:"
 msgid "Draft"
-msgstr ""
+msgstr "Concept"
 
 msgctxt "view:account.payment.sepa.message:"
 msgid "SEPA Message"
diff --git a/locale/pt_BR.po b/locale/pt_BR.po
index 7bf2b61..f8524cf 100644
--- a/locale/pt_BR.po
+++ b/locale/pt_BR.po
@@ -261,15 +261,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr "Mensagens SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr "."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr "Número da Conta - IBAN"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -280,95 +280,95 @@ msgstr ""
 "seu contrato com o banco. Um reembolso deverá ser reclamado em 8 semanas a "
 "partir da data do débito em sua conta."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr "BIC"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr "Ao assisnar este formulário de mandato, você autoriza"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr "Cidade"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr "País"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr "Identificador do Credor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr "Nome do Credor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr "Nome do Credor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr "Data"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr "MANDATO de débito direto"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr "Localização"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr "Nome do devedor"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr "Pagamento Único"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr "Código Postal"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr "Pagamento recorrente"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr "SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr "Assinatura"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr "Assinado em"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr "Rua e número"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr "Tipo de pagamento"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr "Seu número de conta"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr "Seu endereço"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr "Seu nome"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/ru_RU.po b/locale/ru_RU.po
index 3fbc7f2..9244558 100644
--- a/locale/ru_RU.po
+++ b/locale/ru_RU.po
@@ -284,15 +284,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -300,95 +300,95 @@ msgid ""
 "debited."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
@@ -493,13 +493,15 @@ msgctxt "view:account.payment.sepa.mandate:"
 msgid "Are you sure to cancel the mandate?"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Cancel"
-msgstr ""
+msgstr "Отменено"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Draft"
-msgstr ""
+msgstr "Черновик"
 
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Mandate"
@@ -513,21 +515,24 @@ msgctxt "view:account.payment.sepa.mandate:"
 msgid "Request"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.mandate:"
 msgid "Validate"
-msgstr ""
+msgstr "Утвержденный"
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.message:"
 msgid "Cancel"
-msgstr ""
+msgstr "Отменено"
 
 msgctxt "view:account.payment.sepa.message:"
 msgid "Do"
 msgstr ""
 
+#, fuzzy
 msgctxt "view:account.payment.sepa.message:"
 msgid "Draft"
-msgstr ""
+msgstr "Черновик"
 
 msgctxt "view:account.payment.sepa.message:"
 msgid "SEPA Message"
diff --git a/locale/sl_SI.po b/locale/sl_SI.po
index 002e9bc..8913ee7 100644
--- a/locale/sl_SI.po
+++ b/locale/sl_SI.po
@@ -259,15 +259,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr "SEPA sporočilo"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr "."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr "Bančni račun"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -278,95 +278,95 @@ msgstr ""
 "pogoji dogovora z banko. Povračilo morate zahtevati v roku 8 tednov od "
 "datuma bremenitve vašega računa."
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr "BIC"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr "S podpisom tega obrazca se soglašate"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr "Mesto"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr "Država"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr "Identifikator prejemnika plačila"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr "Naziv prejemnika plačila"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr "Naziv prejemnika plačila"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr "Datum"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr "Soglasje direktne bremenitve"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr "Lokacija"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr "Naziv plačnika"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr "Enkratno plačilo"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr "Pošta"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr "Periodično plačilo"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr "SEPA"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr "Podpis"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr "Podpisano v/na"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr "Ulica"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr "Vrsta plačila"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr "Vaš račun"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr "Vaš naslov"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr "Vaše ime"
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/locale/it_IT.po b/locale/zh_CN.po
similarity index 88%
copy from locale/it_IT.po
copy to locale/zh_CN.po
index a1ab9e4..6c501b8 100644
--- a/locale/it_IT.po
+++ b/locale/zh_CN.po
@@ -259,15 +259,15 @@ msgctxt "model:ir.ui.menu,name:menu_message_form"
 msgid "SEPA Messages"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Account number – IBAN"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "As part of your rights, you are entitled to a refund from your bank under "
 "the terms and conditions of your agreement with your bank. A refund must be "
@@ -275,95 +275,95 @@ msgid ""
 "debited."
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "BIC"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "By signing this mandate form, you authorize"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "City"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Country"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor identifier"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Creditor's name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Date"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Direct Debit MANDATE"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Location"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Name of the debtor"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "One-off payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Postal code"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Recurrent payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "SEPA"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signature"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Signed at"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Street name and number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Type of payment"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your account number"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your address"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid "Your name"
 msgstr ""
 
-msgctxt "odt:account.payment.sepa.mandate:"
+msgctxt "report:account.payment.sepa.mandate:"
 msgid ""
 "to send instructions to your bank to debit your account and your bank to "
 "debit your account in accordance with the instructions from"
diff --git a/party.py b/party.py
index 944635e..6836514 100644
--- a/party.py
+++ b/party.py
@@ -3,11 +3,11 @@
 from trytond.pool import PoolMeta
 from trytond.model import fields
 
-__metaclass__ = PoolMeta
 __all__ = ['Party']
 
 
 class Party:
+    __metaclass__ = PoolMeta
     __name__ = 'party.party'
     sepa_creditor_identifier = fields.Char('SEPA Creditor Identifier', size=35)
     sepa_creditor_identifier_used = fields.Function(fields.Char(
diff --git a/payment.py b/payment.py
index 1e81f6e..b178bed 100644
--- a/payment.py
+++ b/payment.py
@@ -22,12 +22,29 @@ from trytond.modules.company import CompanyReport
 
 from .sepa_handler import CAMT054
 
-__metaclass__ = PoolMeta
 __all__ = ['Journal', 'Group', 'Payment', 'Mandate', 'Message',
     'MandateReport']
 
+# XXX fix: https://genshi.edgewall.org/ticket/582
+from genshi.template.astutil import ASTCodeGenerator, ASTTransformer
+if not hasattr(ASTCodeGenerator, 'visit_NameConstant'):
+    def visit_NameConstant(self, node):
+        if node.value is None:
+            self._write('None')
+        elif node.value is True:
+            self._write('True')
+        elif node.value is False:
+            self._write('False')
+        else:
+            raise Exception("Unknown NameConstant %r" % (node.value,))
+    ASTCodeGenerator.visit_NameConstant = visit_NameConstant
+if not hasattr(ASTTransformer, 'visit_NameConstant'):
+    # Re-use visit_Name because _clone is deleted
+    ASTTransformer.visit_NameConstant = ASTTransformer.visit_Name
+
 
 class Journal:
+    __metaclass__ = PoolMeta
     __name__ = 'account.payment.journal'
     company_party = fields.Function(fields.Many2One('party.party',
             'Company Party'), 'on_change_with_company_party')
@@ -116,6 +133,7 @@ loader = genshi.template.TemplateLoader(
 
 
 class Group:
+    __metaclass__ = PoolMeta
     __name__ = 'account.payment.group'
     sepa_messages = fields.One2Many('account.payment.sepa.message', 'origin',
         'SEPA Messages', readonly=True,
@@ -203,6 +221,7 @@ class Group:
 
 
 class Payment:
+    __metaclass__ = PoolMeta
     __name__ = 'account.payment'
 
     sepa_mandate = fields.Many2One('account.payment.sepa.mandate', 'Mandate',
@@ -504,7 +523,7 @@ class Mandate(Workflow, ModelSQL, ModelView):
         pool = Pool()
         Payment = pool.get('account.payment')
         payment = Payment.__table__
-        cursor = Transaction().cursor
+        cursor = Transaction().connection.cursor()
 
         has_payments = dict.fromkeys([m.id for m in mandates], False)
         for sub_ids in grouped_slice(mandates):
@@ -613,15 +632,15 @@ class Message(Workflow, ModelSQL, ModelView):
     @classmethod
     def __register__(cls, module_name):
         TableHandler = backend.get('TableHandler')
-        cursor = Transaction().cursor
+        cursor = Transaction().connection.cursor()
         pool = Pool()
         Group = pool.get('account.payment.group')
 
         super(Message, cls).__register__(module_name)
 
         # Migration from 3.2
-        if TableHandler.table_exist(cursor, Group._table):
-            group_table = TableHandler(cursor, Group, module_name)
+        if TableHandler.table_exist(Group._table):
+            group_table = TableHandler(Group, module_name)
             if group_table.column_exist('sepa_message'):
                 group = Group.__table__()
                 table = cls.__table__()
diff --git a/setup.py b/setup.py
index 1116ecd..d296647 100644
--- a/setup.py
+++ b/setup.py
@@ -5,11 +5,17 @@
 from setuptools import setup
 import re
 import os
-import ConfigParser
+import io
+try:
+    from configparser import ConfigParser
+except ImportError:
+    from ConfigParser import ConfigParser
 
 
 def read(fname):
-    return open(os.path.join(os.path.dirname(__file__), fname)).read()
+    return io.open(
+        os.path.join(os.path.dirname(__file__), fname),
+        'r', encoding='utf-8').read()
 
 
 def get_require_version(name):
@@ -21,7 +27,7 @@ def get_require_version(name):
         major_version, minor_version + 1)
     return require
 
-config = ConfigParser.ConfigParser()
+config = ConfigParser()
 config.readfp(open('tryton.cfg'))
 info = dict(config.items('tryton'))
 for key in ('depends', 'extras_depend', 'xml'):
@@ -43,11 +49,16 @@ if minor_version % 2:
 
 requires = ['Genshi', 'lxml', 'python-dateutil']
 for dep in info.get('depends', []):
-    if not re.match(r'(ir|res|webdav)(\W|$)', dep):
+    if not re.match(r'(ir|res)(\W|$)', dep):
         requires.append(get_require_version('trytond_%s' % dep))
 requires.append(get_require_version('trytond'))
 
-tests_require = ['mock']
+tests_require = []
+try:
+    from unittest import mock
+    mock.__version__
+except ImportError:
+    tests_require.append('mock')
 
 setup(name=name,
     version=version,
@@ -66,7 +77,8 @@ setup(name=name,
     package_data={
         'trytond.modules.account_payment_sepa': (info.get('xml', [])
             + ['tryton.cfg', 'view/*.xml', 'locale/*.po', '*.odt',
-                'icons/*.svg', 'template/*.xml', 'tests/*.xsd']),
+                'icons/*.svg', 'template/*.xml',
+                'tests/*.xml', 'tests/*.xsd']),
         },
     classifiers=[
         'Development Status :: 5 - Production/Stable',
@@ -78,6 +90,7 @@ setup(name=name,
         'License :: OSI Approved :: GNU General Public License (GPL)',
         'Natural Language :: Bulgarian',
         'Natural Language :: Catalan',
+        'Natural Language :: Chinese (Simplified)',
         'Natural Language :: Czech',
         'Natural Language :: Dutch',
         'Natural Language :: English',
@@ -91,6 +104,9 @@ setup(name=name,
         'Natural Language :: Spanish',
         'Operating System :: OS Independent',
         'Programming Language :: Python :: 2.7',
+        'Programming Language :: Python :: 3.3',
+        'Programming Language :: Python :: 3.4',
+        'Programming Language :: Python :: 3.5',
         'Programming Language :: Python :: Implementation :: CPython',
         'Programming Language :: Python :: Implementation :: PyPy',
         'Topic :: Office/Business',
@@ -106,4 +122,5 @@ setup(name=name,
     test_suite='tests',
     test_loader='trytond.test_loader:Loader',
     tests_require=tests_require,
+    use_2to3=True,
     )
diff --git a/template/pain.001.001.03.xml b/template/pain.001.001.03.xml
index 25073f6..7e69b6d 100644
--- a/template/pain.001.001.03.xml
+++ b/template/pain.001.001.03.xml
@@ -28,8 +28,8 @@ this repository contains the full copyright notices and license terms. -->
     </py:def>
     <CstmrCdtTrfInitn>
         <GrpHdr>
-            <MsgId>${group.reference[:35]}</MsgId>
-            <CreDtTm>${datetime.datetime.now().isoformat()}</CreDtTm>
+            <MsgId>${group.number[:35]}</MsgId>
+            <CreDtTm>${datetime.datetime.now().replace(microsecond=0).isoformat()}</CreDtTm>
             <!-- Authstn -->
             <NbOfTxs>${sum(len(payments) for _, payments in group.sepa_payments)}</NbOfTxs>
             <CtrlSum>${sum(p.amount for p in group.payments)}</CtrlSum>
diff --git a/template/pain.001.001.05.xml b/template/pain.001.001.05.xml
index 319afcb..c71a788 100644
--- a/template/pain.001.001.05.xml
+++ b/template/pain.001.001.05.xml
@@ -9,8 +9,8 @@ this repository contains the full copyright notices and license terms. -->
     <xi:include href="base.xml"/>
     <CstmrCdtTrfInitn>
         <GrpHdr>
-            <MsgId>${group.reference[:35]}</MsgId>
-            <CreDtTm>${datetime.datetime.now().isoformat()}</CreDtTm>
+            <MsgId>${group.number[:35]}</MsgId>
+            <CreDtTm>${datetime.datetime.now().replace(microsecond=0).isoformat()}</CreDtTm>
             <!-- Authstn -->
             <NbOfTxs>${sum(len(payments) for _, payments in group.sepa_payments)}</NbOfTxs>
             <CtrlSum>${sum(p.amount for p in group.payments)}</CtrlSum>
diff --git a/template/pain.001.003.03.xml b/template/pain.001.003.03.xml
index 9b613b4..5b437ac 100644
--- a/template/pain.001.003.03.xml
+++ b/template/pain.001.003.03.xml
@@ -12,8 +12,8 @@ this repository contains the full copyright notices and license terms. -->
     <xi:include href="base.003.xml"/>
     <CstmrCdtTrfInitn>
         <GrpHdr>
-            <MsgId>${group.reference[:35]}</MsgId>
-            <CreDtTm>${datetime.datetime.now().isoformat()}</CreDtTm>
+            <MsgId>${group.number[:35]}</MsgId>
+            <CreDtTm>${datetime.datetime.now().replace(microsecond=0).isoformat()}</CreDtTm>
             <NbOfTxs>${sum(len(payments) for _, payments in group.sepa_payments)}</NbOfTxs>
             <CtrlSum>${sum(p.amount for p in group.payments)}</CtrlSum>
             <InitgPty>
diff --git a/template/pain.008.001.02.xml b/template/pain.008.001.02.xml
index 86a28ef..ed3d0fa 100644
--- a/template/pain.008.001.02.xml
+++ b/template/pain.008.001.02.xml
@@ -28,8 +28,8 @@ this repository contains the full copyright notices and license terms. -->
     </py:def>
     <CstmrDrctDbtInitn>
         <GrpHdr>
-            <MsgId>${group.reference[:35]}</MsgId>
-            <CreDtTm>${datetime.datetime.now().isoformat()}</CreDtTm>
+            <MsgId>${group.number[:35]}</MsgId>
+            <CreDtTm>${datetime.datetime.now().replace(microsecond=0).isoformat()}</CreDtTm>
             <!-- Authstn -->
             <NbOfTxs>${sum(len(payments) for _, payments in group.sepa_payments)}</NbOfTxs>
             <CtrlSum>${sum(p.amount for p in group.payments)}</CtrlSum>
diff --git a/template/pain.008.001.04.xml b/template/pain.008.001.04.xml
index 57c680e..1bb2520 100644
--- a/template/pain.008.001.04.xml
+++ b/template/pain.008.001.04.xml
@@ -9,8 +9,8 @@ this repository contains the full copyright notices and license terms. -->
     <xi:include href="base.xml"/>
     <CstmrDrctDbtInitn>
         <GrpHdr>
-            <MsgId>${group.reference[:35]}</MsgId>
-            <CreDtTm>${datetime.datetime.now().isoformat()}</CreDtTm>
+            <MsgId>${group.number[:35]}</MsgId>
+            <CreDtTm>${datetime.datetime.now().replace(microsecond=0).isoformat()}</CreDtTm>
             <!-- Authstn -->
             <NbOfTxs>${len(group.payments)}</NbOfTxs>
             <CtrlSum>${sum(p.amount for p in group.payments)}</CtrlSum>
diff --git a/template/pain.008.003.02.xml b/template/pain.008.003.02.xml
index 7fdb45d..5091e6d 100644
--- a/template/pain.008.003.02.xml
+++ b/template/pain.008.003.02.xml
@@ -12,8 +12,8 @@ this repository contains the full copyright notices and license terms. -->
     <xi:include href="base.003.xml"/>
     <CstmrDrctDbtInitn>
         <GrpHdr>
-            <MsgId>${group.reference[:35]}</MsgId>
-            <CreDtTm>${datetime.datetime.now().isoformat()}</CreDtTm>
+            <MsgId>${group.number[:35]}</MsgId>
+            <CreDtTm>${datetime.datetime.now().replace(microsecond=0).isoformat()}</CreDtTm>
             <NbOfTxs>${sum(len(payments) for _, payments in group.sepa_payments)}</NbOfTxs>
             <CtrlSum>${sum(p.amount for p in group.payments)}</CtrlSum>
             <InitgPty>
diff --git a/tests/__init__.py b/tests/__init__.py
index 9e31e2c..c126bd4 100644
--- a/tests/__init__.py
+++ b/tests/__init__.py
@@ -1,6 +1,10 @@
 # This file is part of Tryton.  The COPYRIGHT file at the top level of
 # this repository contains the full copyright notices and license terms.
 
-from .test_account_payment_sepa import suite
+try:
+    from trytond.modules.account_payment_sepa.tests.test_account_payment_sepa import (
+        suite, validate_file)
+except ImportError:
+    from .test_account_payment_sepa import suite, validate_file
 
-__all__ = ['suite']
+__all__ = ['suite', 'validate_file']
diff --git a/tests/test_account_payment_sepa.py b/tests/test_account_payment_sepa.py
index f688c65..8a615b0 100644
--- a/tests/test_account_payment_sepa.py
+++ b/tests/test_account_payment_sepa.py
@@ -2,43 +2,37 @@
 # this repository contains the full copyright notices and license terms.
 import os
 import unittest
-import doctest
-from itertools import chain
 from lxml import etree
 from decimal import Decimal
-from io import BytesIO
+from io import BytesIO, open
 
-from mock import Mock, patch
+try:
+    from unittest.mock import Mock, patch
+except ImportError:
+    from mock import Mock, patch
 
 import trytond.tests.test_tryton
-from trytond.tests.test_tryton import ModuleTestCase
-from trytond.tests.test_tryton import DB_NAME, USER, CONTEXT
+from trytond.tests.test_tryton import ModuleTestCase, with_transaction
 from trytond.transaction import Transaction
 from trytond.exceptions import UserError
 from trytond.modules.account_payment_sepa.payment import CAMT054
 from trytond.pool import Pool
 
+from trytond.modules.currency.tests import create_currency
+from trytond.modules.company.tests import create_company, set_company
+from trytond.modules.account.tests import create_chart
+
 
 def setup_environment():
     pool = Pool()
     Address = pool.get('party.address')
-    Company = pool.get('company.company')
-    Currency = pool.get('currency.currency')
     Party = pool.get('party.party')
     Bank = pool.get('bank')
 
-    company, = Company.search([
-            ('rec_name', '=', 'Dunder Mifflin'),
-            ])
-    euro, = Currency.create([{
-                'name': 'Euro',
-                'symbol': 'EUR',
-                'code': 'EUR',
-                }])
-    company.currency = euro
+    currency = create_currency('EUR')
+    company = create_company(currency=currency)
     company.party.sepa_creditor_identifier = 'BE68539007547034'
     company.party.save()
-    company.save()
     bank_party = Party(name='European Bank')
     bank_party.save()
     bank = Bank(party=bank_party, bic='BICODEBBXXX')
@@ -121,83 +115,87 @@ def validate_file(flavor, kind, xsd=None):
     company = environment['company']
     bank = environment['bank']
     customer = environment['customer']
-    company_account, customer_account = setup_accounts(
-        bank, company, customer)
-    setup_mandate(company, customer, customer_account)
-    journal = setup_journal(flavor, kind, company, company_account)
-
-    payment, = Payment.create([{
-                'company': company,
-                'party': customer,
-                'journal': journal,
-                'kind': kind,
-                'amount': Decimal('1000.0'),
-                'state': 'approved',
-                'description': 'PAYMENT',
-                'date': Date.today(),
-                }])
-
-    session_id, _, _ = ProcessPayment.create()
-    process_payment = ProcessPayment(session_id)
-    with Transaction().set_context(active_ids=[payment.id]):
-        _, data = process_payment.do_process(None)
-    group, = PaymentGroup.browse(data['res_id'])
-    message, = group.sepa_messages
-    assert message.type == 'out', message.type
-    assert message.state == 'waiting', message.state
-    sepa_string = message.message.encode('utf-8')
-    sepa_xml = etree.fromstring(sepa_string)
-    schema_file = os.path.join(os.path.dirname(__file__),
-        '%s.xsd' % xsd)
-    schema = etree.XMLSchema(etree.parse(schema_file))
-    schema.assertValid(sepa_xml)
+    with set_company(company):
+        company_account, customer_account = setup_accounts(
+            bank, company, customer)
+        setup_mandate(company, customer, customer_account)
+        journal = setup_journal(flavor, kind, company, company_account)
+
+        payment, = Payment.create([{
+                    'company': company,
+                    'party': customer,
+                    'journal': journal,
+                    'kind': kind,
+                    'amount': Decimal('1000.0'),
+                    'state': 'approved',
+                    'description': 'PAYMENT',
+                    'date': Date.today(),
+                    }])
+
+        session_id, _, _ = ProcessPayment.create()
+        process_payment = ProcessPayment(session_id)
+        with Transaction().set_context(active_ids=[payment.id]):
+            _, data = process_payment.do_process(None)
+        group, = PaymentGroup.browse(data['res_id'])
+        message, = group.sepa_messages
+        assert message.type == 'out', message.type
+        assert message.state == 'waiting', message.state
+        sepa_string = message.message.encode('utf-8')
+        sepa_xml = etree.fromstring(sepa_string)
+        schema_file = os.path.join(os.path.dirname(__file__),
+            '%s.xsd' % xsd)
+        schema = etree.XMLSchema(etree.parse(schema_file))
+        schema.assertValid(sepa_xml)
 
 
 class AccountPaymentSepaTestCase(ModuleTestCase):
     'Test Account Payment SEPA module'
     module = 'account_payment_sepa'
 
+    @with_transaction()
     def test_pain001_001_03(self):
         'Test pain001.001.03 xsd validation'
-        with Transaction().start(DB_NAME, USER, context=CONTEXT):
-            validate_file('pain.001.001.03', 'payable')
+        validate_file('pain.001.001.03', 'payable')
 
+    @with_transaction()
     def test_pain001_001_05(self):
         'Test pain001.001.05 xsd validation'
-        with Transaction().start(DB_NAME, USER, context=CONTEXT):
-            validate_file('pain.001.001.05', 'payable')
+        validate_file('pain.001.001.05', 'payable')
 
+    @with_transaction()
     def test_pain001_003_03(self):
         'Test pain001.003.03 xsd validation'
-        with Transaction().start(DB_NAME, USER, context=CONTEXT):
-            validate_file('pain.001.003.03', 'payable')
+        validate_file('pain.001.003.03', 'payable')
 
+    @with_transaction()
     def test_pain008_001_02(self):
         'Test pain008.001.02 xsd validation'
-        with Transaction().start(DB_NAME, USER, context=CONTEXT):
-            validate_file('pain.008.001.02', 'receivable')
+        validate_file('pain.008.001.02', 'receivable')
 
+    @with_transaction()
     def test_pain008_001_04(self):
         'Test pain008.001.04 xsd validation'
-        with Transaction().start(DB_NAME, USER, context=CONTEXT):
-            validate_file('pain.008.001.04', 'receivable')
+        validate_file('pain.008.001.04', 'receivable')
 
+    @with_transaction()
     def test_pain008_003_02(self):
         'Test pain008.003.02 xsd validation'
-        with Transaction().start(DB_NAME, USER, context=CONTEXT):
-            validate_file('pain.008.003.02', 'receivable')
+        validate_file('pain.008.003.02', 'receivable')
 
+    @with_transaction()
     def test_sepa_mandate_sequence(self):
         'Test SEPA mandate sequence'
-        with Transaction().start(DB_NAME, USER, context=CONTEXT):
-            pool = Pool()
-            Configuration = pool.get('account.configuration')
-            Sequence = pool.get('ir.sequence')
-            Party = pool.get('party.party')
-            Mandate = pool.get('account.payment.sepa.mandate')
-
-            party = Party(name='Test')
-            party.save()
+        pool = Pool()
+        Configuration = pool.get('account.configuration')
+        Sequence = pool.get('ir.sequence')
+        Party = pool.get('party.party')
+        Mandate = pool.get('account.payment.sepa.mandate')
+
+        party = Party(name='Test')
+        party.save()
+
+        company = create_company()
+        with set_company(company):
             mandate = Mandate(party=party)
             mandate.save()
             self.assertFalse(mandate.identification)
@@ -213,17 +211,20 @@ class AccountPaymentSepaTestCase(ModuleTestCase):
             mandate.save()
             self.assertTrue(mandate.identification)
 
+    @with_transaction()
     def test_identification_unique(self):
         'Test unique identification constraint'
-        with Transaction().start(DB_NAME, USER, context=CONTEXT):
-            pool = Pool()
-            Party = pool.get('party.party')
-            Mandate = pool.get('account.payment.sepa.mandate')
+        pool = Pool()
+        Party = pool.get('party.party')
+        Mandate = pool.get('account.payment.sepa.mandate')
+
+        same_id = '1'
 
-            same_id = '1'
+        party = Party(name='Test')
+        party.save()
 
-            party = Party(name='Test')
-            party.save()
+        company = create_company()
+        with set_company(company):
             mandate = Mandate(party=party, identification=same_id)
             mandate.save()
 
@@ -245,16 +246,19 @@ class AccountPaymentSepaTestCase(ModuleTestCase):
                         'identification': same_id,
                         }])
 
+    @with_transaction()
     def test_payment_sepa_bank_account_number(self):
         'Test Payment.sepa_bank_account_number'
-        with Transaction().start(DB_NAME, USER, context=CONTEXT):
-            pool = Pool()
-            Payment = pool.get('account.payment')
-            Mandate = pool.get('account.payment.sepa.mandate')
-            AccountNumber = pool.get('bank.account.number')
-            Party = pool.get('party.party')
-            BankAccount = pool.get('bank.account')
-
+        pool = Pool()
+        Payment = pool.get('account.payment')
+        Mandate = pool.get('account.payment.sepa.mandate')
+        AccountNumber = pool.get('bank.account.number')
+        Party = pool.get('party.party')
+        BankAccount = pool.get('bank.account')
+
+        company = create_company()
+        with set_company(company):
+            create_chart(company)
             account_number = AccountNumber()
             mandate = Mandate(account_number=account_number)
             payment = Payment(kind='receivable', sepa_mandate=mandate)
@@ -273,18 +277,19 @@ class AccountPaymentSepaTestCase(ModuleTestCase):
             self.assertEqual(id(payment.sepa_bank_account_number),
                 id(iban_account_number))
 
+    @with_transaction()
     def test_payment_sequence_type(self):
         'Test payment sequence type'
-        with Transaction().start(DB_NAME, USER, context=CONTEXT):
-            pool = Pool()
-            Date = pool.get('ir.date')
-            Payment = pool.get('account.payment')
-            ProcessPayment = pool.get('account.payment.process', type='wizard')
-
-            environment = setup_environment()
-            company = environment['company']
-            bank = environment['bank']
-            customer = environment['customer']
+        pool = Pool()
+        Date = pool.get('ir.date')
+        Payment = pool.get('account.payment')
+        ProcessPayment = pool.get('account.payment.process', type='wizard')
+
+        environment = setup_environment()
+        company = environment['company']
+        bank = environment['bank']
+        customer = environment['customer']
+        with set_company(company):
             company_account, customer_account = setup_accounts(
                 bank, company, customer)
             setup_mandate(company, customer, customer_account)
@@ -339,40 +344,40 @@ class AccountPaymentSepaTestCase(ModuleTestCase):
             for payment in payments:
                 self.assertEqual(payment.sepa_mandate_sequence_type, 'RCUR')
 
+    @with_transaction()
     def handle_camt054(self, flavor):
         'Handle camt.054'
-        with Transaction().start(DB_NAME, USER, context=CONTEXT):
-            pool = Pool()
-            Message = pool.get('account.payment.sepa.message')
-
-            message_file = os.path.join(os.path.dirname(__file__),
-                '%s.xml' % flavor)
-            message = open(message_file).read()
-            namespace = Message.get_namespace(message)
-            self.assertEqual(namespace,
-                'urn:iso:std:iso:20022:tech:xsd:%s' % flavor)
-
-            payment = Mock()
-            Payment = Mock()
-            Payment.search.return_value = [payment]
-
+        pool = Pool()
+        Message = pool.get('account.payment.sepa.message')
+
+        message_file = os.path.join(os.path.dirname(__file__),
+            '%s.xml' % flavor)
+        message = open(message_file, 'rb').read()
+        namespace = Message.get_namespace(message)
+        self.assertEqual(namespace,
+            'urn:iso:std:iso:20022:tech:xsd:%s' % flavor)
+
+        payment = Mock()
+        Payment = Mock()
+        Payment.search.return_value = [payment]
+
+        handler = CAMT054(BytesIO(message), Payment)
+
+        self.assertEqual(handler.msg_id, 'AAAASESS-FP-00001')
+        Payment.search.assert_called_with([
+                ('sepa_end_to_end_id', '=', 'MUELL/FINP/RA12345'),
+                ('kind', '=', 'payable'),
+                ])
+        Payment.succeed.assert_called_with([payment])
+
+        payment.reset_mock()
+        Payment.reset_mock()
+        with patch.object(CAMT054, 'is_returned') as is_returned:
+            is_returned.return_value = True
             handler = CAMT054(BytesIO(message), Payment)
 
-            self.assertEqual(handler.msg_id, 'AAAASESS-FP-00001')
-            Payment.search.assert_called_with([
-                    ('sepa_end_to_end_id', '=', 'MUELL/FINP/RA12345'),
-                    ('kind', '=', 'payable'),
-                    ])
-            Payment.succeed.assert_called_with([payment])
-
-            payment.reset_mock()
-            Payment.reset_mock()
-            with patch.object(CAMT054, 'is_returned') as is_returned:
-                is_returned.return_value = True
-                handler = CAMT054(BytesIO(message), Payment)
-
-                Payment.save.assert_called_with([payment])
-                Payment.fail.assert_called_with([payment])
+            Payment.save.assert_called_with([payment])
+            Payment.fail.assert_called_with([payment])
 
     def test_camt054_001_01(self):
         'Test camt.054.001.01 handling'
@@ -390,16 +395,17 @@ class AccountPaymentSepaTestCase(ModuleTestCase):
         'Test camt.054.001.04 handling'
         self.handle_camt054('camt.054.001.04')
 
+    @with_transaction()
     def test_sepa_mandate_report(self):
         'Test sepa mandate report'
-        with Transaction().start(DB_NAME, USER, context=CONTEXT):
-            pool = Pool()
-            Report = pool.get('account.payment.sepa.mandate', type='report')
-
-            environment = setup_environment()
-            company = environment['company']
-            bank = environment['bank']
-            customer = environment['customer']
+        pool = Pool()
+        Report = pool.get('account.payment.sepa.mandate', type='report')
+
+        environment = setup_environment()
+        company = environment['company']
+        bank = environment['bank']
+        customer = environment['customer']
+        with set_company(company):
             company_account, customer_account = setup_accounts(
                 bank, company, customer)
             mandate = setup_mandate(company, customer, customer_account)
@@ -411,11 +417,6 @@ class AccountPaymentSepaTestCase(ModuleTestCase):
 
 def suite():
     suite = trytond.tests.test_tryton.suite()
-    from trytond.modules.company.tests import test_company
-    from trytond.modules.account.tests import test_account
-    for test in chain(test_company.suite(), test_account.suite()):
-        if test not in suite and not isinstance(test, doctest.DocTestCase):
-            suite.addTest(test)
     suite.addTests(unittest.TestLoader().loadTestsFromTestCase(
             AccountPaymentSepaTestCase))
     return suite
diff --git a/tryton.cfg b/tryton.cfg
index 376ca4b..caaba9b 100644
--- a/tryton.cfg
+++ b/tryton.cfg
@@ -1,5 +1,5 @@
 [tryton]
-version=3.8.2
+version=4.0.0
 depends:
     account_payment
     company
diff --git a/trytond_account_payment_sepa.egg-info/PKG-INFO b/trytond_account_payment_sepa.egg-info/PKG-INFO
index 169532b..d03120c 100644
--- a/trytond_account_payment_sepa.egg-info/PKG-INFO
+++ b/trytond_account_payment_sepa.egg-info/PKG-INFO
@@ -1,12 +1,12 @@
 Metadata-Version: 1.1
 Name: trytond-account-payment-sepa
-Version: 3.8.2
+Version: 4.0.0
 Summary: Tryton module for SEPA payment
 Home-page: http://www.tryton.org/
 Author: Tryton
 Author-email: issue_tracker at tryton.org
 License: GPL-3
-Download-URL: http://downloads.tryton.org/3.8/
+Download-URL: http://downloads.tryton.org/4.0/
 Description: trytond_account_payment_sepa
         ============================
         
@@ -54,6 +54,7 @@ Classifier: Intended Audience :: Legal Industry
 Classifier: License :: OSI Approved :: GNU General Public License (GPL)
 Classifier: Natural Language :: Bulgarian
 Classifier: Natural Language :: Catalan
+Classifier: Natural Language :: Chinese (Simplified)
 Classifier: Natural Language :: Czech
 Classifier: Natural Language :: Dutch
 Classifier: Natural Language :: English
@@ -67,6 +68,9 @@ Classifier: Natural Language :: Slovenian
 Classifier: Natural Language :: Spanish
 Classifier: Operating System :: OS Independent
 Classifier: Programming Language :: Python :: 2.7
+Classifier: Programming Language :: Python :: 3.3
+Classifier: Programming Language :: Python :: 3.4
+Classifier: Programming Language :: Python :: 3.5
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
 Classifier: Topic :: Office/Business
diff --git a/trytond_account_payment_sepa.egg-info/SOURCES.txt b/trytond_account_payment_sepa.egg-info/SOURCES.txt
index 7f72201..0cf2e82 100644
--- a/trytond_account_payment_sepa.egg-info/SOURCES.txt
+++ b/trytond_account_payment_sepa.egg-info/SOURCES.txt
@@ -81,11 +81,13 @@ locale/fr_FR.po
 locale/hu_HU.po
 locale/it_IT.po
 locale/ja_JP.po
+locale/lo_LA.po
 locale/lt_LT.po
 locale/nl_NL.po
 locale/pt_BR.po
 locale/ru_RU.po
 locale/sl_SI.po
+locale/zh_CN.po
 template/base.003.xml
 template/base.xml
 template/pain.001.001.03.xml
diff --git a/trytond_account_payment_sepa.egg-info/requires.txt b/trytond_account_payment_sepa.egg-info/requires.txt
index f917d05..8b09656 100644
--- a/trytond_account_payment_sepa.egg-info/requires.txt
+++ b/trytond_account_payment_sepa.egg-info/requires.txt
@@ -1,8 +1,8 @@
 Genshi
 lxml
 python-dateutil
-trytond_account_payment >= 3.8, < 3.9
-trytond_company >= 3.8, < 3.9
-trytond_bank >= 3.8, < 3.9
-trytond_party >= 3.8, < 3.9
-trytond >= 3.8, < 3.9
\ No newline at end of file
+trytond_account_payment >= 4.0, < 4.1
+trytond_company >= 4.0, < 4.1
+trytond_bank >= 4.0, < 4.1
+trytond_party >= 4.0, < 4.1
+trytond >= 4.0, < 4.1
\ No newline at end of file
-- 
tryton-modules-account-payment-sepa



More information about the tryton-debian-vcs mailing list