account_banking_pain_base
Provide shared SEPA PAIN infrastructure used by credit transfer and direct debit modules to generate compliant payment files.
Key Features
- account.payment.line: Adds PAIN-specific priority, local instrument, category purpose, and purpose fields, extends communication length to 140 characters, and groups payment lines using those attributes for export.
- account.payment.method: Stores the PAIN version, controls ASCII conversion of outbound data, can warn when orders are not SEPA compliant, and expects derived modules to supply the XSD file path.
- account.payment.mode: Captures initiating party identifiers, issuer, and scheme along with default batch booking preferences consumed during PAIN generation.
- account.payment.order: Computes SEPA eligibility, exposes charge bearer and batch booking controls, raises warnings when lines fall outside SEPA, and assembles and validates sanitized PAIN XML headers, parties, addresses, and remittance details.
- res.bank: Enforces a SEPA-compliant BIC pattern through a constraint to block invalid bank identifiers.
- res.company: Stores initiating party issuer, identifier, and scheme values and auto-populates country-specific defaults at installation.
- res.config.settings: Presents initiating party fields and a multiple identifiers option within the accounting configuration for administrators.
- security: Provides a dedicated group that grants access to maintain multiple PAIN identifiers on payment modes.