A modular, ERP-independent EDI engine written in Go.
This project introduces a clean architectural separation between business logic and transport formats.
It provides:
- Canonical business document models
- X12 generation and parsing
- BOD XML integration (Infor M3 and beyond)
- Clean, strongly-typed APIs
- Extensible transaction routing
BOD XML ⇄ Canonical ⇄ X12
Canonical models are the stable core of the system.
Adapters handle format transformations.
This project is currently in v0.x (active development).
Breaking changes may occur until v1.0.0.
Install latest version:
go get github.com/entiqon/ediInstall specific version:
go get github.com/entiqon/edi@v0.1.0-dev.1- ⏳ Planned
- 🚧 In Progress
- ✅ Implemented
- 🔒 Stable (post v1.0)
- ⏳ 810 Invoice
- ⏳ 832 Price/Sales Catalog
- ⏳ 846 Inventory Inquiry/Advice
- ⏳ 850 Purchase Order (IN + OUT)
- 🚧 855 Purchase Order Acknowledgment (IN + OUT)
- ⏳ 856 Advance Ship Notice (IN + OUT)
- ⏳ 870 Order Status Report
- ⏳ 940 Warehouse Shipping Order
- ⏳ 943 Warehouse Stock Transfer Shipment Advice
- ⏳ 944 Warehouse Stock Transfer Receipt Advice
- ⏳ 945 Warehouse Shipping Advice
- ⏳ 810
- ⏳ 832
- ⏳ 846
- ⏳ 850 (IN + OUT)
- 🚧 855 (IN + OUT)
- ⏳ 856 (IN + OUT)
- ⏳ 870
- ⏳ 940
- ⏳ 943
- ⏳ 944
- ⏳ 945
The canonical layer is format-agnostic.
Rules:
- No ERP-specific logic inside canonical.
- No X12 segment leakage into canonical.
- Adapters convert formats into canonical.
- Canonical remains stable long-term.
Adapters may evolve. Canonical must endure.
- v0.1.x — BOD SalesOrder + 855
- v0.2.x — 850 IN/OUT canonical + X12
- v0.3.x — 856 ASN support
- v1.0.0 — Stable canonical API
Contributions are welcome.
Before submitting a PR:
- Ensure tests pass
- Respect canonical isolation principles
- Avoid ERP/X12 leakage into core models
- Update documentation (README, doc.go, CHANGELOG)
- Follow semantic versioning
See full contribution guidelines in
👉 CONTRIBUTING.md
💡 Originally created by Isidro A. Lopez G.
🏢 Maintained by the Entiqon Labs Organization
MIT — © Isidro A. López G. / Entiqon Project