From f8b219c992d1cc5adfe1763601d548171a85f2bd Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Mon, 29 May 2017 18:07:40 +0200 Subject: [PATCH] Add support for ISO20022 "Category Purpose" Add local instrument 'INST' for SEPA Instant Credit Transfer --- .../models/account_payment_order.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/account_banking_sepa_direct_debit/models/account_payment_order.py b/account_banking_sepa_direct_debit/models/account_payment_order.py index 116c2e6db..3592437fe 100644 --- a/account_banking_sepa_direct_debit/models/account_payment_order.py +++ b/account_banking_sepa_direct_debit/models/account_payment_order.py @@ -68,6 +68,7 @@ class AccountPaymentOrder(models.Model): for line in self.bank_line_ids: transactions_count_a += 1 priority = line.priority + categ_purpose = line.category_purpose # The field line.date is the requested payment date # taking into account the 'date_prefered' setting # cf account_banking_payment_export/models/account_payment.py @@ -106,25 +107,27 @@ class AccountPaymentOrder(models.Model): line.mandate_id.recurrent_sequence_type assert seq_type_label is not False seq_type = seq_type_map[seq_type_label] - key = (line.date, priority, seq_type, scheme) + key = (line.date, priority, categ_purpose, seq_type, scheme) if key in lines_per_group: lines_per_group[key].append(line) else: lines_per_group[key] = [line] - for (requested_date, priority, sequence_type, scheme), lines in \ - lines_per_group.items(): + for (requested_date, priority, categ_purpose, sequence_type, scheme),\ + lines in lines_per_group.items(): # B. Payment info payment_info, nb_of_transactions_b, control_sum_b = \ self.generate_start_payment_info_block( pain_root, "self.name + '-' + " "sequence_type + '-' + requested_date.replace('-', '') " - "+ '-' + priority", - priority, scheme, sequence_type, requested_date, { + "+ '-' + priority + '-' + category_purpose", + priority, scheme, categ_purpose, + sequence_type, requested_date, { 'self': self, 'sequence_type': sequence_type, 'priority': priority, + 'category_purpose': categ_purpose or 'NOcateg', 'requested_date': requested_date, }, gen_args)