Repository
OCA/bank-payment-alternative · module folder · Try on Runboat
Module version
2.0.0
Category
Hidden
Folder size
0.69 MB
License
AGPL-3
Application
No
Auto-installable
No
Website
https://github.com/OCA/bank-payment-alternative
Last tracking update
2026-08-07 09:06:26
Authors
Noviat, Akretion, Odoo Community Association (OCA), Tecnativa
Maintainers
Noviat, Akretion, Odoo Community Association (OCA), Tecnativa
Committers
Alexis de Lattre, OCA-git-bot, oca-ci
Odoo dependencies
Python dependencies
lxml, unidecode
System dependencies
None
Required by
account_payment_sepa_credit_transfer, account_payment_sepa_direct_debit, l10n_fr_account_payment_intl_credit_transfer
Description
This module contains fields and functions that are used by the module
for SEPA Credit Transfer (account_payment_sepa_credit_transfer) and SEPA
Direct Debit (account_payment_sepa_direct_debit). This module doesn't
provide any functionality by itself.

This module was started during the Akretion-Noviat code sprint of
November 21st 2013 in Epiais les Louvres (France).

Code Analysis

Views touched (12)
XML IDNameModelTypeStatus
account_pain_regulatory_reporting_form account.pain.regulatory.reporting form New
account_pain_regulatory_reporting_search account.pain.regulatory.reporting search New
account_pain_regulatory_reporting_tree account.pain.regulatory.reporting list New
account_payment_line_form pain.base.account.payment.line account.payment.line form Inherits account_payment_batch_oca.account_payment_line_form
account_payment_line_tree pain.base.account.payment.tree account.payment.line tree Inherits account_payment_batch_oca.account_payment_line_tree
account_payment_lot_form account.payment.lot form Inherits account_payment_batch_oca.account_payment_lot_form
account_payment_lot_list account.payment.lot list Inherits account_payment_batch_oca.account_payment_lot_list
account_payment_method_form sepa_base.account_payment_method.form account.payment.method form Inherits account_payment_base_oca.account_payment_method_form
account_payment_method_line_form account.payment.method.line form Inherits account_payment_batch_oca.account_payment_method_line_form
account_payment_method_list sepa_base.account_payment_method.list account.payment.method list Inherits account_payment_base_oca.account_payment_method_list
account_payment_order_form pain.base.account.payment.order.form account.payment.order form Inherits account_payment_batch_oca.account_payment_order_form
view_account_config_settings account_payment_sepa_base.account.config.settings res.config.settings form Inherits account.res_config_settings_view_form
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (12)

