This section describes the standard formats used for TFM's Electronic Data Interchange (EDI). These standards are used for all types of data interchange between TFM and payers. It will also show you how to process claims for EDI submission.
| Mapping | Claims - X12 837 | Payments - X12 835 |
TFM has a database designed to make information flow better within a medical office. The ANSI ASC X12 standards are designed to pass data between providers and payers. The translation of the TFM data to the X12 data is called mapping. The following two sections are a reference to the way TFM maps data to the X12 standard.
The TFM posting process operates on a set of claims and all of the related data of each claim.
| Loop | Segment/Element | TFM Data Element |
|---|---|---|
Envelope Segments |
||
| - | ISA01 | "03"/"00" if no ISA02 |
| - | ISA02 | Preferences [com.trefre.edi.transUsername] |
| - | ISA03 | "01"/"00" blank if no ISA04 |
| - | ISA04 | Preferences [com.trefre.edi.transPassword] |
| ISA05 | Preferences [com.trefre.edi.transSenderQual] Defaults to "ZZ" | |
| ISA06 | Preferences [com.trefre.edi.transSenderID] | |
| ISA07 | Preferences [com.trefre.edi.transReceiverQual] Defaults to "ZZ" | |
| ISA08 | Preferences [com.trefre.edi.transReceiverID] | |
| GS02 | Preferences [com.trefre.edi.appSender] | |
| GS03 | Preferences [com.trefre.edi.appReceiver] | |
837 Transaction |
||
| REF03 | Preferences [com.trefre.edi.piloting] | |
| 1000A | NM102 | "1" if submitter is person, "2" otherwise |
| 1000A | NM103 | Preferences [com.trefre.edi.submitterLast] |
| 1000A | NM104 | Preferences [com.trefre.edi.submitterFirst] if submitter is person |
| 1000A | NM105 | Preferences [com.trefre.edi.submitterMiddle] if submitter is person |
| 1000A | NM109 | Preferences [com.trefre.edi.submitterID] |
| 1000A | PER02 | Preferences [com.trefre.edi.submitterAContactName] |
| 1000A | PER03 | Preferences [com.trefre.edi.submitterAContactType1] |
| 1000A | PER04 | Preferences [com.trefre.edi.submitterAContact1] |
| 1000A | PER06 | Preferences [com.trefre.edi.submitterAContactExt1] |
| 1000B | NM103 | Preferences [com.trefre.edi.receiverName] |
| 1000B | NM109 | Preferences [com.trefre.edi.receiverID] |
Details |
||
2000A - Billing Provider |
||
| 2000A | PRV03 | PROVIDER_TF.SPECIALTY |
2010AA |
||
| 2010AA | NM103 | PROVIDER_TF.person.LNAME |
| 2010AA | NM104 | PROVIDER_TF.person.FNAME |
| 2010AA | NM105 | PROVIDER_TF.person.MNAME |
| 2010AA | NM109 | PROVIDER_TF.TAX_ID if available PROVIDER_TF.person.SSN otherwise |
| 2010AA | N302 | PROVIDER_TF.LOT<space>PROVIDER_TF.STREET |
| 2010AA | N401 | PROVIDER_TF.CITY |
| 2010AA | N402 | PROVIDER_TF.STATE |
| 2010AA | N403 | PROVIDER_TF.ZIP |
| 2010AA-1 | REF02 | PROVIDER_TF.person.SSN if available and TAX_ID used in NM109 |
| 2010AA-2 | REF01 | PROVIDERCODE_TF.PARTICIPATION_CODE |
| 2010AA-2 | REF02 | PROVIDERCODE_TF.CODE |
| 2010AA-3 | REF02 | PROVIDER_TF.UPIN if available |
2010AB - Pay To Provider [Not Yet Implemented in TFM] |
||
2000B/C - Subscriber/Patient |
||
| 2000B | SBR01 | COVERAGECODE_TF.PRIORITY [First character only.] |
| 2000B | SBR03 | COVERAGE_TF.GROUP_NUM |
| 2000B | SBR04 | COVERAGE_TF.PLAN_NAME |
| 2000B | SBR05 | PAYER_TF.INS_TYPE |
| 2000B | SBR09 | PAYER_TF.IND_CODE |
| 2000B | SBR05 | PAYER_TF.INS_TYPE |
| 2000B/C | PAT01 | COVERAGECODE_TF.RELATIONSHIP if patient is not subscriber |
| 2000B/C | PAT06 | PATIENT_TF.person.DECEASED_DATE if PATIENT_TF.person.DECEASED is True |
| 2000B/C | PAT08 | PATIENT_TF.WEIGHT if date of service is withing 29 days of patient birthdate |
| 2000B/C | PAT09 | "Y" if PATIENT_TF.PREGNANT is True |
2010(B/C)A |
||
| 2010(B/C)A | NM103 | PERSON_TF.LNAME |
| 2010(B/C)A | NM104 | PERSON_TF.FNAME |
| 2010(B/C)A | NM105 | PERSON_TF.MNAME |
| 2010(B/C)A | NM109 | COVERAGE_TF.CONTRACT_NUM |
| 2010(B/C)A | N302 | PERSON_TF.LOT<space>PERSON_TF.STREET |
| 2010(B/C)A | N401 | PERSON_TF.CITY |
| 2010(B/C)A | N402 | PERSON_TF.STATE |
| 2010(B/C)A | N403 | PERSON_TF.ZIP |
| 2010(B/C)A | DMG02 | PERSON_TF.DOB |
| 2010(B/C)A | DMG03 | PERSON_TF.SEX |
| 2010(B/C)A | REF02 | PERSON_TF.SSN |
| 2010(B/C)A | DMG03 | PERSON_TF.SEX |
2010BB |
||
| 2010BB | NM103 | PAYER_TF.FULL_NAME |
| 2010BB | NM109 | PAYER_TF.PAYER_NUMBER |
| 2010BB | N3 | PAYER_TF.ADDRESS |
| 2010BB | N401 | PAYER_TF.CITY |
| 2010BB | N402 | PAYER_TF.STATE |
| 2010BB | N403 | PAYER_TF.ZIP |
| 2010BB | REF02 | PAYER_TF.CLAIM_OFFICE_NUM |
2010BC - Responsible Party Name [Not Implemented] |
||
| 2010BC | REF02 | PAYER_TF.CLAIM_OFFICE_NUM |
2010BD - Credit/Debit Card Holder [Not Implemented] |
||
2300 - Claim Information |
||
| 2300 | CLM01 | CLAIM_TF.ID |
| 2300 | CLM02 | total(PROCEDURE_TF.CHARGE) |
| 2300 | CLM05-1 | ENCOUNTER_TF.LOCATION_CODE |
| 2300 | CLM05-3 | CLAIM_TF.FILE_STATUS |
| 2300 | CLM06 | "Y" if first PROVIDERCODE_TF.SIGNATURE is True, "N" otherwise |
| 2300 | CLM07 | CLAIM_TF.ASSIGN_CODE |
| 2300 | CLM08 | "Y" if COVERAGE_TF.ASSIGN_BENE is True, "N" otherwise |
| 2300 | CLM09 | PATIENT_TF.MED_RELEASE |
| 2300 | CLM10 | PATIENT_TF.SIGN_SOURCE |
| 2300 | CLM11-1 | ENCOUNTER_TF.REL_TO_AUTO |
| 2300 | CLM11-1/2 | ENCOUNTER_TF.REL_TO_EMPLOYMENT |
| 2300 | CLM11-1/2/3 | ENCOUNTER_TF.REL_TO_OTHER |
| 2300 | CLM11-4 | ENCOUNTER_TF.ACCIDENT_STATE |
| 2300 | CLM12 | ENCOUNTER_TF.PROGRAM_CODE |
| 2300 | CLM16 | "P" if PROVIDERCODE_TF.PARTICPATION_CODE equals 'non-par' |
| 2300 | CLM20 | CLAIM_TF.DELAY_CODE |
| 2300 | DTP03 | ENCOUNTER_TF.FIRST_CONSULT -- DTP01 = 454 |
| 2300 | DTP03 | ENCOUNTER_TF.REFERRAL_DATE -- DTP01 = 330 |
| 2300 | DTP03 | ENCOUNTER_TF.SYMPTOM_ONSET -- DTP01 = 431 |
| 2300 | DTP03 | ENCOUNTER_TF.ACCIDENT_DATE -- DTP01 = 439 |
| 2300 | DTP03 | ENCOUNTER_TF.LAST_PERIOD -- DTP01 = 484 |
| 2300 | DTP03 | ENCOUNTER_TF.DUE_DATE -- DTP01 = ABC (Pre-Addenda only) |
| 2300 | DTP03 | ENCOUNTER_TF.DISABILITY_FROM -- DTP01 = 360 |
| 2300 | DTP03 | ENCOUNTER_TF.DISABILITY_TO -- DTP01 = 361 |
| 2300 | DTP03 | ENCOUNTER_TF.ADMISSION_DATE -- DTP01 = 435 |
| 2300 | DTP03 | ENCOUNTER_TF.DISCHARGE_DATE -- DTP01 = 096 |
| 2300 | DTP03 | ENCOUNTER_TF.FIRST_CONSULT -- DTP01 = 454 |
| 2300 | REF02 | CLAIM_TF.AUTH_NUM -- REF01 = G1 |
| 2300 | REF02 | PATIENT_TF.ID -- REF01 = EA |
| 2300 | HI | Mapped to first 8 PROCEDURE_TF.ICD9_x by selecting one from each unique PROCEDURE on the claim until they run out. |
2310A - Referring Provider Name |
||
| 2310A | NM101 | "DN" |
| 2310A | NM102 | 1 |
| 2310A | NM103 | ENCOUNTER_TF.ref_provider.person.LNAME |
| 2310A | NM104 | ENCOUNTER_TF.ref_provider.person.FNAME |
| 2310A | NM105 | ENCOUNTER_TF.ref_provider.person.MNAME |
| 2310A | NM108 | "XX" if UPIN, "24" if ENCOUNTER_TF.Ref_provider.TAX_ID otherwise "34" for ENCOUNTER_TF.Ref_provider.SSN |
2310B - Rendering Provider Name [Not Implemented] |
||
2310C - Purchased Service Provider [Not Implemented] |
||
2310D - Service Facility Location |
||
| 2310D | NM101 | "FA" |
| 2310D | NM102 | 2 |
| 2310D | NM103 | ENCOUNTER_TF.facility.FULL_NAME |
| 2310D | N301 | ENCOUNTER_TF.facility.ADDRESS |
| 2310D | N401 | ENCOUNTER_TF.facility.CITY |
| 2310D | N402 | ENCOUNTER_TF.facility.STATE |
| 2310D | N403 | ENCOUNTER_TF.facility.ZIP |
2310E - Supervising Provider Name [Not Implemented] |
||
2320 - Other Subscriber Information [Not Implemented] |
||
2400 - Service Line |
||
| 2400 | SV101-1 | "HC" |
| 2400 | SV101-2 | PROCEDURE_TF.procedure_code.CODE |
| 2400 | SV101-3 | PROCEDURE_TF.procedure_modifier_1.CODE |
| 2400 | SV101-4 | PROCEDURE_TF.procedure_modifier_2.CODE |
| 2400 | SV101-5 | PROCEDURE_TF.procedure_modifier_3.CODE |
| 2400 | SV102 | PROCEDURE_TF.CHARGE |
| 2400 | SV103 | "UN" |
| 2400 | SV104 | 1 |
| 2400 | SV107-1 through 4 | Pointer to ICD9 Code in HI segment in loop 2300 |
| 2400 | SV109 | "N" in Pre-addenda only. |
| 2400 | DTP02 | ENCOUNTER_TF.SERVICE_DATE -- DTP01 = 472 |
| 2400 | REF02 | CLAIM_TF.AUTH_NUM -- REF01 = G1 |
| 2400 | REF02 | PROCEDURE_TF.ID -- REF01 = 6R |
2420A - Rendering Provider Name [Not Implemented] |
||
2420B - Purchased Service Provider [Not Implemented] |
||
2420C - Service Facility Location |
||
| 2420C | NM101 | "FA" |
| 2420C | NM102 | 2 |
| 2420C | NM103 | ENCOUNTER_TF.facility.FULL_NAME |
| 2420C | N301 | ENCOUNTER_TF.facility.ADDRESS |
| 2420C | N401 | ENCOUNTER_TF.facility.CITY |
| 2420C | N402 | ENCOUNTER_TF.facility.STATE |
| 2420C | N403 | ENCOUNTER_TF.facility.ZIP |
2420D - Supervising Provider Name [Not Implemented] |
||
2420E - Ordering Provider Name [Not Implemented] |
||
2420F - Referring Provider Name [Not Implemented] |
||
2420G - Other Payer Prior [Not Implemented] |
||
2430 - Line Adjudication Information [Not Implemented] |
||
2440 - Form Identification Code [Not Implemented] |
||
TFM imports
| TFM Data Element | Loop | Segment/Element |
|---|---|---|
Payer Identification |
||
| [Primary] | ||
| PAYER_TF.PAYER_NUMBER if N102 = "XV" | 1000A | N103 |
| [Alternate] | ||
| PAYER_TF.FULL_NAME if N102 != "XV" | 1000A | N103 |
Payee Identification |
||
| [Primary] | ||
| PROVIDER_TF.UPIN if N102 = "XX" | 1000B | N103 |
| [Alternate 1] | ||
| PROVIDER_TF.TAX_ID if N102 = "FI" | 1000B | N103 |
| [Alternate 2] | ||
| PROVIDER_TF.GROUP_NAME if N102 != ("XX"||"FI") | 1000B | N103 |
Payer Payments |
||
| PAYERPAYMENT_TF.CHECK_NUM | - | TRN02 |
| PAYERPAYMENT_TF.METHOD | - | "Check" if BPR04 is "CHK", "Direct Deposit" otherwise |
| PAYERPAYMENT_TF.PAYMENT_TYPE | - | "Fee for Service" |
| PAYERPAYMENT_TF.CHECK_DATE | - | BPR16 |
| PAYERPAYMENT_TF.AMOUNT | - | BPR02 - SUM(each claim patient responsibility) |
| PAYERPAYMENT_TF.BALANCED | - | False |
Payer Payment (Capitation)Created if there are provider level adjustments reported in segment PLB |
||
| PAYERPAYMENT_TF.CHECK_NUM | - | TRN02 |
| PAYERPAYMENT_TF.METHOD | - | "Check" if BPR04 is "CHK", "Direct Deposit" otherwise |
| PAYERPAYMENT_TF.PAYMENT_TYPE | - | "Capitation" |
| PAYERPAYMENT_TF.CHECK_DATE | - | BPR16 |
| PAYERPAYMENT_TF.AMOUNT | - | BPR02 |
| PAYERPAYMENT_TF.BALANCED | - | False |
Payment |
||
| PAYMENT_TF.PAYER_PAYMENT_ID | - | ID of PayerPaymentTF created |
| PAYMENT_TF.CLAIM_ID | - | CLP01 |
| PAYMENT_TF.PROCEDURE_CODE | - | SVC01 |
| PAYMENT_TF.CHARGE | - | SVC02 |
| PAYMENT_TF.ADJUSTMENT | - | SUM(CAS02 where CAS01 in ("OA","PI")) plus a percentage of claim level adjustments of type ("OA" and "PI"). |
| PAYMENT_TF.DEDUCTIBLE | - | SUM(CAS02 where CAS01 is "PR") plus a percentage of claim level adjustments of type "PR". |
| PAYMENT_TF.DEDUCTIBLE | - | SUM(CAS02 where CAS01 in ("CO","CR")) plus a percentage of claim level adjustments of type ("CO" and "CR"). |
| PAYMENT_TF.PAID_AMT | - | PAYMENT_TF.CHARGE - (PAYMENT_TF.ADJUSTMENT + PAYMENT_TF.DEDUCTIBLE + PAYMENT_TF.WITHHOLD) |
| PAYMENT_TF.ALLOWED | - | PAYMENT_TF.CHARGE - (PAYMENT_TF.ADJUSTMENT + PAYMENT_TF.WITHHOLD) |