Drop a Mastercard IPM clearing file here and read it as fields instead of hex. Handles 1014-byte blocking, VBS record framing and EBCDIC decoding automatically.
If auto-detect gets it wrong, set the encoding and file format manually with the two dropdowns above.
An IPM clearing file is three layers stacked on top of each other, and each one trips people up in a different way.
1014-byte blocking
Records are packed into 1014-byte blocks: 1012 bytes of payload followed by two 0x40 pad bytes. Strip the padding before anything else, or every record after the first block is misaligned.
VBS record framing
Inside the unblocked stream each record is preceded by a 4-byte big-endian length. A zero length ends the file. Get this wrong and record boundaries drift silently.
EBCDIC text
Text fields are EBCDIC, not ASCII. Digits sit at 0xF0–0xF9 instead of 0x30–0x39. This tool detects the encoding from the MTI bytes.
Each record starts with a 4-character MTI and a 16-byte bitmap covering data elements 1–128. The bitmap decides which fields are present, so field positions are not fixed — they depend on what the bitmap says. Fields flagged as PDS carriers are expanded further: a PDS entry is a 4-character tag, a 3-digit length, then the data, repeated until the field runs out.
It reads IPM-format transaction files — in practice the T112. It does not read Mastercard's report files, which are a different format entirely: T140 is a GCMS reconciliation report and TQR4 is a Mastercom reconciliation report, neither of which contains ISO 8583 records. IPM parameter extract files (IP0000T1 and friends) are also out of scope — same envelope, different record layout.
It carries the publicly documented IPM data-element layout only. PDS values are shown as raw text and EMV/ICC data as raw TLV hex — no scheme-private subfield names are interpreted. Visa BASE II, CTF and other schemes' settlement formats are not included: there is no openly licensed source for those layouts, and guessing them would be worse than useless.
Field definitions and parsing rules follow cardutil by Anthony Delosa, MIT licensed. This page is an independent browser implementation of the same public rules.