New fields (4)
  • active Boolean
    default=True
  • code Char
    copy=False required=True size=10
  • country_id Many2one → res.country
    ondelete='restrict' required=False args: 'res.country'
  • name Char
    copy=False required=True translate=True
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (7)
  • category_purpose Selection
    help='If neither your bank nor your local regulations oblige you to set the category purpose, leave the field empty.' args: [('BONU', 'Bonus Payment'), ('CASH', 'Cash Management Transfer'), ('CBLK', 'Card Bulk Clearing'), ('CCRD', 'Credit Card Payment'), ('CORT', 'Trade Settlement Payment'), ('DCRD', 'Debit Card Payment'), ('DIVI', 'Dividend'), ('DVPM', 'Deliver Against Payment'), ('EPAY', 'ePayment'), ('FCOL', 'Fee Collection'), ('GOVT', 'Government Payment'), ('HEDG', 'Hedging'), ('ICCP', 'Irrevocable Credit Card Payment'), ('IDCP', 'Irrevocable Debit Card Payment'), ('INTC', 'Intra-Company Payment'), ('INTE', 'Interest'), ('LOAN', 'Loan'), ('OTHR', 'Other Payment'), ('PENS', 'Pension Payment'), ('RVPM', 'Receive Against Payment'), ('SALA', 'Salary Payment'), ('SECU', 'Securities'), ('SSBE', 'Social Security Benefit'), ('SUPP', 'Supplier Payment'), ('TAXS', 'Tax Payment'), ('TRAD', 'Trade'), ('TREA', 'Treasury Payment'), ('VATX', 'VAT Payment'), ('WHLD', 'WithHolding')]
  • communication Char
    size=140
  • company_country_id Many2one
    related='company_id.country_id'
  • local_instrument Selection
    args: []
  • priority Selection
    default='NORM' help="This field will be used as 'Instruction Priority' in the generated PAIN file." args: [('NORM', 'Normal'), ('HIGH', 'High')]
  • purpose Selection
    help='If neither your bank nor your local regulations oblige you to set the category purpose, leave the field empty.' selection=[('ACCT', 'Account Management'), ('CASH', 'Cash Management Transfer'), ('COLL', 'Collection Payment'), ('INTC', 'Intra Company Payment'), ('LIMA', 'Liquidity Management'), ('NETT', 'Netting'), ('AGRT', 'Agricultural Transfer'), ('BEXP', 'Business Expenses'), ('COMC', 'Commercial Payment'), ('CPYR', 'Copyright'), ('GDDS', 'Purchase Sale Of Goods'), ('LICF', 'License Fee'), ('ROYA', 'Royalties'), ('SCVE', 'Purchase Sale Of Services'), ('SUBS', 'Subscription'), ('SUPP', 'Supplier Payment'), ('TRAD', 'Trade Services'), ('CHAR', 'Charity Payment'), ('COMT', 'Consumer Third Party Consolidated Payment'), ('CLPR', 'Car Loan Principal Repayment'), ('GOVI', 'Government Insurance'), ('HLRP', 'Housing Loan Repayment'), ('INSU', 'Insurance Premium'), ('INTE', 'Interest'), ('LBRI', 'Labor Insurance'), ('LIFI', 'Life Insurance'), ('LOAN', 'Loan'), ('LOAR', 'Loan Repayment'), ('PPTI', 'Property Insurance'), ('RINP', 'Recurring Installment Payment'), ('TRFD', 'Trust Fund'), ('ADVA', 'Advance Payment'), ('CCRD', 'Credit Card Payment '), ('CFEE', 'Cancellation Fee'), ('COST', 'Costs'), ('DCRD', 'Debit Card Payment'), ('GOVT', 'Government Payment'), ('IHRP', 'Instalment Hire Purchase Agreement'), ('INSM', 'Installment'), ('MSVC', 'Multiple Service Types'), ('NOWS', 'Not Otherwise Specified'), ('OFEE', 'Opening Fee'), ('OTHR', 'Other'), ('PADD', 'Preauthorized debit'), ('PTSP', 'Payment Terms'), ('RCPT', 'Receipt Payment'), ('RENT', 'Rent'), ('STDY', 'Study'), ('ANNI', 'Annuity'), ('CMDT', 'Commodity Transfer'), ('DERI', 'Derivatives'), ('DIVD', 'Dividend'), ('FREX', 'Foreign Exchange'), ('HEDG', 'Hedging'), ('PRME', 'Precious Metal'), ('SAVG', 'Savings'), ('SECU', 'Securities'), ('TREA', 'Treasury Payment'), ('ANTS', 'Anesthesia Services'), ('CVCF', 'Convalescent Care Facility'), ('DMEQ', 'Durable Medicale Equipment'), ('DNTS', 'Dental Services'), ('HLTC', 'Home Health Care'), ('HLTI', 'Health Insurance'), ('HSPC', 'Hospital Care'), ('ICRF', 'Intermediate Care Facility'), ('LTCF', 'Long Term Care Facility'), ('MDCS', 'Medical Services'), ('VIEW', 'Vision Care'), ('ALMY', 'Alimony Payment'), ('BECH', 'Child Benefit'), ('BENE', 'Unemployment Disability Benefit'), ('BONU', 'Bonus Payment.'), ('COMM', 'Commission'), ('PENS', 'Pension Payment'), ('PRCP', 'Price Payment'), ('SALA', 'Salary Payment'), ('SSBE', 'Social Security Benefit'), ('ESTX', 'Estate Tax'), ('HSTX', 'Housing Tax'), ('INTX', 'Income Tax'), ('TAXS', 'Tax Payment'), ('VATX', 'Value Added Tax Payment'), ('AIRB', 'Air'), ('BUSB', 'Bus'), ('FERB', 'Ferry'), ('RLWY', 'Railway'), ('CBTV', 'Cable TV Bill'), ('ELEC', 'Electricity Bill'), ('ENRG', 'Energies'), ('GASB', 'Gas Bill'), ('NWCH', 'Network Charge'), ('NWCM', 'Network Communication'), ('OTLC', 'Other Telecom Related Bill'), ('PHON', 'Telephone Bill'), ('WTER', 'Water Bill')]
  • regulatory_reporting_id Many2one → account.pain.regulatory.reporting
    domain="[('country_id', 'in', (False, company_country_id))]" ondelete='restrict' args: 'account.pain.regulatory.reporting'
