View on GitHub

EDIReader Community Edition

Flexible and lightweight open-source EDI parser in pure Java.

EDIReader Community Edition

EDIReader is a flexible and lightweight EDI parser, written in pure Java using the SAX API allowing for many integration options. Released as open source (GPL3) in 2004 and enhanced steadily since then, it has handled millions of transactions in a wide variety of products, services, industries, platforms, and custom integrations.

HL7 support is now included in the EDIReader Community Edition.
Beginning with version 6.0.0, HL7 parsing is available directly in the open-source EDIReader Core rather than requiring the EDIReader Framework.

License: GPL v3 Java Version

ReleaseNotes.md

BerryWave EDI Interfaces

EDIReader is the core EDI parsing engine used by BerryWave’s integration products:

Quick Start

Basic Java Usage Example

import com.berryworks.edireader.EDIReader;
import com.berryworks.edireader.EDIReaderFactory;
import org.xml.sax.InputSource;
import org.xml.sax.XMLReader;

import java.io.FileReader;

public class ParseExample {
    public static void main(String[] args) throws Exception {
        // Create an EDIReader instance for an input stream
        InputSource inputSource = new InputSource(new FileReader("sample.edi"));
        XMLReader ediReader = EDIReaderFactory.createEDIReader(inputSource);

        // Attach a SAX ContentHandler (e.g., custom handler or standard XML transformer)
        ediReader.setContentHandler(new MySaxHandler());
        
        // Parse the EDI stream
        ediReader.parse(inputSource);
    }
}

Features Summary

The EDI parser supports:

Primary Interfaces

Technical Notes

License and Ownership

The EDIReader Framework

The EDIReader Framework is a set of Java modules built on top of the Community Edition. Unlike the Community Edition, it is not released as open source but may be licensed from BerryWorks Software. It adds many additional EDI features such as: