mirror of
https://github.com/OCA/bank-statement-import.git
synced 2025-01-20 12:37:43 +02:00
[10.0][FIX] account_bank_statement_import_camt: payment amounts (#166)
This commit is contained in:
committed by
Pedro M. Baeza
parent
b53c4159f5
commit
9ae52ea128
@@ -3,7 +3,7 @@
|
|||||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
|
||||||
{
|
{
|
||||||
'name': 'CAMT Format Bank Statements Import',
|
'name': 'CAMT Format Bank Statements Import',
|
||||||
'version': '10.0.1.1.2',
|
'version': '10.0.1.1.3',
|
||||||
'license': 'AGPL-3',
|
'license': 'AGPL-3',
|
||||||
'author': 'Odoo Community Association (OCA), Therp BV',
|
'author': 'Odoo Community Association (OCA), Therp BV',
|
||||||
'website': 'https://github.com/OCA/bank-statement-import',
|
'website': 'https://github.com/OCA/bank-statement-import',
|
||||||
|
|||||||
@@ -20,9 +20,15 @@ class CamtParser(models.AbstractModel):
|
|||||||
sign = 1
|
sign = 1
|
||||||
amount = 0.0
|
amount = 0.0
|
||||||
sign_node = node.xpath('ns:CdtDbtInd', namespaces={'ns': ns})
|
sign_node = node.xpath('ns:CdtDbtInd', namespaces={'ns': ns})
|
||||||
|
if not sign_node:
|
||||||
|
sign_node = node.xpath(
|
||||||
|
'../../ns:CdtDbtInd', namespaces={'ns': ns})
|
||||||
if sign_node and sign_node[0].text == 'DBIT':
|
if sign_node and sign_node[0].text == 'DBIT':
|
||||||
sign = -1
|
sign = -1
|
||||||
amount_node = node.xpath('ns:Amt', namespaces={'ns': ns})
|
amount_node = node.xpath('ns:Amt', namespaces={'ns': ns})
|
||||||
|
if not amount_node:
|
||||||
|
amount_node = node.xpath(
|
||||||
|
'./ns:AmtDtls/ns:TxAmt/ns:Amt', namespaces={'ns': ns})
|
||||||
if amount_node:
|
if amount_node:
|
||||||
amount = sign * float(amount_node[0].text)
|
amount = sign * float(amount_node[0].text)
|
||||||
return amount
|
return amount
|
||||||
|
|||||||
@@ -12,12 +12,19 @@
|
|||||||
'partner_name': 'INSURANCE COMPANY TESTX',
|
'partner_name': 'INSURANCE COMPANY TESTX',
|
||||||
'ref': '435005714488-ABNO33052620'},
|
'ref': '435005714488-ABNO33052620'},
|
||||||
{'account_number': 'NL46ABNA0499998748',
|
{'account_number': 'NL46ABNA0499998748',
|
||||||
'amount': -594.05,
|
'amount': -564.05,
|
||||||
'date': '2014-01-05',
|
'date': '2014-01-05',
|
||||||
'name': 'Direct debit S14 0410 AC07 Rek.nummer blokkade TESTBANK/NL/20141229/01206408',
|
'name': 'Direct debit S14 0410 AC07 Rek.nummer blokkade TESTBANK/NL/20141229/01206408',
|
||||||
'note': 'Direct Debit S14 0410',
|
'note': 'Direct Debit S14 0410',
|
||||||
'partner_name': 'Test Customer',
|
'partner_name': 'Test Customer',
|
||||||
'ref': 'TESTBANK/NL/20141229/01206408'},
|
'ref': 'TESTBANK/NL/20141229/01206408'},
|
||||||
|
{'account_number': 'NL46ABNA0499998748',
|
||||||
|
'amount': -100.0,
|
||||||
|
'date': '2014-01-05',
|
||||||
|
'name': 'Direct debit S14 0410 AC07 Rek.nummer blokkade TESTBANK/NL/20141229/01206408',
|
||||||
|
'note': 'Direct Debit S14 0410',
|
||||||
|
'partner_name': 'Test Customer',
|
||||||
|
'ref': 'TESTBANK/NL/20141229/01206407'},
|
||||||
{'account_number': 'NL69ABNA0522123643',
|
{'account_number': 'NL69ABNA0522123643',
|
||||||
'amount': 1405.31,
|
'amount': 1405.31,
|
||||||
'date': '2014-01-05',
|
'date': '2014-01-05',
|
||||||
|
|||||||
@@ -111,7 +111,7 @@
|
|||||||
</NtryDtls>
|
</NtryDtls>
|
||||||
</Ntry>
|
</Ntry>
|
||||||
<Ntry>
|
<Ntry>
|
||||||
<Amt Ccy="EUR">594.05</Amt>
|
<Amt Ccy="EUR">664.05</Amt>
|
||||||
<CdtDbtInd>DBIT</CdtDbtInd>
|
<CdtDbtInd>DBIT</CdtDbtInd>
|
||||||
<RvslInd>true</RvslInd>
|
<RvslInd>true</RvslInd>
|
||||||
<Sts>BOOK</Sts>
|
<Sts>BOOK</Sts>
|
||||||
@@ -134,6 +134,13 @@
|
|||||||
</Prtry>
|
</Prtry>
|
||||||
</BkTxCd>
|
</BkTxCd>
|
||||||
<NtryDtls>
|
<NtryDtls>
|
||||||
|
<Btch>
|
||||||
|
<MsgId>2014/125</MsgId>
|
||||||
|
<PmtInfId>2018/125-20141229-NORM</PmtInfId>
|
||||||
|
<NbOfTxs>2</NbOfTxs>
|
||||||
|
<TtlAmt Ccy="EUR">664.05</TtlAmt>
|
||||||
|
<CdtDbtInd>DBIT</CdtDbtInd>
|
||||||
|
</Btch>
|
||||||
<TxDtls>
|
<TxDtls>
|
||||||
<Refs>
|
<Refs>
|
||||||
<InstrId>TESTBANK/NL/20141229/01206408</InstrId>
|
<InstrId>TESTBANK/NL/20141229/01206408</InstrId>
|
||||||
@@ -175,6 +182,47 @@
|
|||||||
</RtrInf>
|
</RtrInf>
|
||||||
<AddtlTxInf>Direct debit S14 0410 AC07 Rek.nummer blokkade TESTBANK/NL/20141229/01206408</AddtlTxInf>
|
<AddtlTxInf>Direct debit S14 0410 AC07 Rek.nummer blokkade TESTBANK/NL/20141229/01206408</AddtlTxInf>
|
||||||
</TxDtls>
|
</TxDtls>
|
||||||
|
<TxDtls>
|
||||||
|
<Refs>
|
||||||
|
<InstrId>TESTBANK/NL/20141229/01206407</InstrId>
|
||||||
|
<EndToEndId>TESTBANK/NL/20141229/01206407</EndToEndId>
|
||||||
|
<MndtId>NL22ZZZ524885430000-C0125.2</MndtId>
|
||||||
|
</Refs>
|
||||||
|
<AmtDtls>
|
||||||
|
<TxAmt>
|
||||||
|
<Amt Ccy="EUR">100.00</Amt>
|
||||||
|
</TxAmt>
|
||||||
|
</AmtDtls>
|
||||||
|
<RltdPties>
|
||||||
|
<Cdtr>
|
||||||
|
<Nm>Test Customer</Nm>
|
||||||
|
<PstlAdr>
|
||||||
|
<Ctry>NL</Ctry>
|
||||||
|
</PstlAdr>
|
||||||
|
</Cdtr>
|
||||||
|
<CdtrAcct>
|
||||||
|
<Id>
|
||||||
|
<IBAN>NL46ABNA0499998748</IBAN>
|
||||||
|
</Id>
|
||||||
|
</CdtrAcct>
|
||||||
|
</RltdPties>
|
||||||
|
<RltdAgts>
|
||||||
|
<CdtrAgt>
|
||||||
|
<FinInstnId>
|
||||||
|
<BIC>ABNANL2A</BIC>
|
||||||
|
</FinInstnId>
|
||||||
|
</CdtrAgt>
|
||||||
|
</RltdAgts>
|
||||||
|
<RmtInf>
|
||||||
|
<Ustrd>Direct Debit S14 0410</Ustrd>
|
||||||
|
</RmtInf>
|
||||||
|
<RtrInf>
|
||||||
|
<Rsn>
|
||||||
|
<Cd>AC06</Cd>
|
||||||
|
</Rsn>
|
||||||
|
</RtrInf>
|
||||||
|
<AddtlTxInf>Direct debit S14 0410 AC07 Rek.nummer blokkade TESTBANK/NL/20141229/01206408</AddtlTxInf>
|
||||||
|
</TxDtls>
|
||||||
</NtryDtls>
|
</NtryDtls>
|
||||||
</Ntry>
|
</Ntry>
|
||||||
<Ntry>
|
<Ntry>
|
||||||
|
|||||||
@@ -63,6 +63,24 @@ class TestImport(TransactionCase):
|
|||||||
'date': '2014-01-05',
|
'date': '2014-01-05',
|
||||||
'ref': '435005714488-ABNO33052620',
|
'ref': '435005714488-ABNO33052620',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
'remote_account': 'NL46ABNA0499998748',
|
||||||
|
'transferred_amount': -564.05,
|
||||||
|
'value_date': '2014-01-05',
|
||||||
|
'ref': 'TESTBANK/NL/20141229/01206408',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'remote_account': 'NL46ABNA0499998748',
|
||||||
|
'transferred_amount': -100.0,
|
||||||
|
'value_date': '2014-01-05',
|
||||||
|
'ref': 'TESTBANK/NL/20141229/01206407',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'remote_account': 'NL69ABNA0522123643',
|
||||||
|
'transferred_amount': 1405.31,
|
||||||
|
'value_date': '2014-01-05',
|
||||||
|
'ref': '115',
|
||||||
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
|||||||
@@ -38,6 +38,11 @@ class TestImport(TransactionCase):
|
|||||||
'partner_bic': 'ABNANL2A',
|
'partner_bic': 'ABNANL2A',
|
||||||
'partner_name': 'Test Customer',
|
'partner_name': 'Test Customer',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
'partner_account': 'NL46ABNA0499998748',
|
||||||
|
'partner_bic': 'ABNANL2A',
|
||||||
|
'partner_name': 'Test Customer',
|
||||||
|
},
|
||||||
{
|
{
|
||||||
'partner_account': 'NL46ABNA0499998748',
|
'partner_account': 'NL46ABNA0499998748',
|
||||||
'partner_bic': 'ABNANL2A',
|
'partner_bic': 'ABNANL2A',
|
||||||
|
|||||||
Reference in New Issue
Block a user