X12 message converter

X12 message converter is in beta. API may change!

Aidbox includes /x12/parse and /x12/generate endpoints to allow the conversion of X12 messages. Both support four types of X12 messages: 835, 837, 270, and 271.

Parsing a message

To parse a message, use /x12/parse endpoint.

POST /x12/parse
content-type: text/plain
accept: application/json

ISA*00*          *00*          *ZZ*ABCPAYER       *ZZ*ABCPAYER       *190827*0212*^*00501*191511902*0*P*:~
GS*HP*ABCD*ABCD*20190827*123456*12345678*X*005010X221A1~
ST*835*112233~
BPR*I*1100*C*ACH*CCP*01*888999777*DA*24681012*1935665544**01*111333555*DA*144444*20190316~
TRN*1*71700666555*1935665544~
DTM*405*20190314~
N1*PR*RUSHMORE LIFE~
N3*10 SOUTH AVENUET~
N4*RAPID CITY*SD*55111~
PER*BL*JOHN WAYNE*TE*8005551212*EX*123~
N1*PE*ACME MEDICAL CENTER*XX*5544667733~
REF*TJ*777667755~
LX*1~
CLP*5554555444*1*800*500*300*12*94060555410000*11*1~
NM1*QC*1*BUDD*WILLIAM****MI*33344555510~
AMT*AU*800~
SVC*HC:99211*800*500~
DTM*472*20190301~
CAS*PR*1*300~
AMT*B6*800~
CLP*8765432112*1*1200*600*600*12*9407779923000*11*1~
NM1*QC*1*SETTLE*SUSAN****MI*44455666610~
AMT*AU*1200~
SVC*HC:93555*1200*600~
DTM*472*20190310~
CAS*PR*1*600~
AMT*B6*1200~
SE*26*112233~
GE*1*12345678~
GS*HP*ABCD*ABCD*20190827*123456*12345678*X*005010X221A1~
ST*837*20002813*005010X222A1~
BHT*0019*00*20002813*20200728*151613*CH~
NM1*41*2*HCSIS CHC SPLIT PHASE 1*****46*545746153~
PER*IC*IT SUPERVISOR*TE*7174255377~
NM1*40*2*DEPARTMENT OF HUMAN SERVICES*****46*445314156~
HL*1**20*1~
NM1*85*2*HCSIS CHC SPLIT PHASE 1~
N3*1006 HEMLOCK DR~
N4*HARRISBURG*PA*171103595~
REF*EI*000021698~
HL*2*1*22*0~
SBR*P*18*******MC~
NM1*IL*1*PTSURNAME*PTNAME****MI*123456~
N3*33 LONG ISLAND PARK~
N4*NEW YORK CITY*NY*10001~
DMG*D8*19991122*U~
NM1*PR*2*DEPARTMENT OF HUMAN SERVICES*****PI*1700393030~
N3*555 MAIN STREET~
N4*HARRISBURG*PA*171069022~
REF*G2*3004658650007~
CLM*16.31*32***12:B:1*Y*A*Y*Y*P~
HI*ABK:A0100~
LX*1~
SV1*HC:W1724*32*UN*32***1~
PWK*03*AA~
PWK*04*BM~
DTP*472*D8*20200312~
LX*2~
SV1*HC:W1721*31*UN*3***1~
DTP*472*D8*20200312~
REF*6R*31~
SE*32*20002813~
GE*1*12345678~
IEA*2*191511902~

This example contains two groups: the first has 835 message, and the other one contains 837 message. Parser supports multiple groups and transaction sets in the document.

Generating a message

/x12/generate endpoint allows the generating X12 messages from the JSON data obtained from the /x12/parse operation. Pass the message field's content from the parsing result to /x12/generate to get your message back almost unchanged.

Keep in mind that the generator disregards the provided segment count value in favor of the one it computes itself.

POST /x12/generate
content-type: application/json

