Project Description
This is an open source .NET C# implementation of an X12 Parser.

The parser allows for a specification of any X12 transaction set to create a generic X12 xml representation of the hierarchical data contained within the X12 document.

No database integration is required by design, though  you can use the ImportX12 app to parse into a SQL Server database and skip the XML.

Motivation
The motivation for this project is to provide a quick and easy way to examine edi files without the overhead of creating databases as the target for parsed EDI files.

It aims to demystify the X12 standard and make parsing it accessible to the masses, not to just very expensive parsing tools.
It also aims to reduce the overhead of getting started with X12 parsing by not requiring any database integration to solve the problem of parsing the file.

Assumptions
The built-in specs contain all 4010 standards and some 5010 specifications, but you can inject your own if you are using a later standard or a non-public specification.

See Parsing an 837 Transaction to see an example of the three possible output formats and their corresponding code samples.

Contributor Blogs


Latest features:

INTERCHANGE
ISA *00 * *01 *SECRET *ZZ *SUBMITTERS.ID *ZZ *RECEIVERS.ID *030101 *1253 *^ *00501 *000000905 *1 *T *:~
FUNCTION GROUP
GS *HC *SENDER CODE *RECEIVER CODE *19991231 *0802 *1 *X *005010X222~
TRANSACTION
ST *837 *0021 *005010X222~
BHT *0019 *00 *244579 *20061015 *1023 *CH~
SUBMITTER NAME
NM1 *41 *2 *PREMIER BILLING SERVICE * * * * *46 *TGJ23~
PER *IC *JERRY *TE *3055552222 *EX *231~
RECEIVER NAME
NM1 *40 *2 *KEY INSURANCE COMPANY * * * * *46 *66783JJT~
BILLING/PAY-TO PROVIDER HIERARCHICAL LEVEL
HL *1 * *20 *1~
PRV *BI *PXC *203BF0100Y~
BILLING PROVIDER NAME
NM1 *85 *2 *BEN KILDARE SERVICE * * * * *XX *9876543210~
N3 *234 SEAWAY ST~
N4 *MIAMI *FL *33111~
REF *EI *587654321~
PAY-TO ADDRESS NAME
NM1 *87 *2~
N3 *2345 OCEAN BLVD~
N4 *MAIMI *FL *33111~
SUBSCRIBER HIERARCHICAL LOOP
HL *2 *1 *22 *1~
SBR *P * *2222-SJ * * * * * *CI~
SUBSCRIBER NAME
NM1 *IL *1 *SMITH *JANE * * * *MI *JS00111223333~
DMG *D8 *19430501 *F~
PAYER NAME
NM1 *PR *2 *KEY INSURANCE COMPANY * * * * *PI *999996666~
REF *G2 *KA6663~
PATIENT HIERARCHICAL LOOP
HL *3 *2 *23 *0~
PAT *19~
PATIENT NAME
NM1 *QC *1 *SMITH *TED~
N3 *236 N MAIN ST~
N4 *MIAMI *FL *33413~
DMG *D8 *19730501 *M~
CLAIM INFORMATION
CLM *26463774 *100 * * *11:B:1 *Y *A *Y *I~
REF *D9 *17312345600006351~
HI *BK:0340 *BF:V7389~
SERVICE LINE
LX *1~
SV1 *HC:99213 *40 *UN *1 * * *1~
DTP *472 *D8 *20061003~
SERVICE LINE
LX *2~
SV1 *HC:87070 *15 *UN *1 * * *1~
DTP *472 *D8 *20061003~
SERVICE LINE
LX *3~
SV1 *HC:99214 *35 *UN *1 * * *2~
DTP *472 *D8 *20061010~
SERVICE LINE
LX *4~
SV1 *HC:86663 *10 *UN *1 * * *2~
DTP *472 *D8 *20061010~
SE *42 *0021~
GE *1 *1~
IEA *1 *000000905~

See Documentation for a list of supported transaction sets.

Last edited Apr 14, 2013 at 5:24 PM by dstrubhar, version 52