]> git.ipfire.org Git - thirdparty/python-fints.git/commitdiff
implement custom response handler for get_transactions_xml 110/head
authorPhilipp Knechtges <philipp-dev@knechtges.com>
Sun, 5 Apr 2020 14:41:30 +0000 (16:41 +0200)
committerPhilipp Knechtges <philipp-dev@knechtges.com>
Sun, 5 Apr 2020 14:41:30 +0000 (16:41 +0200)
fints/client.py

index b86841976d7cb111bca61cc86cd7e818f56d4dc0..7c3f495d3e3afbc317cb35679fee9eb02eb89faf 100644 (file)
@@ -546,6 +546,15 @@ class FinTS3Client:
 
         return response
 
+    @staticmethod
+    def _response_handler_get_transactions_xml(responses):
+        booked_streams = []
+        pending_streams = []
+        for seg in responses:
+            booked_streams.extend(seg.statement_booked.camt_statements)
+            pending_streams.append(seg.statement_pending)
+        return booked_streams, pending_streams
+
     def get_transactions_xml(self, account: SEPAAccount, start_date: datetime.date = None,
                              end_date: datetime.date = None) -> list:
         """
@@ -573,17 +582,12 @@ class FinTS3Client:
                     touchdown_point=touchdown,
                     supported_camt_messages=SupportedMessageTypes(['urn:iso:std:iso:20022:tech:xsd:camt.052.001.02']),
                 ),
-                lambda responses: responses,  # TODO
+                FinTS3Client._response_handler_get_transactions_xml,
                 'HICAZ'
             )
             logger.info('Fetching done.')
 
-        booked_streams = []
-        pending_streams = []
-        for seg in responses:
-            booked_streams.extend(seg.statement_booked.camt_statements)
-            pending_streams.append(seg.statement_pending)
-        return booked_streams, pending_streams
+        return responses
 
     def get_credit_card_transactions(self, account: SEPAAccount, credit_card_number: str, start_date: datetime.date = None, end_date: datetime.date = None):
         # FIXME Reverse engineered, probably wrong