Zatímco ISO 20022 se stává moderním globálním standardem pro bankovní převody, ISO 8583 je veteránem a tichým hrdinou, který již desítky let zajišťuje, že transakce provedené platebními kartami – ať už v bankomatech (ATM), nebo na prodejních místech (POS) – proběhnou během několika sekund. Jedná se o mezinárodní standard, který definuje formát zpráv pro výměnu informací mezi finančními institucemi týkající se transakcí, jako jsou nákupy, výběry hotovosti, dotazy na zůstatek nebo dobíjení.
Co je ISO 8583 a Kde se Používá?
ISO 8583 (celým názvem ISO 8583:1993/2003 Financial Transaction Card Originated Messages) je norma definující formát datových zpráv pro finanční transakce zahájené kartou.
Klíčové charakteristiky:
- Určení: Primárně slouží k výměně zpráv mezi POS terminálem, akceptační bankou, kartovou sítí (např. Visa, Mastercard) a vydavatelskou bankou. Je to struktura dat, kterou komunikuje ATM a POS terminál s celým platebním systémem.
- Optimalizace pro Rychlost: Zprávy jsou navrženy pro maximální efektivitu a nízkou latenci. Struktura je kompaktní, často binární nebo kódovaná pomocí EBCDIC/ASCII, což je rychlejší pro zpracování než rozsáhlé textové formáty typu XML.
- Použití: Najdete ho všude, kde se používají karty:
- POS terminály: Platba v obchodě.
- ATM: Výběry, vklady, dotazy na zůstatek.
- Platební brány (Payment Gateways): Platební brány často přijímají data od obchodníků ve svých vlastních formátech (často XML/JSON přes API), ale na backendu pak převádějí tyto informace do formátu ISO 8583 pro komunikaci s kartovými sítěmi a bankami. Jsou tak klíčovým převodníkem mezi „moderním webem“ a „starším, ale robustním kartovým světem“.
- Systémy autorizace a zúčtování (Acquiring a Issuing systémy).
Jak Vypadá Zpráva ISO 8583?
Zprávy ISO 8583 jsou navrženy tak, aby byly flexibilní, ale striktně strukturované. Zpráva je rozdělena do tří hlavních částí:
1. Typ Zprávy (MTI – Message Type Indicator)
MTI je čtyřmístný numerický kód, který je naprosto klíčový. Definuje typ zprávy a funkci transakce.
| Pozice | Název | Význam | Příklad |
| 1. | Verze | Verze standardu | 0 (1987), 1 (1993), 2 (2003) |
| 2. | Třída zprávy | Hlavní funkce zprávy | 1 (Autorizace), 2 (Finanční transakce), 8 (Správa) |
| 3. | Funkce zprávy | Konkrétní typ zprávy | 00 (Požadavek), 10 (Odpověď), 20 (Potvrzení) |
| 4. | Původ zprávy | Kdo zprávu vytvořil | 1 (Z terminálu), 2 (Z banky) |
Příklad MTI: 1100
- 1 (Verze 1993)
- 1 (Třída Autorizace)
- 00 (Požadavek, který má být zpracován)
- Význam: Požadavek na autorizaci platby (např. platba kartou v obchodě).
2. Bitová Mapa (Bitmap)
Bitová mapa je srdcem ISO 8583. Je to pole, které ukazuje, která datová pole (Field 1 až Field 128) jsou přítomna v dané zprávě.
- Délka bitové mapy: Bitová mapa je vždy buď 8 bytů (64 bitů) pro primární mapu (pole 1-64), nebo 16 bytů (128 bitů), pokud je přítomna i sekundární mapa (pole 65-128). První bit v primární mapě (Field 1) určuje, zda je sekundární mapa přítomna.
- Bit s hodnotou 1 znamená, že příslušné datové pole je ve zprávě obsaženo.
Upozornění k délce: Zpráva ISO 8583 nemá maximální délku 128 bitů. 128 je maximální počet datových polí, která mohou být indikována bitovou mapou. Samotná zpráva může být mnohem delší, protože každé datové pole může mít různou délku (a některá jsou velmi dlouhá, např. Track 2 Data nebo data z EMV čipu). Délka zprávy je proměnná a může se pohybovat od desítek po stovky bytů.
3. Datová Pole (Data Elements)
Jedná se o až 128 předdefinovaných polí, která nesou skutečná transakční data. Každé pole má pevnou definici pro jeho obsah a formát (délka, numerický/alfanumerický). Datová pole se do zprávy vkládají v numerickém pořadí podle toho, jak jsou indikována v bitové mapě.
| Pole (Field) | Název | Význam |
| 2 | Primary Account Number (PAN) | Číslo karty (často maskované) |
| 3 | Processing Code | Kód definující typ transakce (např. nákup, výběr, dobíjení) |
| 4 | Amount, Transaction | Částka transakce |
| 11 | System Trace Audit Number (STAN) | Sekvenční číslo pro sledování transakce v síti |
| 35 | Track 2 Data | Data z magnetického proužku (pro starší transakce) |
| 39 | Response Code | Dvoumístný kód odpovědi (např. 00 = Schváleno, 51 = Nedostatek peněz) |
| 41 | Card Acceptor Terminal ID | Identifikace POS terminálu |
Reálná Ukázka Zprávy ISO 8583 (Zjednodušeno pro čitelnost)
Reálné zprávy ISO 8583 jsou často binární nebo hexadecimální řetězce, což je obtížně čitelné. Zde je příklad zprávy reprezentovaný v ASCII, s rozdělením na komponenty, jako by prošla terminálem:
Kontext: Klient platí kartou Visa v obchodě za nákup za 123.45 CZK.
Header (volitelný, např. délka zprávy): 0081
MTI: 1100
Primary Bitmap (hexadecimálně): 72200000008011C0
(V binárním zápisu: 0111 0010 0010 0000 0000 0000 0000 0000 0000 0000 1000 0000 0001 0001 1100 0000)
=> Indikuje přítomnost polí: 2, 3, 4, 11, 14, 22, 25, 35, 37, 39, 41, 42, 49, 53, 54, 61 (a dalších v sekundární mapě, pokud by Bit 1 byl nastaven)
Datová pole (ve stejném pořadí, v jakém jsou indikována v bitmapě):
Field 2 (PAN, LLVAR-max 19 číslic, "LL" je délka): 16412345678901234
Field 3 (Processing Code, N6): 000000 (Nákup)
Field 4 (Amount, Transaction, N12): 000000012345 (123.45 CZK)
Field 11 (STAN, N6): 001234
Field 14 (Date, Expiration, N4): 2512 (Prosinec 2025)
Field 22 (POS Entry Mode, N3): 021 (Čipová karta, online PIN)
Field 25 (POS Condition Code, N2): 00 (Normální transakce)
Field 35 (Track 2 Data, LLVAR): 37412345678901234=2512101000000000000
Field 37 (Retrieval Reference Number, AN12): 123456789012
Field 39 (Response Code, N2 - prázdné v požadavku):
Field 41 (Card Acceptor Terminal ID, ANS8): POS12345
Field 42 (Card Acceptor ID Code, ANS15): MERCHANTID98765
Field 49 (Currency Code, Transaction, N3): 203 (CZK)
Field 53 (Security Related Control Information, N16): 1234567890123456 (PIN Block)
Field 54 (Additional Amounts, N...):
Field 61 (Additional POS Data, LLVAR): 15ABCDABCDABCDABCD
Popis, kde se co nachází v ukázce:
Header: 0081: Toto je volitelný předřadník zprávy, který nemusí být součástí samotného standardu ISO 8583, ale používá se v komunikačních protokolech. Zde0081obvykle označuje délku celé následující ISO 8583 zprávy v bytech (zde 81 bytů, ale v reálu by to bylo více, pro zjednodušení).MTI: 1100: To jsou první 4 znaky za hlavičkou.1(verze 1993),1(autorizace),00(požadavek).Primary Bitmap: 72200000008011C0: Osm hexadecimálních znaků představuje 8 bytů (64 bitů) primární bitové mapy.- Každý hexadecimální znak (např.
7) odpovídá čtyřem bitům (např.0111). 72200000008011C0v bináru indikuje, která pole od 1 do 64 jsou přítomna. (Například bit 2 je 1, bit 3 je 1, bit 4 je 1 atd.).
- Každý hexadecimální znak (např.
Datová pole: Následují v přesném numerickém pořadí, jak jsou označena v bitové mapě.- Field 2 (
164123...): První pole po bitové mapě.16je indikátor délky (LL), což znamená, že číslo karty má 16 číslic.4123...je samotné číslo karty (PAN). - Field 3 (
000000): Kód zpracování. - Field 4 (
000000012345): Částka transakce. Formát je N12, což znamená 12 numerických číslic, kde poslední dvě jsou desetinná místa (zde 123.45). - Field 11 (
001234): STAN (System Trace Audit Number). - …a tak dále, pro všechna pole, která byla indikována v bitové mapě.
- Field 2 (
Tato struktura umožňuje extrémně efektivní parsování a zpracování, jelikož příjemce zprávy přesně ví, které datové položky očekávat a v jakém pořadí.
ISO 8583 vs. ISO 20022
| Vlastnost | ISO 8583 | ISO 20022 |
| Primární Zaměření | Kartové transakce (ATM, POS) a jejich autorizace/zúčtování. | Bankovní převody (SEPA, SWIFT), cenné papíry, cash management, regulace. |
| Cíl | Rychlost, kompaktnost, efektivita autorizace v reálném čase. | Detailní sémantika, bohatost dat, STP (Straight-Through Processing), robustnost. |
| Formát | Binární nebo ASCII/EBCDIC kódování, bitové mapy, pole s proměnnou délkou (LLVAR/LLLVAR). | XML (XSD schémata) založené na UML modelování. Možný i JSON v budoucnu. |
| Bohatost Dat | Omezená, zaměřená na klíčové transakční detaily pro autorizaci. | Extrémně bohatá, strukturovaná (detaily adresy, faktur, smluv, účel platby). |
| Stáří | Od roku 1987 (nejčastěji verze 1993/2003). | Moderní, zaváděný globálně v posledních 10+ letech. |
ISO 8583 zůstává klíčovým standardem pro vysoce frekvenční autorizační sítě, kde je prioritou rychlost a minimalizace přenášených dat. ISO 20022 představuje budoucnost bankovního zúčtování a reportingu, kde je kladen důraz na transparentnost, automatizaci a schopnost nést bohatá, strukturovaná data pro sofistikovanější procesy.
Text a grafika byly vygenerovány modelem Gemini (Google). Následně upraveno autorem.