Result of a sprint with Akexis de Lattre in a corridor at Fosdem 2014.
In a nutshell, this MP moves the hooks that are necessary for account_direct_debit from account_banking_payment to account_banking_payment_export, resulting in a leaner dependency graph [1].
account_banking_payment (and thus account_banking core) is therefore not necessary anymore for doing direct debit.
account_banking_payment can now be seen as providing two essential functions:
1/ adding the notion of transfer account on payment modes (marking the invoices paid as soon as the payment order is sent)
2/ bridging with the bank statement reconciliation features of account_banking core
IMO, the next step in the refactoring process would be to move 1/ to a stand-alone module.
Other things in this branch:
- removing auto_install=True that we found unnecessary and potentially risky
- demo data by Alexis
- a trivial bug fix
- setting noupdate=1 for the SEPA payment mode types
- allow payment of customer refunds lp:1275478
In a nutshell, this commit
- moves payment_order_type (payment|debit) to account_banking_payment_export
- makes payment_order_type visible in account_direct_debit
- make direct_debit depend on account_banking_payment_export
the work I carried out with Luc de Meyer (Noviat) during a code sprint on November 21st to get the additionnal features that were present in Luc's module account_pain for SEPA credit transfer (including the "Initiating Party Issuer", which is required by a few countries including Belgium and structured remittance info)
the module account_banking_pain_base : this module allows to share as much code as possible between the module for credit transfers and the module for direct debits
Update some error messages
Update translation files and FR translation
Include sepa_export in gen_args
Factorize more code between SDD and SCT
Fix view of payment lines
The modules account_banking_pain_base and account_banking_sepa_* are now fully PEP8 compliant