ISO-normen validator
Plak IBAN's, datums, ISBN's, valutacodes en meer en zie meteen aan welke ISO-norm elke waarde voldoet, of precies waarom niet.
Alles wordt in je browser gecontroleerd. Wat je plakt wordt niet geüpload of opgeslagen.
Plak hierboven waarden en het resultaat verschijnt hier.
ISO 8583 reference: response codes and data elements
Look up what a DE 39 response code means, or what any data element (DE) holds and how long it must be.
| Code | Meaning | Result |
|---|---|---|
| 00 | Approved or completed successfully | Approved |
| 01 | Refer to card issuer | Declined |
| 02 | Refer to card issuer, special condition | Declined |
| 03 | Invalid merchant | Error |
| 04 | Pick up card (no fraud) | Pick up card |
| 05 | Do not honor | Declined |
| 06 | Error | Error |
| 07 | Pick up card, special condition (fraud) | Pick up card |
| 08 | Honor with identification | Approved |
| 09 | Request in progress | System |
| 10 | Approved for partial amount | Approved |
| 11 | Approved (VIP) | Approved |
| 12 | Invalid transaction | Error |
| 13 | Invalid amount | Error |
| 14 | Invalid card number (no such number) | Error |
| 15 | No such issuer | Error |
| 16 | Approved, update track 3 | Approved |
| 17 | Customer cancellation | Declined |
| 18 | Customer dispute | Declined |
| 19 | Re-enter transaction | Error |
| 20 | Invalid response | Error |
| 21 | No action taken | Declined |
| 22 | Suspected malfunction | System |
| 23 | Unacceptable transaction fee | Error |
| 24 | File update not supported by receiver | Error |
| 25 | Unable to locate record in file | Error |
| 26 | Duplicate file update record, old record replaced | Error |
| 27 | File update field edit error | Error |
| 28 | File update file locked out | Error |
| 29 | File update not successful, contact acquirer | Error |
| 30 | Format error | Error |
| 31 | Bank not supported by switch | Error |
| 32 | Completed partially | Approved |
| 33 | Expired card, pick up | Pick up card |
| 34 | Suspected fraud, pick up | Pick up card |
| 35 | Card acceptor contact acquirer, pick up | Pick up card |
| 36 | Restricted card, pick up | Pick up card |
| 37 | Card acceptor call acquirer security, pick up | Pick up card |
| 38 | Allowable PIN tries exceeded, pick up | Pick up card |
| 39 | No credit account | Declined |
| 40 | Requested function not supported | Error |
| 41 | Lost card, pick up | Pick up card |
| 42 | No universal account | Declined |
| 43 | Stolen card, pick up | Pick up card |
| 44 | No investment account | Declined |
| 51 | Not sufficient funds | Declined |
| 52 | No checking account | Declined |
| 53 | No savings account | Declined |
| 54 | Expired card | Declined |
| 55 | Incorrect PIN | Declined |
| 56 | No card record | Declined |
| 57 | Transaction not permitted to cardholder | Declined |
| 58 | Transaction not permitted to terminal | Declined |
| 59 | Suspected fraud | Declined |
| 60 | Card acceptor contact acquirer | Declined |
| 61 | Exceeds withdrawal amount limit | Declined |
| 62 | Restricted card | Declined |
| 63 | Security violation | Declined |
| 64 | Original amount incorrect | Error |
| 65 | Exceeds withdrawal frequency limit | Declined |
| 66 | Card acceptor call acquirer security department | Declined |
| 67 | Hard capture (pick up card at ATM) | Pick up card |
| 68 | Response received too late | System |
| 75 | Allowable number of PIN tries exceeded | Declined |
| 76 | Invalid / non-existent "to" account specified | Error |
| 77 | Invalid / non-existent "from" account specified | Error |
| 78 | Invalid / non-existent account specified (general) | Error |
| 90 | Cut-off is in process (switch ending a business day) | System |
| 91 | Issuer or switch is inoperative | System |
| 92 | Financial institution or intermediate network facility cannot be found for routing | System |
| 93 | Transaction cannot be completed, violation of law | Declined |
| 94 | Duplicate transmission | Error |
| 95 | Reconcile error | Error |
| 96 | System malfunction | System |
| 97 | Reserved for ISO use | System |
| 98 | MAC error | Error |
| 99 | Reserved for private use | System |
Meanings follow ISO 8583 and common card-scheme usage. Each network (Visa, Mastercard, domestic switches) keeps its own list, so check its specification for codes that differ.
Wat deze ISO-validator controleert
De meeste codes die bedrijven dagelijks uitwisselen volgen een ISO-norm, en de meeste hebben een controlecijfer, zodat een typefout wordt opgemerkt voordat die een mislukte betaling, een geweigerde zending of een foutieve registratie veroorzaakt. Deze tool neemt wat je plakt, één waarde per regel, bepaalt aan welke norm de waarde kan voldoen en laat zien of hij slaagt, samen met de onderdelen die erin zitten.
Voor datums en tijden volgt de tool ISO 8601: kalenderdatums in compacte notatie en notatie met streepjes, weekdatums zoals 2024-W09-4, ordinale datums, tijden met of zonder UTC-offset, duren zoals P3Y6M4DT12H30M5S en intervallen. Hij kent schrikkeljaren, de jaren met 53 weken, de notatie 24:00 voor het einde van de dag en de schrikkelseconde, en wijst op de gangbare fouten: een spatie in plaats van de letter T, een mix van compacte en gestreepte notatie of een 30 februari.
Voor geld controleert de tool IBAN's tegen het register van elk land, inclusief de exacte lengte en het nationale rekeningformaat, en verifieert hij de mod-97-controlecijfers. BIC-codes worden opgesplitst in bank, land en filiaal, ISIN- en LEI-codes worden gecontroleerd met hun eigen regels voor het controlecijfer, en betaalkaartnummers worden getoetst met de Luhn-formule en het uitgeversprefix. Valutacodes komen uit ISO 4217 met numerieke code en aantal decimalen, en land- en taalcodes uit ISO 3166-1 en ISO 639, inclusief taaltags zoals zh-Hant-TW.
Voor producten en logistiek valideert de tool ISBN-10 en ISBN-13 (en rekent ze om), ISSN, de 17 tekens van een voertuigidentificatienummer, containernummers met eigenaarscode en controlecijfer, en het formaat van een DOI. Bedenk wel wat validatie betekent: het bewijst dat een waarde correct is opgebouwd, niet dat het boek, het voertuig of de rekening bestaat. Alles draait lokaal in je browser, dus ook gevoelige waarden verlaten je apparaat nooit.
ISO 8583 is the message format behind card payments: every authorization, purchase, reversal and network test between a terminal, an acquirer and an issuer is one ISO 8583 message. A message starts with a four-digit message type indicator (MTI) whose digits give the edition (0 = 1987, 1 = 1993, 2 = 2003), the class (authorization, financial, reversal, network management…), the function (request, response, advice) and who sent it. A bitmap of 64 or 128 bits follows, and each bit that is set says that the matching data element (DE) is present, such as DE 2 for the card number, DE 3 for the processing code, DE 4 for the amount, DE 11 for the trace number or DE 39 for the response code. Paste a message either as the text most documentation shows (MTI, hexadecimal bitmap and fields as characters) or as a hex dump of the raw bytes with BCD-packed numbers; the checker detects which one it is, strips an optional length header, lists every field with its name and flags truncated or oversized fields, bad length indicators, leftover data, impossible dates and times and unknown currency or country codes. It follows the 1987 data element table, so messages that use 1993 or 2003 layouts, private fields with their own sub-structure or a tertiary bitmap may be reported as invalid even though they are valid on your network.
Beyond identifiers, the validator also understands a few banking and payment codes. A creditor reference (ISO 11649) starts with RF and two check digits and is verified with the same mod-97 rule as an IBAN, so a mistyped payment reference is caught before it reaches the bank. A CFI code (ISO 10962) is six letters that classify a financial instrument — the first letter is the category (E for equities, D for debt, F for futures…) — and a merchant category code (ISO 18245) is the four-digit number that tells the card network what kind of business a merchant runs; both are never guessed automatically because any six letters or four digits could be one, so pick the standard from the list. Track data (ISO/IEC 7813) is what a magnetic stripe stores: card number, expiry, a three-digit service code and discretionary data, checked with the Luhn rule and a real month. The reference tables under the validator list every DE 39 response code, every ISO 8583 data element and the common merchant category codes.
Two further message formats are checked as a whole rather than line by line. A SWIFT FIN message (ISO 15022 syntax) has up to five blocks — basic header, application header with the message type and receiving BIC, user header, the text in block 4 and a trailer — and block 4 is a list of :tag: fields; the validator checks the header BICs, the mandatory fields of an MT103 (customer credit transfer), an MT202 (institution transfer) and the n99 free-format messages, and the format of the common tags such as :32A: (date, currency, amount with a decimal comma), :23B:, :71A:, :20: and the BIC-bearing party fields. An ISO 20022 message is XML whose namespace names the message (for example pain.001.001.09 or pacs.008.001.08); the validator checks that the XML is well formed, the namespace and business element match, the group header is complete, the number of transactions and control sum agree with the content, and every IBAN, BIC, currency and amount is valid. It does not replace validation against the official XSD, so use your bank's schema for the final check.
Veelgestelde vragen
Wordt de waarde die ik plak ergens naartoe gestuurd?
Nee. Elke controle draait in je browser met de referentielijsten die in de pagina zijn ingebouwd. Wat je plakt wordt niet geüpload of opgeslagen, ook niet in de lokale opslag. Je kunt dus ook waarden controleren die je nooit online zou zetten.
Betekent "geldig" dat de rekening, het boek of de kaart echt bestaat?
Nee. De validatie controleert alleen het formaat en de controlecijfers. Een geldige IBAN heeft de juiste lengte, structuur en controlecijfers, maar dat bewijst niet dat de rekening bestaat. Zo is ook een geldige ISBN of DOI correct opgebouwd, maar niet per se geregistreerd.
Welke normen kan ik controleren?
ISO 8601 (datums, tijden, duren, intervallen), ISO 3166-1 (landen), ISO 4217 (valuta's), ISO 639 (talen en taaltags), ISO 13616 (IBAN), ISO 9362 (BIC), ISO 6166 (ISIN), ISO 17442 (LEI), ISO/IEC 7812 (betaalkaartnummers), ISO 2108 (ISBN), ISO 3297 (ISSN), ISO 3779 (VIN), ISO 6346 (containernummers) en ISO 26324 (DOI).
Waarom voldoet één waarde aan twee normen?
Sommige korte codes komen in meer dan één lijst voor. ID is zowel Indonesië (ISO 3166-1) als Indonesisch (ISO 639-1), en 840 is zowel de Verenigde Staten als de Amerikaanse dollar. De tool toont elke norm waaraan de waarde voldoet.
Kan ik veel waarden tegelijk controleren?
Ja. Plak één waarde per regel, tot 5.000 regels, en de tool herkent van elke waarde de norm. Filter op geldig of ongeldig, kopieer de geldige waarden of download het resultaat als CSV-bestand.
How do I check an ISO 8583 message?
Paste the whole message on one line. Two layouts are understood: text (a four-digit MTI, a 16- or 32-character hexadecimal bitmap, then the fields as characters, with LL/LLL length digits for variable fields) and a hex dump of the raw bytes (BCD MTI, binary bitmap, BCD numbers). A two-byte or four-digit length header in front is detected and skipped. The result shows the MTI meaning, the bitmap and each data element, or the first problem found. Fields follow the ISO 8583:1987 table; custom formats of your network may differ.