PipeHat HL7® v2 parser · decoder · validator
Offline: nothing leaves this browser Guide

Paste HL7 v2 messages

One message or a whole batch. Each message is parsed into segments and fields, decoded against the version in MSH-12 with names and code meanings, and validated against every version to show which one the content actually fits.

Privacy: this page runs entirely on your computer and is blocked from making network requests. Pasted messages are kept only in this tab's memory: they're never saved, uploaded or written to browser storage. If you enter a license key, only the key is saved in this browser. You can drop a .hl7 or .txt file onto the box above.

New here? Read the guide: a tour of every feature, with screenshots.

What to expect with large batches

Messages are decoded in batches of up to 10,000 messages or 5 MB of text, whichever comes first, so the browser tab doesn't run out of memory. Larger input is split into several batches automatically. Only one batch is open at a time; use Next batch to move through them. With Cycle through every batch automatically on (the default), every batch is also checked in the background, one after another, so the sensitive-information totals, patient list and feed profile cover the whole input without any clicking. All batches exports write one CSV covering everything.

The Free version decodes the first 10 messages of any input. A Pro, Team or Business license removes that limit and adds batches and CSV exports.

Files larger than one batch are never loaded whole. They're scanned for message boundaries, then each batch is read from disk as you open it, so even very large logs work. For anything over a few MB, Open file… is faster than pasting.

Timings for one batch:

BatchTextFirst messageBackground checkCSV export
1,000 messages0.4 MBinstant~0.3 s~0.2 s
10,000 messages3.7 MBinstant~3 s~2 s

The first message appears straight away. The rest of the batch is checked in the background (issue counts in the message list, sensitive-information totals, the feed profile) while you work, with progress shown above the message. Only the messages you look at are kept fully decoded, so a 10,000-message batch uses about 200 MB of memory in total, including about 80 MB for the reference data (all 14 HL7 versions plus ICD-10-CM and ICD-10-PCS).

Measured on a typical laptop, in the same JavaScript engine Chrome uses, with short ADT test messages (about 370 bytes each). Real messages are often 1–3 KB, so a batch usually holds about 1,700–5,000 of them.

Very large single messages show their first 1,500 segments (and 3,000 decoded rows) straight away, with a button to show everything.

License

Keys are checked on your computer; nothing is sent over the internet. The key is saved in this browser so you only enter it once. Each person on your team enters the key in their own browser.

De-identify messages

Replaces names, identifiers (MRN, account, SSN and so on), addresses, phone numbers, emails and dates, so messages can be shared in tickets or with vendors. The message structure stays the same. Runs on this computer; nothing is sent anywhere.

Dates

Review the output before sharing. Automated de-identification can miss identifiers in unexpected places, such as unusual fields or kept free text; the leftover check flags original values it still finds. The same original always gets the same replacement within one run; each run uses a new random secret, and replacements can't be reversed. This is not a HIPAA de-identification determination.