Public methods (0)

No public methods.

New fields (3)
  • category_purpose Selection
    readonly=True args: '_category_purpose_selection'
  • local_instrument Selection
    readonly=True args: '_local_instrument_selection'
  • priority Selection
    readonly=True args: '_priority_selection'
Public methods (0)

No public methods.

New fields (2)
  • pain_version Selection
    string='PAIN Version' args: []
  • warn_not_sepa Boolean
    string='Warn If Not SEPA'
Public methods (0)

No public methods.

New fields (4)
  • default_batch_booking Boolean
  • initiating_party_identifier Char
    help="This will be used as the 'Initiating Party Identifier' in the PAIN files generated by Odoo. If not defined, Initiating Party Identifier from company will be used.\nCommon format (13): \n- Country code (2, optional)\n- Company idenfier (N, VAT)\n- Service suffix (N, issued by bank)" size=35
  • initiating_party_issuer Char
    help="This will be used as the 'Initiating Party Issuer' in the PAIN files generated by Odoo. If not defined, Initiating Party Issuer from company will be used.\nCommon format (13): \n- Country code (2, optional)\n- Company idenfier (N, VAT)\n- Service suffix (N, issued by bank)" size=35
  • initiating_party_scheme Char
    help="This will be used as the 'Initiating Party Scheme Name' in the PAIN files generated by Odoo. This value is determined by the financial institution that will process the file. If not defined, no scheme will be used.\n" size=35
Public methods (0)

No public methods.

New fields (4)
  • batch_booking Boolean
    compute='_compute_batch_booking' help='If true, the bank statement will display only one debit line for all the wire transfers of the SEPA XML file ; if false, the bank statement will display one debit line per wire transfer of the SEPA XML file.' precompute=True readonly=False store=True tracking=True
  • charge_bearer Selection
    default='SLEV' help='Following service level : transaction charges are to be applied following the rules agreed in the service level and/or scheme (SEPA Core messages must use this). Shared : transaction charges on the debtor side are to be borne by the debtor, transaction charges on the creditor side are to be borne by the creditor. Borne by creditor : all transaction charges are to be borne by the creditor. Borne by debtor : all transaction charges are to be borne by the debtor.' tracking=True args: [('SLEV', 'Following Service Level'), ('SHAR', 'Shared'), ('CRED', 'Borne by Creditor'), ('DEBT', 'Borne by Debtor')]
  • sepa Boolean
    compute='_compute_sepa' string='SEPA Payment'
  • show_warning_not_sepa Boolean
    compute='_compute_sepa'
Public methods (0)

No public methods.

New fields (3)
  • initiating_party_identifier Char
    help="This will be used as the 'Initiating Party Identifier' in the SEPA XML files generated by Odoo." size=35
  • initiating_party_issuer Char
    help="This will be used as the 'Initiating Party Issuer' in the SEPA XML files generated by Odoo." size=35
  • initiating_party_scheme Char
    help="This will be used as the 'Initiating Party Scheme Name' in the SEPA XML files generated by Odoo." size=35
Public methods (0)

No public methods.

New fields (4)
  • group_pain_multiple_identifier Boolean
    help='Enable this option if your country requires several SEPA/PAIN identifiers like in Spain.' implied_group='account_payment_sepa_base.group_pain_multiple_identifier' string='Multiple identifiers'
  • initiating_party_identifier Char
    readonly=False related='company_id.initiating_party_identifier'
  • initiating_party_issuer Char
    readonly=False related='company_id.initiating_party_issuer'
  • initiating_party_scheme Char
    readonly=False related='company_id.initiating_party_scheme'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

Loading…