QRReferenceUtils provides tools for generating, validating, normalizing and formatting QR reference numbers.

Normalize

import ch.codeblock.qrinvoice.util.QRReferenceUtils;

// ...

System.out.println(QRReferenceUtils.normalizeQrReference("11 00012 34560 00000 00008 13457"));
// prints "110001234560000000000813457"

Format

import ch.codeblock.qrinvoice.util.QRReferenceUtils;

// ...

System.out.println(QRReferenceUtils.formatQrReference("110001234560000000000813457"));
// prints "11 00012 34560 00000 00008 13457"

Checksum

The QRReferenceUtils contains the modulo10 calculation, which is used to calculate the checksum of a digit string.

import ch.codeblock.qrinvoice.util.QRReferenceUtils;

// ...

System.out.println(QRReferenceUtils.modulo10Recursive("12345"));
// prints the checksum of 12345 "7"