EDIFACT Test Files: 52 Validated Synthetic Samples
This pack gives you 52 synthetic EDIFACT files for pipeline testing: 30 clean interchanges that parse with zero validator issues, and 20 invalid files, each engineered to trigger exactly one rule id documented in the manifest. Every file is invented test data, not real business data, and is verified by the same parser that powers our EDI Toolkit for JetBrains IDEs.
What is in the EDIFACT test file pack?
The pack is 84 files in total: 30 clean interchanges, 20 invalid files, 30 golden JSON outputs, 2 performance files, plus the manifest and readme. Here is the full breakdown.
| Folder | Files | What it is |
|---|---|---|
| clean/ | 30 | Structurally valid interchanges, 0 validator issues. ORDERS, INVOIC, DESADV in D96A and D01B - multi-line and one-line variants, custom UNA separators, multi-message envelopes with correct UNT/UNZ counts. |
| invalid/ | 20 | One deliberate defect per file, each raising exactly one rule id (see catalogue below). |
| golden/ | 30 | Expected parse result (JSON) for every clean file, for diffing your own parser. |
| perf/ | 2 | Large valid interchanges: 1,000 and 5,000 segments for throughput and latency testing. |
| INDEX.md, README.md | 2 | Full manifest and the synthetic-data policy, licence and usage notes. |
The 20 invalid files cover a documented catalogue of structural defects, so you can prove your validator raises the right rule and nothing else:
| Rule id | Files | Example defect |
|---|---|---|
| edi.envelope.count | 4 | UNT or UNZ count does not match the actual segments or messages |
| edi.element.required | 4 | Mandatory element empty (NAD, DTM, QTY, MOA) |
| edi.envelope.unclosed | 2 | UNB without UNZ, or UNH without UNT |
| edi.envelope.reference | 2 | UNZ or UNT control reference does not match its opener |
| edi.segment.unterminated | 2 | Final segment missing the terminator |
| edi.segment.unknown | 2 | Unknown or mistyped segment tag (ZZX, NAX) |
| edi.component.required | 2 | Mandatory component empty inside an element |
| edi.component.extra / edi.element.extra | 2 | More components or elements than the directory defines |
Are these real business data?
No. Every file in the pack is synthetic by policy. Real interchanges carry commercial information about trading partners, prices and volumes that you cannot safely commit to a shared repository. These files are invented from scratch: fictional sender and recipient parties, TEST-prefixed references and item codes, and an FTX free-text banner segment in every file declaring the data synthetic. The banner is a valid segment, so it does not change the single declared defect in the invalid files.
Three free EDIFACT samples
Here are three clean interchanges from the pack, verbatim, so you can see the structure and the FTX synthetic banner before buying. The full pack adds 27 more clean files plus the 20 invalid ones.
ORDERS D96A (one-line)
UNB+UNOA:2+TEST-SENDER:14+TEST-RECIP:14+000108:1600+TEST-REF08'UNH+1+ORDERS:D:96A:UN'BGM+220+TEST-PO-0008+9'FTX+AAI+++SYNTHETIC TEST DATA - NOT REAL BUSINESS DATA'LIN+1++TEST-ITEM-0060:EN'QTY+21:2'UNT+6+1'UNZ+1+TEST-REF08'
DESADV D96A (one-line)
UNB+UNOA:2+TEST-SENDER:14+TEST-RECIP:14+000302:1000+TEST-REF22'UNH+1+DESADV:D:96A:UN'BGM+351+TEST-DES-0002+9'FTX+AAI+++SYNTHETIC TEST DATA - NOT REAL BUSINESS DATA'DTM+137:20000302:102'NAD+SU+TEST-SUPPLIER-22::9'NAD+BY+TEST-BUYER-0022::9'CPS+1'LIN+1++TEST-ITEM-0210:EN'QTY+12:20'UNT+10+1'UNZ+1+TEST-REF22'
INVOIC D96A (one-line)
UNB+UNOA:2+TEST-SENDER:14+TEST-RECIP:14+000208:1500+TEST-REF18'UNH+1+INVOIC:D:96A:UN'BGM+380+TEST-INV-0008+9'FTX+AAI+++SYNTHETIC TEST DATA - NOT REAL BUSINESS DATA'NAD+SU+TEST-SUPPLIER-18::9'NAD+BY+TEST-BUYER-0018::9'LIN+1++TEST-ITEM-0170:EN'QTY+47:1'MOA+203:15.00'UNT+9+1'UNZ+1+TEST-REF18'
How do the invalid files help?
Each invalid file isolates one structural defect and the manifest tells you the exact rule id, severity and message fragment your validator should raise. That lets you build a pass/fail acceptance suite: load the file, assert the reported rule matches the manifest, and fail the build if it does not. Proving your pipeline catches envelope-count mismatches and broken references before a trading partner does is far cheaper than a partner rejection. The same files were used to validate the parser engine behind our EDI Toolkit plugin for JetBrains IDEs.
FAQ
Are these real business data?
No. Every file is synthetic by policy: fictional sender and recipient parties, TEST-prefixed references and item codes, and an FTX banner segment in every file declaring it synthetic. There is no real commercial or partner data anywhere in the pack, so it is safe to commit to a shared repository or CI pipeline.
Will the clean interchanges pass my EDIFACT validator?
The 30 clean files are built to produce zero issues from a conformant EDIFACT parser, and are checked against the engine that powers our EDI Toolkit. If your validator flags one, it is usually a stricter local or partner-specific rule, and the golden JSON output for each file shows the expected parse so you can pinpoint the difference.
Which directories and message types are covered?
UN/CEFACT directories D96A and D01B, with ORDERS, INVOIC and DESADV messages. The clean set includes multi-line and one-line layouts, custom UNA service characters (including decimal comma and alternate separators), and multi-message envelopes with correct UNH/UNT and UNB/UNZ counts.
Can I redistribute the files?
The licence is single-team commercial use with no redistribution. Your team can use the files across internal projects, CI and test suites. Reselling or publishing the files, or bundling them into a distributed product, is not permitted.