Free X12 & HIPAA EDI Validator and Translator

Paste or upload an X12 or HIPAA file and select Parse. Then validate it against HIPAA SNIP levels 1 to 4, generate a 999 or 997 acknowledgment, or convert it to JSON and back. Everything runs in your browser.

EDI never leaves your browser

Validate X12 and HIPAA EDI files in your browser

EdiNation is a free X12 and HIPAA EDI editor, validator and translator. Paste or upload an EDI file and EdiNation puts every segment on its own line, matches each transaction to its specification, and lets you check every segment and data element against the X12 implementation guide. Parsing, validation and acknowledgment generation run locally with WebAssembly, so the file and any PHI in it stay on your device.

  • Parse and format X12 interchanges from version 002040 to 007040. This includes HIPAA 5010 transactions such as 837P, 837I, 837D, 835, 834, 820, 270/271, 276/277 and 278, and supply chain transactions such as 850, 855, 856, 810, 832 and 214.
  • Validate against HIPAA SNIP levels 1 to 4 and see each error next to the segment that caused it.
  • Acknowledge a file with a 999 or 997 and a TA1, ready to send back to your trading partner.
  • Convert to JSON and back with To JSON and From JSON. Read more about the X12 JSON Converter.
  • Fix and download the corrected file, either formatted with one segment per line or collapsed.
  • Use your own spec by selecting the sliders button next to Parse and entering the name of a custom spec.

How to validate an X12 or HIPAA file

  1. Load the file. Paste it into the EDI editor, upload it with Upload, or pick a sample, such as an 837P claim, from Samples.
  2. Parse it. Select Parse. Uploaded files are parsed automatically. The status shows Parsed, or Parsing failed with the reasons listed.
  3. Validate it. Select Validate. By default, EdiNation validates up to SNIP level 2 and stops after 100 errors. Use the settings button next to Validate to change the level, or to set a limit between 1 and 10,000 errors.
  4. Fix and acknowledge. Select an error to jump to the segment, correct it in the editor, then parse and validate again. Select ACK to generate the acknowledgment.

Your EDI data never leaves the browser

The parser and validator are compiled to WebAssembly and run on your machine. EdiNation only calls its API to download the transaction model it needs and to check your session. The EDI file itself is never sent. You can confirm this in the Network tab of your browser's developer tools. Read more in the EdiNation trust center.

Validate EDI in your own application

EdiNation runs on the ediFabric engine. The same parser, validator and acknowledgment generator are available as a .NET library, as native libraries for C#, Python, Java, C and C++, and as a REST API. Use them to validate claims before you submit them, to process files in batches, or to build EDI into your integration pipelines.

C# with ediFabric .NET

License.SetSerial("YOUR_SERIAL_KEY");
var edi = File.OpenRead(@"C:\837P_Claim.txt");
using (var reader = new X12Reader(edi, "EdiFabric.Templates.Hipaa"))
{
    var claims = (await reader.ReadToEndAsync()).OfType<TS837P>();
    foreach (var claim in claims)
    {
        if (claim.IsValid(out MessageErrorContext errors))
            Console.WriteLine(claim.ST.TransactionSetControlNumber_02);
        else
            Console.WriteLine(string.Join("\n", errors.Flatten()));
    }
}

Python with ediFabric Native

import json
import edifabric_x12 as ef

serial = "YOUR_SERIAL_KEY"
ef.load_library()
ef.set_serial(serial)
ef.set_map(json.dumps({"default": serial, "maps": {}}))

edi = open("837P_Claim.txt", "rb").read()
output, offset = ef.parse(edi, ef.ParseMode.JSON_VALIDATE)
report = json.loads(output[offset:])
print(report["errors"] if report["errors_count"] else "valid")

Every ediFabric plan includes .NET, Native and Cloud. Start with the free Community plan, or see how to validate EDI and generate acknowledgments in code.

Start free with ediFabric Compare .NET, Native and Cloud

Frequently asked questions

Yes. You can parse, validate, acknowledge and convert as many files as you like, of any size, without creating an account.

The editor supports X12 ASC and X12 HIPAA. For EDIFACT, HL7, NCPDP and VDA, use the old EdiNation portal. It processes files on the server, has a free plan of 50 operations per day, and is not HIPAA compliant. You can browse the specs for all of these standards in the EDI Spec Library.

Level 1 checks EDI syntax and integrity. Level 2 checks HIPAA syntax requirements such as segment repeats, element lengths and code values. Level 3 checks balancing, for example that claim line amounts add up to the claim total. Level 4 checks situational rules within segments from the implementation guide. Each level includes all the levels below it.

By default, EdiNation generates a 999 implementation acknowledgment and a TA1 interchange acknowledgment. In the settings you can switch to a 997, add AK2 loops for accepted transactions, report AK901 as P instead of E, or turn off the TA1.

Yes. Create a custom spec in the EDI Spec Builder, then select the sliders button next to Parse and enter its name. EdiNation will then parse and validate against your spec instead of the standard one.

Use ediFabric, the EDI engine behind EdiNation. It is available for .NET, as native libraries and as a REST API, and the free Community plan lets you try it with your own files.