Question

We need to process some EDI messages for a client and i was wondering if any of you could recommend some components (not necessarily free) that could do the task. I'm interested in a framework that can parse EDI messages into .NET structures and some kind of implementation of transport protocols (SMTP, FTP, HTTP, AS2) etc.

Was it helpful?

Solution

There is a open source .NET x12 parser at http://x12parser.codeplex.com that has been around for a while and is pretty mature now. It already supports over 15 transaction sets including most of the ones in HIPAA set. It's pretty extendable for injecting your own specification, instructions for this are on the site. Check out the site for an html serialization of the parsed X12 message.

The nice thing that I like is that it allows you to unbundle your X12 into separate X12 messages so that you can process them individually. For instance if you want to unbundle claims you just have to unbundle it by the loop ID "2300". It will reserialize your X12 in an indented format so it is easier to reader. For example the following is an 837 claim after it has been parsed into an Interchange object and then serialized with whitespace:

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

OTHER TIPS

There is a commercial .NET X12 parser at http://www.sparrow-technologies.com/ediparser.net.aspx that has been around for a while and is also pretty mature. It supports X12, HL7 and SCRIPT standards. When I used it on one of my projects it was pretty easy to understand. It came with allot of samples of the different EDI message types, so it made it much easier for me to code my first project.

If you're not strictly tied to .Net, I'd recommend the JCAPS B2B suite originally by SeeBeyond Corp.

Otherwise, I've heard good things about Chameleon by InterfaceWare

I did some work with EDIFACT documents in .NET, and never found a framework I could use. Fortunately, I only had to parse two different types of documents. In my situation, it was easiest to just parse the files manually and create friendly business objects that held the data in a way I could work with. A framework would give you a lot of flexibility and a friendlier API to work with, but it might not be necessary.

Take a look at: http://www.orionhealth.com/products/symphonia/

It does what you want, although you will run into various limitations as you use it.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top