Cross.EdiEngine 1.7.1

dotnet add package Cross.EdiEngine --version 1.7.1
                    
NuGet\Install-Package Cross.EdiEngine -Version 1.7.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Cross.EdiEngine" Version="1.7.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Cross.EdiEngine" Version="1.7.1" />
                    
Directory.Packages.props
<PackageReference Include="Cross.EdiEngine" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Cross.EdiEngine --version 1.7.1
                    
#r "nuget: Cross.EdiEngine, 1.7.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Cross.EdiEngine@1.7.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Cross.EdiEngine&version=1.7.1
                    
Install as a Cake Addin
#tool nuget:?package=Cross.EdiEngine&version=1.7.1
                    
Install as a Cake Tool

Cross.EdiEngine

Simple .NET EDI Reader, Writer and Validator. Read, Write and Validate X12 EDI files with simple EDI Parser written on C#. Main Features:

  • EDI to JSON and JSON to EDI conversion. Uses System.Text.Json (replaced Newtonsoft.Json) for serialization and a custom JSON reader for deserialization. JSON is a handy extension for the library. Imagine you can parse your EDI object directly in Angular or jQuery app.
  • EDI to XML and XML to EDI conversion. EdiEngine does not use XML as intermediate format, as many other engines do. It uses POCO objects and XML is just an extension
  • Configurable EDI X12 997 - Functional Acknowledgment generation. You can setup whether to accept all messages, accept but say errors were noted or reject depending on your needs.
  • HL Loop Hierarchical parsing - Create real tree structure basing on HL segment hierarchy. No need to map every HL to map, this means one map can serve multiple needs. Say for ASN it can be S-O-P-I or S-O-I hierarchy in one map.
  • Syntax Notes. All types of EDI Syntax notes are supported. P Paired, R Required, E Exclusion, C Conditional, L List Conditional
  • Composite Data Elements are supported, which is really important for HIPAA and sometimes for other transactions even in retail.
  • X12 Maps Current repository contains all 004010 maps, including Purchase Order, Invoice, Shipment and many others. You can easily craft yours on their basis.
  • .NET Standard 2.1, .NET 6, .NET 8 and Source Linking. Multi-targeting support. Source linking enabled and symbol package is published to NuGet symbols server, making debugging easier.

Installation

Clone repository or Install Nuget Package

Install-Package Cross.EdiEngine

How To's

Please use Wiki for documentation and usage examples.

Complete usage examples can be found in the test project

Note - test project is not a part of nuget package. You have to clone repository.

Roadmap:

  • Json Serialization and Deserialization
  • Xml Serialization and Deserialization
  • Craft more maps (Added all 004010 maps)
  • 997 generation
  • HL loop hierarchical parsing
  • Syntax Notes
  • Composite data elements
  • .NET Core support
  • HIPAA support
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.7.1 71 2/28/2026
1.7.1-preview.1 37 2/28/2026
1.7.0 68 2/28/2026
1.7.0-preview.120 44 2/28/2026
1.6.1 582 11/2/2023

- Migrated to Cross.EdiEngine (project ownership transfer).
- Multi-targeting: netstandard2.1, net6.0, net8.0.
- Added .editorconfig, .gitattributes, GitHub Actions workflow.
- GlobalUsings, Nullable reference types, code cleanup across solution.
- SourceLink for debugging from NuGet.
- Fix: incorrect ISA [13] segment filling.
- Added: IsaAcknowledgementRequest in AckBuilderSettings (ISA segment spec).
- Package updates. Removed packages.config (SDK-style projects).
- Replaced Newtonsoft.Json with System.Text.Json.