QR¶
ZATCA QR payload generation and accessors.
Access QR¶
QR payload
Read the base64 TLV payload from a signed invoice.
SignedInvoice::qr_code(&self) -> &str
SignedInvoice.qr() -> str
FfiResult_FfiString fatoora_signed_invoice_qr(FfiSignedInvoice* signed);
Args
signed: signed invoice handle.
Returns
string: base64 TLV payload.
Errors¶
Errors
QrCodeErrorcovers missing fields, TLV length overflow, or XML extraction failures.
Behavior¶
Behavior
- QR payloads use TLV tags 1-5 for seller + totals, and tags 6-9 for hash/signature data when present.
- The base64-encoded payload must be 700 characters or fewer.
See also: QR Guide