{
  "isa": {
   "security_info": "          ",
   "date": "190827",
   "receiver_type": "ZZ",
   "security_qual": "00",
   "time": "0212",
   "sender_id": "ABCPAYER       ",
   "mode": "P",
   "ds": ":",
   "auth_info": "          ",
   "sender_type": "ZZ",
   "rs": "^",
   "receiver_id": "ABCPAYER       ",
   "id": "191511902",
   "ack": "0",
   "auth_qual": "00",
   "version": "00501"
  },
  "groups": [
   {
    "transactions": [
     {
      "st": {
       "type": "835",
       "txid": "112233"
      },
      "financial_info": {
       "check_issue_oreft_effective_date": "20190316",
       "sender_bank_account_number": "24681012",
       "receiver_or_provider_bankid_number": "111333555",
       "depository_financial_institutiondfi_identification_number_qualifier": "01",
       "payment_format_code": "CCP",
       "payment_method_code": "ACH",
       "senderdfi_identifier": "888999777",
       "receiver_or_provider_account_number": "144444",
       "account_number_qualifier_14": "DA",
       "depository_financial_institutiondfi_identification_number_qualifier_12": "01",
       "payer_identifier": "1935665544",
       "total_actual_provider_payment_amount": 1100,
       "account_number_qualifier": "DA",
       "credit_or_debit_flag_code": "C",
       "transaction_handling_code": "I"
      },
      "reassociation_trace_number": {
       "type": "1",
       "id": "71700666555",
       "payer_identifier": "1935665544"
      },
      "production_date": {
       "time_qualifier_date": "405",
       "production_date": "20190314"
      },
      "payer_identification": {
       "payer_id": {
        "entity_identifier_code": "PR",
        "payer_name": "RUSHMORE LIFE"
       },
       "payer_address": {
        "line": "10 SOUTH AVENUET"
       },
       "payer_address_ext": {
        "city": "RAPID CITY",
        "state": "SD",
        "zip": "55111"
       },
       "payer_technical_contact_info": [
        {
         "type": "BL",
         "name": "JOHN WAYNE",
         "system": "TE",
         "value": "8005551212",
         "system_2": "EX",
         "value_2": "123"
        }
       ]
      },
      "payee_identification": {
       "payee_id": {
        "entity_identifier_code": "PE",
        "payee_name": "ACME MEDICAL CENTER",
        "identification_code_qualifier": "XX",
        "payee_identification_code": "5544667733"
       },
       "payee_additional_id": [
        {
         "system": "TJ",
         "value": "777667755"
        }
       ]
      },
      "claim_payment_line_item": [
       {
        "header_number": {
         "assigned_number": 1
        },
        "claim_payment_information": [
         {
          "claim_payment_info": {
           "claim_payment_amount": 500,
           "claim_status_code": "1",
           "claim_filing_indicator_code": "12",
           "patient_responsibility_amount": 300,
           "payer_claim_control_number": "94060555410000",
           "patient_control_number": "5554555444",
           "claim_frequency_code": "1",
           "facility_type_code": "11",
           "total_claim_charge_amount": 800
          },
          "patient": {
           "type": "QC",
           "kind": "1",
           "name": "BUDD",
           "name_first": "WILLIAM",
           "identifier_system": "MI",
           "identifier_value": "33344555510"
          },
          "claim_supplemental_info": [
           {
            "type": "AU",
            "amount": 800
           }
          ],
          "service_payment_information": [
           {
            "service_payment_info": {
             "service": {
              "system": "HC",
              "code": "99211"
             },
             "charge_amount": 800,
             "line_item_provider_payment_amount": 500
            },
            "service_date": [
             {
              "time_qualifier_date": "472",
              "service_date": "20190301"
             }
            ],
            "service_adjustment": [
             {
              "amount": 300,
              "group": "PR",
              "reason": "1"
             }
            ],
            "service_supplemental_amount": [
             {
              "type": "B6",
              "amount": 800
             }
            ]
           }
          ]
         },
         {
          "claim_payment_info": {
           "claim_payment_amount": 600,
           "claim_status_code": "1",
           "claim_filing_indicator_code": "12",
           "patient_responsibility_amount": 600,
           "payer_claim_control_number": "9407779923000",
           "patient_control_number": "8765432112",
           "claim_frequency_code": "1",
           "facility_type_code": "11",
           "total_claim_charge_amount": 1200
          },
          "patient": {
           "type": "QC",
           "kind": "1",
           "name": "SETTLE",
           "name_first": "SUSAN",
           "identifier_system": "MI",
           "identifier_value": "44455666610"
          },
          "claim_supplemental_info": [
           {
            "type": "AU",
            "amount": 1200
           }
          ],
          "service_payment_information": [
           {
            "service_payment_info": {
             "service": {
              "system": "HC",
              "code": "93555"
             },
             "charge_amount": 1200,
             "line_item_provider_payment_amount": 600
            },
            "service_date": [
             {
              "time_qualifier_date": "472",
              "service_date": "20190310"
             }
            ],
            "service_adjustment": [
             {
              "amount": 600,
              "group": "PR",
              "reason": "1"
             }
            ],
            "service_supplemental_amount": [
             {
              "type": "B6",
              "amount": 1200
             }
            ]
           }
          ]
         }
        ]
       }
      ],
      "se": {
       "segment_count": 26,
       "txid": "112233"
      }
     }
    ],
    "gs": {
     "function": "HP",
     "sender": "ABCD",
     "receiver": "ABCD",
     "date": "20190827",
     "time": "123456",
     "id": "12345678",
     "standard": "X",
     "version": "005010X221A1"
    },
    "ge": {
     "number_transactions": 1,
     "id": "12345678"
    }
   },
   {
    "transactions": [
     {
      "st": {
       "type": "837",
       "txid": "20002813",
       "version": "005010X222A1"
      },
      "tx": {
       "struct": "0019",
       "purpose": "00",
       "txid": "20002813",
       "date": "20200728",
       "time": "151613",
       "type": "CH"
      },
      "submitter": {
       "name": {
        "type": "41",
        "kind": "2",
        "name": "HCSIS CHC SPLIT PHASE 1",
        "identifier_system": "46",
        "identifier_value": "545746153"
       },
       "contacts": [
        {
         "type": "IC",
         "name": "IT SUPERVISOR",
         "system": "TE",
         "value": "7174255377"
        }
       ]
      },
      "receiver": {
       "name": {
        "type": "40",
        "kind": "2",
        "name": "DEPARTMENT OF HUMAN SERVICES",
        "identifier_system": "46",
        "identifier_value": "445314156"
       }
      },
      "billing_provider_group": [
       {
        "_hl": {
         "id": "1",
         "level": "20",
         "child": "1"
        },
        "billing_provider": {
         "name": {
          "type": "85",
          "kind": "2",
          "name": "HCSIS CHC SPLIT PHASE 1"
         },
         "address": {
          "line": "1006 HEMLOCK DR"
         },
         "address_ext": {
          "city": "HARRISBURG",
          "state": "PA",
          "zip": "171103595"
         },
         "tax_id": {
          "system": "EI",
          "value": "000021698"
         }
        },
        "subscriber": [
         {
          "_hl": {
           "id": "2",
           "parent": "1",
           "level": "22",
           "child": "0"
          },
          "info": {
           "payer_responsibility": "P",
           "relationship": "18",
           "claim_filing": "MC"
          },
          "name": {
           "name": {
            "type": "IL",
            "kind": "1",
            "name": "PTSURNAME",
            "name_first": "PTNAME",
            "identifier_system": "MI",
            "identifier_value": "123456"
           },
           "address": {
            "line": "33 LONG ISLAND PARK"
           },
           "address_ext": {
            "city": "NEW YORK CITY",
            "state": "NY",
            "zip": "10001"
           },
           "demographic_info": {
            "date_format": "D8",
            "birth_date": "19991122",
            "gender": "U"
           }
          },
          "payer": {
           "name": {
            "type": "PR",
            "kind": "2",
            "name": "DEPARTMENT OF HUMAN SERVICES",
            "identifier_system": "PI",
            "identifier_value": "1700393030"
           },
           "address": {
            "line": "555 MAIN STREET"
           },
           "address_ext": {
            "city": "HARRISBURG",
            "state": "PA",
            "zip": "171069022"
           },
           "billing_provider_secondary_id": [
            {
             "system": "G2",
             "value": "3004658650007"
            }
           ]
          },
          "claim": [
           {
            "claim_info": {
             "benifits_assignment": "A",
             "provider_signature": "Y",
             "release_of_information": "Y",
             "service_location": {
              "code": "12",
              "system": "B",
              "frequency": "1"
             },
             "total": 32,
             "patient_signature_source": "P",
             "benifits_assignment_certification": "Y",
             "claim_id": "16.31"
            },
            "diagnoses": {
             "diag_1": {
              "system": "ABK",
              "code": "A0100"
             }
            },
            "service_line": [
             {
              "number": {
               "assigned_number": 1
              },
              "service": {
               "service": {
                "system": "HC",
                "code": "W1724"
               },
               "unit": "UN",
               "charge_amount": 32,
               "diagnoses": {
                "diag": 1
               },
               "unit_count": 32
              },
              "line_supplemental_info": [
               {
                "type": "03",
                "transmission": "AA"
               },
               {
                "type": "04",
                "transmission": "BM"
               }
              ],
              "service_date": {
               "type": "472",
               "format": "D8",
               "date": "20200312"
              }
             },
             {
              "number": {
               "assigned_number": 2
              },
              "service": {
               "service": {
                "system": "HC",
                "code": "W1721"
               },
               "unit": "UN",
               "charge_amount": 31,
               "diagnoses": {
                "diag": 1
               },
               "unit_count": 3
              },
              "service_date": {
               "type": "472",
               "format": "D8",
               "date": "20200312"
              },
              "service_line_id": {
               "system": "6R",
               "value": "31"
              }
             }
            ]
           }
          ]
         }
        ]
       }
      ],
      "se": {
       "segment_count": 32,
       "txid": "20002813"
      }
     }
    ],
    "gs": {
     "function": "HP",
     "sender": "ABCD",
     "receiver": "ABCD",
     "date": "20190827",
     "time": "123456",
     "id": "12345678",
     "standard": "X",
     "version": "005010X221A1"
    },
    "ge": {
     "number_transactions": 1,
     "id": "12345678"
    }
   }
  ],
  "iea": {
   "number_groups": 2,
   "id": "191511902"
  }
 }

Last updated