Repository navigation
How to parse X12 ISA/GS/ST envelopes and extract transaction sets in Node.js? #71
Answered
by
hello-ediflow
hello-ediflow
asked this question in
Q&A
|
I receive X12 interchange files that contain ISA/GS/ST envelope segments wrapping multiple transaction sets. I need to:
|
Answered by
hello-ediflow
May 9, 2026
Replies: 1 comment
|
EDIFlow handles X12 envelope parsing automatically: npm install @ediflow/x12 @ediflow/x12-004010import {
X12MessageParser,
X12DelimiterDetector,
X12Tokenizer,
X12SegmentParser,
} from '@ediflow/x12';
const parser = new X12MessageParser(
new X12DelimiterDetector(),
new X12Tokenizer(),
new X12SegmentParser(),
);
const message = parser.parse(x12Interchange);
// ISA fields are accessible as envelope segments
const isa = message.segments.find(s => s.tag === 'ISA');
console.log(`Sender: ${isa?.elements[5]?.value}`);
console.log(`Receiver: ${isa?.elements[7]?.value}`);
// GS functional group
const gs = message.segments.find(s => s.tag === 'GS');
console.log(`Version: ${gs?.elements[7]?.value}`); // '004010'
// Transaction content
console.log(`Type: ${message.messageType.value}`); // '850'The delimiter detector automatically identifies the element separator (often |
0 replies
Answer selected by
hello-ediflow
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
EDIFlow handles X12 envelope parsing automatically: