| text | STRING | https://opencv.org | Payload to encode. Must be representable in the chosen 'mode' (numeric = digits only, alphanumeric = 0-9 A-Z and $%*+-./: and space) and must fit the chosen version - otherwise the node reports the OpenCV error instead of writing a corrupt code. |
| error_correction | COMBO | M (~15% recovery) | Reed-Solomon error-correction level: how much of the code may be damaged/occluded and still decode. Higher levels leave less room for data (the symbol grows) but survive print wear, glare and logos pasted over the centre. |
| mode | COMBO | auto (pick the densest that fits) | Payload encoding. 'auto' lets OpenCV choose the densest mode the text fits. numeric/alphanumeric pack more characters per module but restrict the alphabet; byte carries arbitrary bytes; ECI (UTF-8) tags the payload as UTF-8 for non-Latin text; kanji packs Shift-JIS. |
| version | INT | 00–40 | Symbol version = size in modules (v = 21 + 4*(v-1) modules square). 0 = auto: the smallest version that fits. A fixed version keeps a set of codes the same physical size; too small for the payload is an error. |
| module_size | INT | 81–64 | Pixels per QR module in the output image (nearest-neighbour upscale). 1 = the raw bitmap (one pixel per module) - too small for most scanners; 6-12 is a good print/screen size. |
| quiet_zone | INT | 20–16 | EXTRA white border in modules, added around the TWO quiet-zone modules OpenCV emits. The QR spec asks for four, so 2 (the default) is the spec-compliant margin; raise it when the code is composited onto a busy background. |
| structure_number | INT | 11–16 | Structured Append: number of codes the message is split over (1 = a single code). The parts decode into one message only when a decoder sees all of them; 'CV QR Detect' writes the joined message on the first part. |