Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[18.0][MIG] account_banking_pain_base #1404

Draft
wants to merge 81 commits into
base: 18.0
Choose a base branch
from

Conversation

alexis-via
Copy link
Contributor

No description provided.

Alexis de Lattre and others added 30 commits December 15, 2024 15:25
…13-11-21:

- add module account_banking_pain_base
- add support for initiating party identification, priority and structured remittance info in XML file
- the requested execution date now uses the fields date_prefered and date_scheduled (the field of the wizard has been removed)
- the 'convert to ascii' feature is now an option of the payment mode (enabled by default)
- set 'communication' field of payment.line to 140 chars and hide field 'communication2'
- Code factoring for SCT and SDD
- Add support for direct debit migration from national format to SEPA
- Source : Standard-XML-SDD-Initiation-v3-EN by Febelfin
- Add group in order to mask the fields for "Original Mandate Indentification" for users in countries that don't required it.
- Add tracking on important fields of the mandate.
- Better form view on company.
- Update constraint on mandate following my devs on "Original Mandate Identification".
- Add support for Party Identifier for Belgium. Can be easily extended for other countries.
- Mutualize more code between SCT and SDD.
* Make it easier to extend structured communication types.
* Use new style to make selection extendable.
* Help text for bank and BIC fields. Courtesy of Alexis de Lattre.
* Do not use InstrPrty for Direct Debit.
…ayment.lines object to allow grouping in the payments
* Add support for non-SEPA DD and CT without without IBANs
* Add hooks for l10n_ch_sepa (pain.001.001.03.ch.02)
* Move code of account_banking_pain_base/models/banking_export_pain.py to account_banking_pain_base/models/account_payment_order.py
* Add postal address in party block
* Adds flexibility to support direct debit direct debit for switzerland (pain.008.001.02.ch.01)
* Implement SEPA Core recommandations for postal address
* Add field local_instrument in payment lines and bank payment lines
* Add the bank_line as argument to some methods that generate SEPA XML
Port almost all modules to v10

* Update to EPC Rulebook v9.2 that start to apply on 2016-11-20 (bug OCA#300)
Add local instrument 'INST' for SEPA Instant Credit Transfer
Now the visibility is controlled through a security group.
Currently translated at 9.6% (8 of 83 strings)

Translation: bank-payment-11.0/bank-payment-11.0-account_banking_pain_base
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-11-0/bank-payment-11-0-account_banking_pain_base/it/
* Standard migration procedure
* README by fragments
* Fixed tests
* Change
* Fix related no readonly in account_banking_pain_base
* Override default partner bank account check on account_payment_partner
* Convert Python date to string
Prevent inserting BIC not respecting the SEPA pain schemas.
The bic fields is not required, so the constraint must take that into
consideration and accept empty bic.
Currently translated at 32.2% (57 of 177 strings)

Translation: bank-payment-12.0/bank-payment-12.0-account_banking_pain_base
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-12-0/bank-payment-12-0-account_banking_pain_base/it/
oca-ci and others added 28 commits December 15, 2024 15:25
Currently translated at 64.7% (110 of 170 strings)

Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/es/
Currently translated at 98.8% (168 of 170 strings)

Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/es/
Currently translated at 60.0% (102 of 170 strings)

Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/hr/
Currently translated at 100.0% (170 of 170 strings)

Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/fr/
Currently translated at 31.1% (53 of 170 strings)

Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/it/
Currently translated at 100.0% (170 of 170 strings)

Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/es/
Currently translated at 31.1% (53 of 170 strings)

Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/it/
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/
The field 'sepa' on account.payment.order is only display for SEPA
payment methods.
If the option "show warning if not SEPA" is enabled on the payment
method, a warning banner is now displayed on payment orders with a SEPA
payment method which are not SEPA.
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/
Currently translated at 100.0% (175 of 175 strings)

Translation: bank-payment-16.0/bank-payment-16.0-account_banking_pain_base
Translate-URL: https://translation.odoo-community.org/projects/bank-payment-16-0/bank-payment-16-0-account_banking_pain_base/es/
NEW FEATURES
- activate 'in_payment' payment_state on invoices... at last !
- payment order numbering: add ability to have a sequence specific to a particular payment mode (optional)
- add show account number policy "first_last" to show N first and N last characters of bank account number

SMALL IMPROVEMENTS
- account.payment.method: rename field "payment_order_only" to "payment_order_ok" for naming consistency with the field of account.payment.mode. Auto-set "payment_order_ok" of payment mode from the equivalent field of payment method. Migration scripts provided for account.payment.method and the data of SEPA credit transfer and SEPA direct debit.
- payment order attachment: add M2O payment_file_id that points to the payment file. No more need for a simplified attachment form view.
- keep the spaces in the scrambled bank account number, so that the user easily understands that it is a "scrambled" bank account number
- add field acc_number_scrambled on res.partner.bank for easy and direct use of scrambled account number

SIMPLIFICATION / CODE CLEANUP
- remove field partner_bank_id on account.move.line
- move code for scrambled account number from qweb report to res.partner.bank class
- remove boolean field show_bank_account_from_journal from account.payment.mode: we now consider that this option is always true i.e. when account_payment_partner is installed, Odoo takes the bank accounts to display on the customer invoice from the payment mode (if the payment mode is empty, it displays all the bank accounts of the company). As a consequence, hide partner_bank_id on customer invoice form view.
- remove fields inbound_payment_order_only and outbound_payment_order_only from account.journal : these 2 fields were not used!
- add check_company=True where it was missing and remove code of constraint that checks company consistency
- re-organise form view of payment order to equilibrate between left column and right column

TECHNICAL:
- replace @api.onchange by computed readonly=False store=True fields
- remove (or reduce) the use of demo data in tests
- speed-up tests by using tracking_disable=True
- Replace (6, 0, []) and (0, 0, {}) by Command.set() and Command.create()
- add sql unicity constraint on payment order number per company
Harmonize values for reference_type on account.move and communication_type on account.payment.line:
2 possible values : free and structured (migration script provided)
Simplify code for reference.
Use lxml.objectify instead of lxml.etree for XML generation
Add support for currencies with decimal places != 2
Stop using safe_eval() in _prepare_field()
Add arg 'raise_if_oversized' in _prepare_field() to avoid cutting fields
that should never be cut
More robust implementation of allowed characters in _prepare_field():
filter on the allower characters instead of filtering in unallowed
characters
Don't use _prepare_field() where it is not really needed (on dates,
country code, currency code)
Remove support for pain.001.001.02: nobody uses it (pain.001.001.03 must
be used according to EPC) and it adds maintenance burden
Switch methods from public to private where relevant
Remove noqa: C901 in account_banking_sepa_credit_transfer
Add tests in account_banking_pain_base
EPC says that the use of structured addresses will be mandatory starting
November 2025.
Remove support for:
- SCT : pain.001.001.04, pain.001.001.05
- SDD : ain.008.001.03, ain.008.001.04
because these PAIN version have never been adopted by EPC.
Update and improve README
…nt.payment.order

This new field payment_method_code on account.move and
account.payment.order is available as invisible in tree+form view: it
allows to easily show/hide fields specific to a payment method in format-specific modules.
Remove field sepa_payment_method (replaced by generic field payment_method_code)
Update field definition of payment_mode_id on account.move: precompute=True and move domain from view to field definition
@alexis-via alexis-via force-pushed the 18-mig-account_banking_pain_base branch from d7c16fd to 5f60b0f Compare January 29, 2025 23:12
@ioans73
Copy link
Member

ioans73 commented Feb 24, 2025

Hi @alexis-via
Do you plan to continue working on this PR?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.