Excel Tools

Convert Excel to SEPA XML for transfers and direct debits

Load a spreadsheet with one row per payment, enter your account details and download a pain.001 credit transfer or pain.008 direct debit file. Every IBAN, amount and mandate is checked first.

1. Type of file

2. Your details

3. Payments file

or (made-up names and documented test IBANs)

How to convert Excel to SEPA XML

  1. Choose transfers or direct debits and the version your bank expects. pain.001.001.03 and pain.008.001.02 are the ones most banks accept; .09 and .08 are the 2019 versions some banks now ask for.
  2. Enter your details: your name, IBAN, optional BIC, the date, and for direct debits your creditor identifier.
  3. Load the spreadsheet. One row per payment, with name, IBAN and amount at least. Columns are matched automatically and you can change the mapping. No file yet? Download the Excel template.
  4. Check and download. Every row is validated. Fix the errors, or leave those rows out, then download the XML and upload it to your online banking.

Private by design: no upload

A payment file contains names, IBANs and amounts: exactly what should not travel to a stranger’s server. This converter runs entirely in your browser. The spreadsheet is read and the XML is built on your own device, and nothing is sent anywhere.

You can check it in the Network tab of the developer tools, or open the page, go offline and keep working. The form details are not saved either: close the tab and they are gone.

What is checked before the XML is created

SEPA terms in plain words

Validated against the official ISO 20022 schemas

The generator was tested by creating files for all four versions (pain.001.001.03, pain.001.001.09, pain.008.001.02 and pain.008.001.08), including a 5,000-collection file, and validating each one against the official ISO 20022 XSD schemas. The XML follows the EPC guidelines: service level SEPA, charges SLEV, EUR only, and “NOTPROVIDED” when a BIC is not given.

Known limitations

Frequently asked questions

Is this SEPA XML converter really free?

Yes. It is 100% free, with no usage limits, no account and no sign-up. Direct debits are included; there is no paid plan.

Are my files uploaded to a server?

No. The spreadsheet is read and the XML is created inside your browser, so names, IBANs and amounts never leave your device. The page only downloads its own code and an open-source spreadsheet library from this site. If you accept analytics cookies, Google Analytics receives anonymous usage data such as page views, never the contents or names of your files.

Which pain version should I choose?

pain.001.001.03 for transfers and pain.008.001.02 for direct debits are accepted by most European banks. Some banks now ask for the 2019 versions, pain.001.001.09 and pain.008.001.08. Your bank’s technical guide or support team will tell you which one to use.

Will my bank accept the file?

The XML is valid against the official ISO 20022 schemas and follows the EPC guidelines, but each bank can add its own rules, for example requiring the BIC or a specific identifier. Confirm the version with your bank and upload a small test file before a real payment run.

What does the spreadsheet need?

One row per payment with at least the name, IBAN and amount. Direct debits also need the mandate ID and the mandate signature date, and optionally the sequence type. Column names do not matter: they are matched automatically and you can change the mapping. You can download a ready-made Excel template.

Why were some characters changed?

SEPA files only allow Latin letters without accents, digits, spaces and / - ? : ( ) . , ' +. Accented letters, ñ, ß, & and quotes are converted (for example “Peña & Co” becomes “Pena + Co”) and every change is listed so you can review it.

Can it read a SEPA XML file back into Excel?

Not yet. This tool only creates pain.001 and pain.008 files from a spreadsheet.

Analytics: only if you accept cookies, the page loads Google Analytics (through Google Tag Manager) to count visits and see which tools are used. It never receives the contents or names of your files. You can change your choice at any time with “Cookie settings” at the bottom of the page.