Javaslat (V2)

  1. Bevezetés

    Az itt olvasható szabványverzió javaslat az aktuális szabvány (V1) hátrányainak kiküszöbölésére, annak továbbfejlesztésével jött létre. A javasolt megoldás JSON alapú, könnyen bővíthető és támogatja a deeplink technológiát. Szemben a továbbfejlesztett V3-as javaslattal terminológiájában és elrendezésében hasonlít a V1-es szabványra, nem tartalmaz összetett JSON objektumokat és nagyobb a helyigénye.

  2. Előnyök
    • A JSON adatstruktúra az IETF által RFC 8259 néven szabványosított formátum, mely egyszerű, mind gépi, mind emberi feldolgozásra kifejezetten alkalmas.
    • Könnyen bővíthető, akár új szabványverzió kiadása nélkül is.
    • JSON séma segítségével lehetőség van a szabványos adatformátum gépi validációjára, az adatmezők mind gépi, mind emberi értelmezését támogató meta-információk közzétételére.
    • Támogatja a deeplink technológiát, ezáltal változatos fizetési helyzetekben és módszerekkel (QR kód / link) alkalmazható.
  3. Hátrányok
    • Nem hasonlít az EPC szabványra, ez azonban nem igazán releváns, mivel a módosítások és bővítések miatt már az aktuális szabvány (V1) sem kompatibilis vele.
    • Mivel nem tartalmaz összetett objektumokat, nem struktúrálja az összetartozó adatokat. Ez hátrányt jelenthet a validáció során, amire jó példa az összeg mező, ahol az érték és a pénznem együtt értelmes, külön-külön nincs értelme megadni.
    • A kulcsok "beszédesek", ezzel azonban a QR kódba kódolandó adatmennyiség megnő.
  4. Továbbfejlesztett javaslat

    A fenti hátrányokat javítandó, az alábbi továbbfejlesztett szabványverzió javaslat került kidolgozásra:

  5. Szabvány leírása

    A szabványos fizetési kérelem egy URL-t tartalmaz az alábbi szegmensekkel:

    • URI séma (https://)
    • az MNB kezelésében lévő, központi domain név, mely lehet az MNB gyökér domain neve (mnb.hu), vagy ha ez technikailag nem megoldható, akkor egy tetszőleges, egybetűs subdomain, pl. q.mnb.hu
    • a szabvány verziókódja (v2)
    • a JSON sémának megfelelő JSON adatstruktúra (sortörésmentes) Base64 enkódolással

    Példa: https://q.mnb.hu/v2/<base64>

    A Base64 enkódolás során használandó karakterkészlet: UTF-8

  6. Minta