Šta pokriva specifikacija EMV QR
Specifikacija EMV QR koda organizacije EMVCo definiše kako su podaci o plaćanju raspoređeni unutar običnog QR koda. Postoji u dva režima. U režimu koji prikazuje trgovac (Merchant-Presented Mode, MPM) trgovac prikazuje kod, a kupac ga skenira bankarskom aplikacijom ili aplikacijom novčanika. U režimu koji prikazuje potrošač (Consumer-Presented Mode, CPM) aplikacija kupca prikazuje kod, a trgovac ga skenira na kasi.
Specifikacija ne stvara platnu mrežu. To je zajednički format podataka, pa nacionalni sistem ili kartična mreža može da doda sopstvene podatke o računu, a ostatak sadržaja zadrži isti. Zato Pix u Brazilu, PromptPay na Tajlandu, SGQR u Singapuru, DuitNow u Maleziji, QRIS u Indoneziji, VietQR u Vijetnamu i Bharat QR u Indiji strukturno izgledaju slično.
Kako je sadržaj strukturiran
MPM sadržaj je niz objekata podataka, svaki zapisan kao dvocifreni ID, dvocifrena dužina i vrednost. Na primer, 5303840 znači ID 53 (valuta transakcije), dužina 03, vrednost 840 (američki dolari u numeričkom obliku ISO 4217). Objekti idu jedan za drugim bez razdelnika, a neki ID-ovi su šabloni koji sadrže sopstvene ugnežđene objekte u istom formatu.
Sadržaj mora da počne ID-jem 00 i da se završi ID-jem 63, kontrolnim zbirom. Kontrolni zbir je vrednost CRC-16/CCITT-FALSE zapisana kao četiri heksadecimalna znaka, izračunata nad svim što je pre njega, uključujući znakove 6304. Skener koji izračuna drugačiji kontrolni zbir odbacuje kod, čime se hvata većina grešaka pri kucanju ili kopiranju.
- 00: indikator formata sadržaja, uvek 01
- 01: tačka pokretanja, 11 za statički ili 12 za dinamički
- 26–51: šabloni informacija o računu trgovca
- 52: šifra kategorije trgovca (MCC)
- 53: valuta (numerički ISO 4217) i 54: iznos
- 58: kod zemlje, 59: naziv trgovca, 60: grad
- 62: dodatni podaci kao što su broj računa ili referenca; 63: CRC
Statički i dinamički kodovi
Statički EMV QR kod (tačka pokretanja 11) štampa se jednom i koristi više puta, a kupac sam kuca iznos. Dinamički kod (tačka pokretanja 12) generiše se za jednu transakciju i obično nosi iznos i referencu, pa kupac samo potvrđuje. Odštampane nalepnice na pultu obično su statičke, dok su kodovi na ekranu kase ili na računu obično dinamički.