mirror of
https://github.com/OCA/bank-statement-import.git
synced 2025-01-20 12:37:43 +02:00
Merge pull request #147 from akretion/10-fix-and-improve-camt
[10.0] camt: remove dead code and fix warning
This commit is contained in:
@@ -83,14 +83,6 @@ class CamtParser(models.AbstractModel):
|
||||
if party_node:
|
||||
self.add_value_from_node(
|
||||
ns, party_node[0], './ns:Nm', transaction, 'partner_name')
|
||||
self.add_value_from_node(
|
||||
ns, party_node[0], './ns:PstlAdr/ns:Ctry', transaction,
|
||||
'partner_country'
|
||||
)
|
||||
address_node = party_node[0].xpath(
|
||||
'./ns:PstlAdr/ns:AdrLine', namespaces={'ns': ns})
|
||||
if address_node:
|
||||
transaction['partner_address'] = [address_node[0].text]
|
||||
# Get remote_account from iban or from domestic account:
|
||||
account_node = node.xpath(
|
||||
'./ns:RltdPties/ns:%sAcct/ns:Id' % party_type,
|
||||
@@ -101,32 +93,17 @@ class CamtParser(models.AbstractModel):
|
||||
'./ns:IBAN', namespaces={'ns': ns})
|
||||
if iban_node:
|
||||
transaction['account_number'] = iban_node[0].text
|
||||
bic_node = node.xpath(
|
||||
'./ns:RltdAgts/ns:%sAgt/ns:FinInstnId/ns:BIC' % party_type,
|
||||
namespaces={'ns': ns}
|
||||
)
|
||||
if bic_node:
|
||||
transaction['account_bic'] = bic_node[0].text
|
||||
else:
|
||||
self.add_value_from_node(
|
||||
ns, account_node[0], './ns:Othr/ns:Id', transaction,
|
||||
'account_number'
|
||||
)
|
||||
transaction['data'] = etree.tostring(node)
|
||||
|
||||
def parse_entry(self, ns, node):
|
||||
"""Parse an Ntry node and yield transactions"""
|
||||
transaction = {'name': '/', 'amount': 0} # fallback defaults
|
||||
self.add_value_from_node(
|
||||
ns, node, './ns:BkTxCd/ns:Prtry/ns:Cd', transaction,
|
||||
'transfer_type'
|
||||
)
|
||||
self.add_value_from_node(
|
||||
ns, node, './ns:BookgDt/ns:Dt', transaction, 'date')
|
||||
self.add_value_from_node(
|
||||
ns, node, './ns:BookgDt/ns:Dt', transaction, 'execution_date')
|
||||
self.add_value_from_node(
|
||||
ns, node, './ns:ValDt/ns:Dt', transaction, 'value_date')
|
||||
amount = self.parse_amount(ns, node)
|
||||
if amount != 0.0:
|
||||
transaction['amount'] = amount
|
||||
@@ -196,8 +173,6 @@ class CamtParser(models.AbstractModel):
|
||||
)
|
||||
self.add_value_from_node(
|
||||
ns, node, './ns:Id', result, 'name')
|
||||
self.add_value_from_node(
|
||||
ns, node, './ns:Dt', result, 'date')
|
||||
self.add_value_from_node(
|
||||
ns, node, './ns:Acct/ns:Ccy', result, 'currency')
|
||||
result['balance_start'], result['balance_end_real'] = (
|
||||
|
||||
@@ -6,21 +6,13 @@
|
||||
'name': '20170323123456789012345',
|
||||
'transactions': [{'account_number': 'CH2222000000123456789',
|
||||
'amount': 2187.0,
|
||||
'data': '<TxDtls xmlns="urn:iso:std:iso:20022:tech:xsd:camt.053.001.04" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">\n <Refs>\n <AcctSvcrRef>123456CHCAFEBABE</AcctSvcrRef>\n <Prtry>\n <Tp>01</Tp>\n <Ref>123456CHCAFEBABE</Ref>\n </Prtry>\n </Refs>\n <Amt Ccy="CHF">2187.00</Amt>\n <CdtDbtInd>CRDT</CdtDbtInd>\n <BkTxCd>\n <Domn>\n <Cd>PMNT</Cd>\n <Fmly>\n <Cd>RCDT</Cd>\n <SubFmlyCd>AUTT</SubFmlyCd>\n </Fmly>\n </Domn>\n </BkTxCd>\n <RltdPties>\n <Dbtr>\n <Nm>Banque Cantonale Vaudoise</Nm>\n <PstlAdr>\n <StrtNm>Place Saint-François</StrtNm>\n <BldgNb>14</BldgNb>\n <PstCd>1003</PstCd>\n <TwnNm>Lausanne</TwnNm>\n <Ctry>CH1</Ctry>\n </PstlAdr>\n </Dbtr>\n <DbtrAcct>\n <Id>\n <IBAN>CH2222000000123456789</IBAN>\n </Id>\n </DbtrAcct>\n </RltdPties>\n <RltdAgts>\n <DbtrAgt>\n <FinInstnId>\n <BICFI>POFICHBEXXX</BICFI>\n <Nm>POSTFINANCE AG</Nm>\n <PstlAdr>\n <AdrLine>MINGERSTRASSE 20</AdrLine>\n <AdrLine>3030 BERNE</AdrLine>\n </PstlAdr>\n </FinInstnId>\n </DbtrAgt>\n </RltdAgts>\n <RmtInf>\n <Strd>\n <CdtrRefInf>\n <Tp>\n <CdOrPrtry>\n <Prtry>ISR Reference</Prtry>\n </CdOrPrtry>\n </Tp>\n <Ref>302388292000011111111111111</Ref>\n </CdtrRefInf>\n <AddtlRmtInf>?REJECT?0</AddtlRmtInf>\n </Strd>\n </RmtInf>\n <RltdDts>\n <AccptncDtTm>2017-03-22T20:00:00</AccptncDtTm>\n </RltdDts>\n </TxDtls>\n ',
|
||||
'date': '2017-03-22',
|
||||
'execution_date': '2017-03-22',
|
||||
'name': u'CR\xc9DIT GROUP\xc9 BVR TRAITEMENT DU 22.03.2017 NUM\xc9RO CLIENT 01-70884-3 PAQUET ID: 123456CHCAFEBABE',
|
||||
'partner_country': 'CH1',
|
||||
'partner_name': 'Banque Cantonale Vaudoise',
|
||||
'ref': '302388292000011111111111111',
|
||||
'value_date': '2017-03-23'},
|
||||
'ref': '302388292000011111111111111'},
|
||||
{'account_number': 'CH3333000000123456789',
|
||||
'amount': 1296.0,
|
||||
'data': '<TxDtls xmlns="urn:iso:std:iso:20022:tech:xsd:camt.053.001.04" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">\n <Refs>\n <AcctSvcrRef>123456CHCAFEBABE</AcctSvcrRef>\n <Prtry>\n <Tp>01</Tp>\n <Ref>123456CHCAFEBABE</Ref>\n </Prtry>\n </Refs>\n <Amt Ccy="CHF">1296.00</Amt>\n <CdtDbtInd>CRDT</CdtDbtInd>\n <BkTxCd>\n <Domn>\n <Cd>PMNT</Cd>\n <Fmly>\n <Cd>RCDT</Cd>\n <SubFmlyCd>AUTT</SubFmlyCd>\n </Fmly>\n </Domn>\n </BkTxCd>\n <RltdPties>\n <Dbtr>\n <Nm>Banque Cantonale Vaudoise</Nm>\n <PstlAdr>\n <StrtNm>Place Saint-François</StrtNm>\n <BldgNb>14</BldgNb>\n <PstCd>1003</PstCd>\n <TwnNm>Lausanne</TwnNm>\n <Ctry>CH2</Ctry>\n </PstlAdr>\n </Dbtr>\n <DbtrAcct>\n <Id>\n <IBAN>CH3333000000123456789</IBAN>\n </Id>\n </DbtrAcct>\n </RltdPties>\n <RltdAgts>\n <DbtrAgt>\n <FinInstnId>\n <BICFI>POFICHBEYYY</BICFI>\n <Nm>POSTFINANCE AG</Nm>\n <PstlAdr>\n <AdrLine>MINGERSTRASSE 20</AdrLine>\n <AdrLine>3030 BERNE</AdrLine>\n </PstlAdr>\n </FinInstnId>\n </DbtrAgt>\n </RltdAgts>\n <RmtInf>\n <Strd>\n <CdtrRefInf>\n <Tp>\n <CdOrPrtry>\n <Prtry>ISR Reference</Prtry>\n </CdOrPrtry>\n </Tp>\n <Ref>302388292000022222222222222</Ref>\n </CdtrRefInf>\n <AddtlRmtInf>?REJECT?0</AddtlRmtInf>\n </Strd>\n </RmtInf>\n <RltdDts>\n <AccptncDtTm>2017-03-22T20:00:00</AccptncDtTm>\n </RltdDts>\n </TxDtls>\n ',
|
||||
'date': '2017-03-22',
|
||||
'execution_date': '2017-03-22',
|
||||
'name': u'CR\xc9DIT GROUP\xc9 BVR TRAITEMENT DU 22.03.2017 NUM\xc9RO CLIENT 01-70884-3 PAQUET ID: 123456CHCAFEBABE',
|
||||
'partner_country': 'CH2',
|
||||
'partner_name': 'Banque Cantonale Vaudoise',
|
||||
'ref': '302388292000022222222222222',
|
||||
'value_date': '2017-03-23'}]}])
|
||||
'ref': '302388292000022222222222222'}]}])
|
||||
|
||||
@@ -4,42 +4,24 @@
|
||||
'balance_start': 15568.27,
|
||||
'date': '2014-01-05',
|
||||
'name': '1234Test/1',
|
||||
'transactions': [{'account_bic': 'ABNANL2A',
|
||||
'account_number': 'NL46ABNA0499998748',
|
||||
'transactions': [{'account_number': 'NL46ABNA0499998748',
|
||||
'amount': -754.25,
|
||||
'data': '<TxDtls xmlns="urn:iso:std:iso:20022:tech:xsd:camt.053.001.02">\n <Refs>\n <InstrId>INNDNL2U20141231000142300002844</InstrId>\n <EndToEndId>435005714488-ABNO33052620</EndToEndId>\n <MndtId>1880000341866</MndtId>\n </Refs>\n <AmtDtls>\n <TxAmt>\n <Amt Ccy="EUR">754.25</Amt>\n </TxAmt>\n </AmtDtls>\n <RltdPties>\n <Cdtr>\n <Nm>INSURANCE COMPANY TESTX</Nm>\n <PstlAdr>\n <StrtNm>TEST STREET 20</StrtNm>\n <TwnNm>1234 AB TESTCITY</TwnNm>\n <Ctry>NL</Ctry>\n </PstlAdr>\n </Cdtr>\n <CdtrAcct>\n <Id>\n <IBAN>NL46ABNA0499998748</IBAN>\n </Id>\n </CdtrAcct>\n </RltdPties>\n <RltdAgts>\n <CdtrAgt>\n <FinInstnId>\n <BIC>ABNANL2A</BIC>\n </FinInstnId>\n </CdtrAgt>\n </RltdAgts>\n <RmtInf>\n <Ustrd>Insurance policy 857239PERIOD 01.01.2014 - 31.12.2014</Ustrd>\n </RmtInf>\n <AddtlTxInf>MKB Insurance 859239PERIOD 01.01.2014 - 31.12.2014</AddtlTxInf>\n </TxDtls>\n ',
|
||||
'date': '2014-01-05',
|
||||
'execution_date': '2014-01-05',
|
||||
'name': 'MKB Insurance 859239PERIOD 01.01.2014 - 31.12.2014',
|
||||
'note': 'Insurance policy 857239PERIOD 01.01.2014 - 31.12.2014',
|
||||
'partner_country': 'NL',
|
||||
'partner_name': 'INSURANCE COMPANY TESTX',
|
||||
'ref': '435005714488-ABNO33052620',
|
||||
'transfer_type': 'EI',
|
||||
'value_date': '2014-01-05'},
|
||||
{'account_bic': 'ABNANL2A',
|
||||
'account_number': 'NL46ABNA0499998748',
|
||||
'ref': '435005714488-ABNO33052620'},
|
||||
{'account_number': 'NL46ABNA0499998748',
|
||||
'amount': -594.05,
|
||||
'data': '<TxDtls xmlns="urn:iso:std:iso:20022:tech:xsd:camt.053.001.02">\n <Refs>\n <InstrId>TESTBANK/NL/20141229/01206408</InstrId>\n <EndToEndId>TESTBANK/NL/20141229/01206408</EndToEndId>\n <MndtId>NL22ZZZ524885430000-C0125.1</MndtId>\n </Refs>\n <AmtDtls>\n <TxAmt>\n <Amt Ccy="EUR">564.05</Amt>\n </TxAmt>\n </AmtDtls>\n <RltdPties>\n <Cdtr>\n <Nm>Test Customer</Nm>\n <PstlAdr>\n <Ctry>NL</Ctry>\n </PstlAdr>\n </Cdtr>\n <CdtrAcct>\n <Id>\n <IBAN>NL46ABNA0499998748</IBAN>\n </Id>\n </CdtrAcct>\n </RltdPties>\n <RltdAgts>\n <CdtrAgt>\n <FinInstnId>\n <BIC>ABNANL2A</BIC>\n </FinInstnId>\n </CdtrAgt>\n </RltdAgts>\n <RmtInf>\n <Ustrd>Direct Debit S14 0410</Ustrd>\n </RmtInf>\n <RtrInf>\n <Rsn>\n <Cd>AC06</Cd>\n </Rsn>\n </RtrInf>\n <AddtlTxInf>Direct debit S14 0410 AC07 Rek.nummer blokkade TESTBANK/NL/20141229/01206408</AddtlTxInf>\n </TxDtls>\n ',
|
||||
'date': '2014-01-05',
|
||||
'execution_date': '2014-01-05',
|
||||
'name': 'Direct debit S14 0410 AC07 Rek.nummer blokkade TESTBANK/NL/20141229/01206408',
|
||||
'note': 'Direct Debit S14 0410',
|
||||
'partner_country': 'NL',
|
||||
'partner_name': 'Test Customer',
|
||||
'ref': 'TESTBANK/NL/20141229/01206408',
|
||||
'transfer_type': 'EIST',
|
||||
'value_date': '2014-01-05'},
|
||||
{'account_bic': 'ABNANL2A',
|
||||
'account_number': 'NL69ABNA0522123643',
|
||||
'ref': 'TESTBANK/NL/20141229/01206408'},
|
||||
{'account_number': 'NL69ABNA0522123643',
|
||||
'amount': 1405.31,
|
||||
'data': '<TxDtls xmlns="urn:iso:std:iso:20022:tech:xsd:camt.053.001.02">\n <Refs>\n <InstrId>INNDNL2U20140105000217200000708</InstrId>\n <EndToEndId>115</EndToEndId>\n </Refs>\n <AmtDtls>\n <TxAmt>\n <Amt Ccy="EUR">1405.31</Amt>\n </TxAmt>\n </AmtDtls>\n <RltdPties>\n <Dbtr>\n <Nm>3rd party Media</Nm>\n <PstlAdr>\n <StrtNm>SOMESTREET 570-A</StrtNm>\n <TwnNm>1276 ML HOUSCITY</TwnNm>\n <Ctry>NL</Ctry>\n </PstlAdr>\n </Dbtr>\n <DbtrAcct>\n <Id>\n <IBAN>NL69ABNA0522123643</IBAN>\n </Id>\n </DbtrAcct>\n </RltdPties>\n <RltdAgts>\n <DbtrAgt>\n <FinInstnId>\n <BIC>ABNANL2A</BIC>\n </FinInstnId>\n </DbtrAgt>\n </RltdAgts>\n <AddtlTxInf>#RD PARTY MEDIA CUSNO 90782 4210773</AddtlTxInf>\n </TxDtls>\n ',
|
||||
'date': '2014-01-05',
|
||||
'execution_date': '2014-01-05',
|
||||
'name': '#RD PARTY MEDIA CUSNO 90782 4210773',
|
||||
'note': 'INNDNL2U20140105000217200000708',
|
||||
'partner_country': 'NL',
|
||||
'partner_name': '3rd party Media',
|
||||
'ref': '115',
|
||||
'transfer_type': 'ET',
|
||||
'value_date': '2014-01-05'}]}])
|
||||
'ref': '115'}]}])
|
||||
|
||||
Reference in New Issue
Block a user