OdooWiki OCA HUB

ITA - Banking SEPA Credit Transfer CBI

l10n_it_sct_cbi folder_open OCA/l10n-italy open_in_new
Banking License: AGPL-3

This module adds new payment export types to use in the payment order. For italian credit transfer, the format codes are

  • CBIBdyPaymentRequest.00.04.01
  • CBIBdyCrossBorderPaymentRequest.00.01.01

The created XML follows the CBI standards in https://www.cbi-org.eu/My-Menu/Servizio-CBI-Documentazione/Servizio-CBI-Documentazione-Standard.

Note (ITA):

Le specifiche CBI del bonifico XML SEPA (versione 00.04.01) si basano sul messaggio ISO20022 pain.001.001.09 e sono compliant al Rulebook SEPA.

Ad esempio la presenza obbligatoria dell’ABI della banca di addebito contenuto nel campo “MmbId” che è invece facoltativo nel tracciato ISO.

auto_awesome What this module does

AI-generated from the code · Odoo 16.0

Adds an Italian CBI payment method for outgoing SEPA credit transfers, so payment orders can be exported as CBI XML files in the two CBI formats.

This module adds a new outgoing payment method called "SEPA Credit Transfer Payment Request CBI" that users can select on payment orders. When a payment order uses it, Odoo generates an XML file following the Italian CBI standard instead of the standard SEPA file.

Two CBI formats are available: the domestic CBI payment request (00.04.01) and the cross-border CBI payment request (00.01.01). The format is chosen in the payment method settings.

Business rules the module enforces when building the file: - The debtor's bank must have an ABI code (taken from the bank or from the IBAN); otherwise the export stops with an error. - For the domestic format, the creditor's bank account must have a valid IBAN. - For the cross-border format, the bank must have a BIC and the creditor must have a country; otherwise the export stops with an error. - A bank account is required on each payment line.

It also groups payment lines by requested date and priority into separate payment blocks, adds postal addresses for debtor and creditor in the cross-border format, and requires an initiating party.

It works on the payment method and payment order screens (account.payment.method, account.payment.order); no new menus are added.

Models and fields (2)
  • account.payment.order · extends an existing model
  • account.payment.method · extends an existing modelpain_version

Text generated by AI (DeepSeek) from reading the Odoo 16.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 2 confirmed, 7 with no information of 9 versions.

Sources · Odoo 16.0

Confirmed on 2026-11-03 in branch 16.0 of OCA/l10n-italy.

terminal Installation and usage

OCA documentation · Odoo 16.0

In Invoicing / Configuration / Settings / SEPA/PAIN, set:

  • the CUC code in field Initiating Party Identifier
  • the Initiating Party Issuer (must be "CBI").

------------------------------------------------------------------------

In Invoicing / Configuration / Management / Payment Modes, create a new payment mode.

------------------------------------------------------------------------

In the new payment mode is important to set the Italian format SEPA CBI

This module uses the grouped payments implemented by the OCA in account_payment_order, grouped payments are also implemented in Odoo EE.

When you create a new payment order, you must select the payment mode created during configuration

In order to get the xml file:

  • click on "Confirm payments"
  • click on "Generate payment file"

------------------------------------------------------------------------

Then you can download the generated file

No verified information in OCA: Installation.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.