Encode structural FPS information to a QR code string or Decode a QR code String to structural FPS information based on the specification.

Getting Started


final qrString = HKQrInfo(
      isDynamic: true,
      fpsProxy: FpsProxy(FpsType.fpsId, '123456'),
      amount: '0.01',


final hkqrInfo = HKQrInfo.decode('000201010211...');

Decode tips

  • Fail-fast: Decode will fail when first error was found.
  • Warnings: Decode may success with some warnings, i.e. some unrecognized field found during decode.
  • Mandatory: Mandatory fields must present even if not used in FPS.
  • Optional: Optional fields must have valid format and length if present.


There are 3 use cases in example

  • Fill form of FPS information, encode it to a QR code string, and use qr_flutter to generate a QR image;
  • Decode a QR code string to FPS information;
  • Use qr_code_scanner to scan a QR image and decode scan result to FPS information.