PipeHat Open PipeHat
MSH|^~\&|PIPEHAT|HL7 V2

Decode HL7 v2 messages without sending them anywhere

PipeHat parses, decodes and validates HL7® v2 messages right in your browser. Every field named, every code explained, every message checked against the version it claims and every version from 2.1 to 2.8.2. Patient data never leaves your computer.

Open PipeHat, free Try a sample message No sign-up, no install. Free for the first 10 messages of any input.
A PID segment, the way PipeHat reads itv2.5.1
PID|1||MRN100234^^^MERCY^MR||SAMPLE^JANE^Q||01/01/1980|F
  1. 1PID-3.1ID NumberMRN100234
  2. 2PID-3.4Assigning AuthorityMERCY
  3. 3PID-3.5Identifier Type CodeMR = Medical record number · table 0203
  4. 4PID-5Patient NameFamily SAMPLE, given JANE, middle Q
  5. 5PID-7Date/Time of BirthNot a valid HL7 date; expected YYYYMMDD (19800101)
  6. 6PID-8Administrative SexF = Female · table 0001
PipeHat showing a raw ADT^A01 message on the left and every field decoded on the right, with the version fit strip above.

Parse, decode, validate

Paste messages, open a file or drop it on the page. One message or a feed log with hundreds of thousands.

  1. 1Parse

    Splits the raw text at its separators (| ^ ~ &) into segments, fields, components and repeats. MLLP framing and batch headers are handled.

  2. 2Decode

    Names every piece for the message's version and explains it: PV1-2 is Patient Class, table 0004, and I means Inpatient. Escape sequences are resolved.

  3. 3Validate

    Checks required fields, formats, codes, message structure and ICD-10, and which version from 2.1 to 2.8.2 the content actually fits.

Find out which version a message really is

Senders often say one version in MSH-12 and send another. PipeHat checks every message against all 12 versions from 2.1 to 2.8.2 and shows which one the content fits, down to the field that gives it away.

How version fit works
A message that claims v2.3 in MSH-12; the version strip shows 2.5 to 2.6 as the best fit.

Catch problems before they reach your database

  • Required fields left empty, invalid dates and numbers, extra repeats and components
  • Codes missing from HL7 tables, deprecated codes, segments that don't belong
  • The full ICD-10-CM and ICD-10-PCS code sets (FY2027): invalid, deleted and non-billable codes, with billable alternatives
See every check
Diagnosis segments with J18 flagged as a non-billable category and D69.1 flagged as no longer billable.

Built for real feeds Pro and up

Open a whole day of messages. Big files are read in batches of 10,000, the first message shows instantly, and every batch is checked in the background. Export decoded values and issues to Excel in one file.

Large files and exports
The batch bar for a 25,000-message input, all messages checked, with the Cycle through every batch automatically toggle.

See what a partner actually sends Team and Business

The feed profile shows every field across every message: how often it's filled, distinct and top values, lengths, date ranges, problems, and fill rates by event type. Identifying values are hidden, so a profile is safe to share.

Feed profile
The feed profile table with fill rates, distinct values and top values for each field, and a detail panel for Patient Class.

Flag HIV, substance use and other protected data Business

Find values that need special handling before data moves downstream: HIV, substance use disorder (42 CFR Part 2), mental health, sexually transmitted infections, reproductive health, genetics, abuse and gender identity. It checks diagnosis codes and free-text phrases, and rolls findings up by patient.

Sensitive information check
The Sensitive tab listing possible sensitive values in one admission message, with categories and the rule that matched.

Share messages safely All plans

The de-identifier replaces names, identifiers, addresses, phone numbers and dates, consistently within a run, so the message still decodes and tests like the original. A leftover check tells you if anything replaced still appears.

De-identifier
The De-identify messages panel with options, a summary of replacements and the de-identified message.

Your messages never leave your computer

HL7 messages are full of patient information. PipeHat is built so that we never see them.

connect-src 'none'

No uploads

The page blocks every kind of network request. Open your browser's developer tools and watch the Network tab while you decode: nothing goes out.

no accounts

Nothing stored

No sign-up and no tracking. Messages live only in the open tab and are gone when you close it.

offline keys

Licenses checked locally

License keys are verified on your computer with a digital signature. Nothing phones home, so it works on locked-down networks.

Simple yearly plans

Priced by team size, not by message volume: decode as much as you like.

Free
$0
1 user
  • First 10 messages of any input
  • All checks, ICD-10, version fit
  • De-identify one message at a time
Open PipeHat
Pro
$199 / year
1 user
  • Any input size, in batches
  • All CSV exports
  • De-identify everything at once
Buy Pro
Team
$499 / year
Up to 5 users
  • Everything in Pro
  • Feed profile
Buy Team
Business
$1,499 / year
Up to 20 users
  • Everything in Team
  • Sensitive information check
  • Priority support
Buy Business
Compare plans in detail

Questions

Are my messages uploaded anywhere?

No. PipeHat runs entirely in your browser, and the page itself blocks network requests, so it can't send your messages anywhere. They're never saved either: close the tab and they're gone. Only your license key and two settings are kept in your browser.

Which HL7 versions does it support?

HL7 v2.1 through 2.8.2: 12 versions, including 2.3.1, 2.5.1 and 2.8.1. Messages are decoded against the version in MSH-12 and checked against all the others. Messages that claim a later version are decoded as 2.8.2, with a note.

Which message types?

Any HL7 v2 message: ADT, ORU, ORM, SIU, MDM, DFT, VXU and the rest. Every message structure in the standard is checked, including which segments belong and which are required.

Do I need to install anything?

No. It runs in current versions of Chrome, Edge, Firefox and Safari. Once the page has loaded, it doesn't need a connection.

What is HL7 v2?

HL7 version 2 is the messaging standard most hospital systems use to exchange admissions, lab results, orders and billing. Messages are lines of text with fields separated by | and components by ^, so their meaning depends entirely on position. PipeHat tells you what each position means.

How do licenses work?

After you buy, we email you a license key. Paste it into PipeHat once and it's saved in your browser; each person on your team does the same. Licenses last a year. See pricing for details.

Paste a message and see for yourself

Free, with nothing to install and nothing uploaded.