Building the EPC payload yourself
The EPC payload is a line-based text format. The following function shows how you can generate it in JavaScript/TypeScript:
function buildEPC({ name, iban, bic = '', amount, purpose = '' }) {
const amountStr = amount ? 'EUR' + Number(amount).toFixed(2) : '';
return [
'BCD', '001', '1', 'SCT',
bic.trim(),
name.trim().slice(0, 70),
iban.replace(/\s+/g, '').toUpperCase(),
amountStr,
'', '',
purpose.trim().slice(0, 140)
].join('\n');
}Creating a QR code from the payload
With the qrcode package from npm you can render the payload into a QR code:
import QRCode from 'qrcode';
const payload = buildEPC({
name: 'Max Mustermann',
iban: 'DE89370400440532013000',
amount: 99.99,
purpose: 'Invoice 2025-001'
});
QRCode.toCanvas(canvas, payload, {
errorCorrectionLevel: 'M',
width: 220
});Using this generator
You can link to this generator or treat it as a reference implementation. The full source code is available publicly.
Contact for collaboration
You are an agency or software vendor and would like to collaborate? Feel free to reach out via email: kontakt@girocodegenerator.com