Supports both old and new formats:
- Old format: guid, qr, status, islucky, lastverified, attempts
- New format: serial, qr_pin, status, is_lucky, used_at, attempts
Required columns: Must have either (guid + qr) OR (serial + qr_pin)
Optional columns: status, used_at, is_lucky, attempts
Example (new format):
serial,qr_pin,status,is_lucky,attempts
0103,D3W3ODUC,used,0,3
0109,5UVQ3O27,unused,1,0