SEPA Credit Transfer for Italy - CBI pain.001 Generator
Pay vendors and employees in EUR by generating ISO 20022 pain.001 files with the Italian CBI bank profile - uploaded through your own bank's CBI / remote-banking channel. No third-party gateway, no per-transaction fee.
What this app does
Create a batch of credit transfers in Odoo, validate every IBAN and BIC, then export a standards-compliant CustomerCreditTransferInitiation (pain.001) XML file. The file follows the EPC SEPA Credit Transfer Rulebook and the Italian CBI (Customer to Bank Interbank) corporate-banking profile, so it is accepted by the file-upload / remote-banking channels of Italian banks. You stay in full control: the file is generated inside your Odoo and uploaded with your own banking credentials.
Key features
Two ISO 20022 schema versions
Emit pain.001.001.09 (the 2019 message version on which the current SEPA Credit Transfer scheme is based, the default) or the legacy pain.001.001.03 CBI classic profile for an older Italian bank channel that still requires it. Choose per company or per batch.
Italian IBAN with CIN check
Every IBAN is validated with the ISO 13616 / ISO 7064 MOD-97 checksum and the Italian national CIN control character computed over ABI + CAB + account number - the same depth a domestic Italian bank applies. ABI and CAB are extracted and shown on each line.
CBI CUC and tax identifiers
Carry your CUC (Codice Univoco CBI) in the initiating party so the bank can authorise the file, and your Partita IVA or Codice Fiscale in the debtor block for reconciliation. Company tax ids are classified automatically into the correct ISO 20022 organisation / private id branch.
IBAN-only (BIC-less) transfers
SEPA is IBAN-only since February 2016. When a creditor BIC is unknown the file carries NOTPROVIDED for the creditor agent, exactly as the EPC guidelines require - accepted across the whole SEPA area, including San Marino.
Structured and free-text remittance
Use a free-text causale (RmtInf/Ustrd) or an ISO 11649 / SCOR RF creditor reference (RmtInf/Strd) so the payee reconciles your invoice automatically. Italian accents are transliterated to the SEPA character set.
Build batches from vendor bills
Select posted vendor bills and let the wizard group residual amounts per supplier, pull each supplier's bank IBAN, and fill in the remittance from the invoice reference - one click to a ready-to-send payment file.
pain.001 elements produced
| ISO 20022 element | Content |
|---|---|
| GrpHdr / MsgId, CreDtTm | Unique message id and creation timestamp |
| GrpHdr / NbOfTxs, CtrlSum | Transaction count and control sum (EUR) |
| InitgPty / Id / OrgId (CBI) | Your CUC with proprietary scheme name CBI |
| PmtInf / PmtMtd | TRF (credit transfer) |
| PmtInf / SvcLvl / Cd | SEPA service level |
| PmtInf / ChrgBr | SLEV (shared charges, SEPA-mandated) |
| PmtInf / ReqdExctnDt | Requested execution date |
| Dbtr / Id | Debtor Partita IVA (OrgId) or Codice Fiscale (PrvtId) |
| DbtrAcct / Id / IBAN | Ordering account IBAN |
| CdtTrfTxInf / Amt / InstdAmt | Amount with Ccy="EUR" |
| CdtrAgt / FinInstnId | BIC or NOTPROVIDED (IBAN-only) |
| RmtInf / Ustrd or Strd | Free-text causale or SCOR/RF reference |
How it works
- Set your ordering account IBAN, BIC, CUC and Partita IVA / Codice Fiscale in Settings.
- Create a SEPA Credit Transfer batch and add transfer lines (or build them from vendor bills).
- Validate the data - IBAN/CIN, BIC, amounts and CUC are checked.
- Generate the pain.001 file, preview it, and download it.
- Upload the file to your bank's CBI / remote-banking portal and mark the batch as sent.
Validation built in: ISO 13616 MOD-97 + Italian CIN for every IBAN, ISO 9362 BIC format and BIC-vs-IBAN country match, strictly positive amounts under the SEPA per-transaction ceiling, and an 8-character CUC. Problems are reported before the file is produced, so banks do not reject your upload.
Community-only, no external dependencies
Builds on the Odoo Community account module. No Enterprise module, no online connector and no third-party service is required - the file is produced entirely inside your Odoo and you transmit it with your own bank credentials.
Screenshots
Credit Transfers
Build From Bills
Update date: 2026-07-02