toJson method
Serialize. Omits false flags so the wire payload stays
compact and "absence = false" is symmetric.
Implementation
Map<String, dynamic> toJson() {
final out = <String, dynamic>{};
if (swipe) out['swipe'] = true;
if (chip) out['chip'] = true;
if (tap) out['tap'] = true;
if (manualEntry) out['manualEntry'] = true;
if (pin) out['pin'] = true;
if (signature) out['signature'] = true;
if (battery) out['battery'] = true;
if (firmware) out['firmware'] = true;
if (serialNumber) out['serialNumber'] = true;
if (fallback) out['fallback'] = true;
if (displayMessages) out['displayMessages'] = true;
if (contactless) out['contactless'] = true;
if (refunds) out['refunds'] = true;
if (voids) out['voids'] = true;
if (metadata != null) out['metadata'] = metadata;
return out;
}