HL7 v2.5.1 Specificationsv2.5.1

to moveEnter to openTry PID-5, ADT, 0004

DFT: Detailed Financial Transaction

DFT posts charges and financial transactions against a patient account: a procedure performed, a supply used, an adjustment made. The transactions themselves are FT1 segments.

Recognising DFT messages

DFT announces itself in MSH-9 like this:

MSH-9DFT^P03^DFT_P03
  1. MSH-9.1DFTmessage code: what kind of message this is (detailed financial transaction)
  2. MSH-9.2P03trigger event: what happened in the real world: post detail financial transactions
  3. MSH-9.3DFT_P03message structure: which segments to expect, and in what order

How to use these specifications explains MSH-9 in full, with a worked example.

Message structures

DFT takes 2 structures.

DFT_P03: Post Detail Financial Transactions

Sent when one thing happens: P03: Post Detail Financial Transactions.

You must always send: MSH, EVN, PID, FT1. Everything else is optional, or required only inside a group you chose to send.

SegmentNameOPTCardinality
MSHR1..1
SFTO0..*
EVNR1..1
PIDR1..1
PD1O0..1
ROLO0..*
VISITa group of 3 segments, repeated togetherO0..1
PV1in VISITR1..1
PV2in VISITO0..1
ROLin VISITO0..*
DB1O0..*
COMMON_ORDERa group of 4 segments, repeated togetherO0..*
ORCin COMMON_ORDERO0..1
TIMING_QUANTITYin COMMON_ORDERa group of 2 segments, repeated togetherO0..*
TQ1in TIMING_QUANTITYR1..1
TQ2in TIMING_QUANTITYO0..*
ORDERin COMMON_ORDERa group of 2 segments, repeated togetherO0..1
OBRin ORDERR1..1
NTEin ORDERO0..*
OBSERVATIONin COMMON_ORDERa group of 2 segments, repeated togetherO0..*
OBXin OBSERVATIONR1..1
NTEin OBSERVATIONO0..*
FINANCIALa group of 4 segments, repeated togetherR1..*
FT1R1..1
NTEO0..1
FINANCIAL_PROCEDUREa group of 2 segments, repeated togetherO0..*
PR1in FINANCIAL_PROCEDURER1..1
ROLin FINANCIAL_PROCEDUREO0..*
FINANCIAL_COMMON_ORDERa group of 4 segments, repeated togetherO0..*
ORCin FINANCIAL_COMMON_ORDERO0..1
FINANCIAL_TIMING_QUANTITYin FINANCIAL_COMMON_ORDERa group of 2 segments, repeated togetherO0..*
TQ1in FINANCIAL_TIMING_QUANTITYR1..1
TQ2in FINANCIAL_TIMING_QUANTITYO0..*
FINANCIAL_ORDERin FINANCIAL_COMMON_ORDERa group of 2 segments, repeated togetherO0..1
OBRin FINANCIAL_ORDERR1..1
NTEin FINANCIAL_ORDERO0..*
FINANCIAL_OBSERVATIONin FINANCIAL_COMMON_ORDERa group of 2 segments, repeated togetherO0..*
OBXin FINANCIAL_OBSERVATIONR1..1
NTEin FINANCIAL_OBSERVATIONO0..*
DG1O0..*
DRGO0..1
GT1O0..*
INSURANCEa group of 4 segments, repeated togetherO0..*
IN1in INSURANCER1..1
IN2in INSURANCEO0..1
IN3in INSURANCEO0..*
ROLin INSURANCEO0..*
ACCO0..1

R inside a group means required of that group. Send the group and you must include that segment; leave the group out and it never appears. This structure has 12 such groups: VISIT, COMMON_ORDER, TIMING_QUANTITY, ORDER, OBSERVATION, FINANCIAL, FINANCIAL_PROCEDURE, FINANCIAL_COMMON_ORDER, FINANCIAL_TIMING_QUANTITY, FINANCIAL_ORDER, FINANCIAL_OBSERVATION, INSURANCE.

DFT_P11: Post Detail Financial Transactions - Expanded

Sent when one thing happens: P11: Post Detail Financial Transactions - Expanded.

SegmentNameOPTCardinality
MSHR1..1
SFTO0..*
EVNR1..1
PIDR1..1
PD1O0..1
ROLO0..*
VISITa group of 3 segments, repeated togetherO0..1
PV1in VISITR1..1
PV2in VISITO0..1
ROLin VISITO0..*
DB1O0..*
COMMON_ORDERa group of 4 segments, repeated togetherO0..*
ORCin COMMON_ORDERO0..1
TIMING_QUANTITYin COMMON_ORDERa group of 2 segments, repeated togetherO0..*
TQ1in TIMING_QUANTITYR1..1
TQ2in TIMING_QUANTITYO0..*
ORDERin COMMON_ORDERa group of 2 segments, repeated togetherO0..1
OBRin ORDERR1..1
NTEin ORDERO0..*
OBSERVATIONin COMMON_ORDERa group of 2 segments, repeated togetherO0..*
OBXin OBSERVATIONR1..1
NTEin OBSERVATIONO0..*
DG1O0..*
DRGO0..1
GT1O0..*
INSURANCEa group of 4 segments, repeated togetherO0..*
IN1in INSURANCER1..1
IN2in INSURANCEO0..1
IN3in INSURANCEO0..*
ROLin INSURANCEO0..*
ACCO0..1
FINANCIALa group of 7 segments, repeated togetherR1..*
FT1R1..1
FINANCIAL_PROCEDUREa group of 2 segments, repeated togetherO0..*
PR1in FINANCIAL_PROCEDURER1..1
ROLin FINANCIAL_PROCEDUREO0..*
FINANCIAL_COMMON_ORDERa group of 4 segments, repeated togetherO0..*
ORCin FINANCIAL_COMMON_ORDERO0..1
FINANCIAL_TIMING_QUANTITYin FINANCIAL_COMMON_ORDERa group of 2 segments, repeated togetherO0..*
TQ1in FINANCIAL_TIMING_QUANTITYR1..1
TQ2in FINANCIAL_TIMING_QUANTITYO0..*
FINANCIAL_ORDERin FINANCIAL_COMMON_ORDERa group of 2 segments, repeated togetherO0..1
OBRin FINANCIAL_ORDERR1..1
NTEin FINANCIAL_ORDERO0..*
FINANCIAL_OBSERVATIONin FINANCIAL_COMMON_ORDERa group of 2 segments, repeated togetherO0..*
OBXin FINANCIAL_OBSERVATIONR1..1
NTEin FINANCIAL_OBSERVATIONO0..*
DG1O0..*
DRGO0..1
GT1O0..*
FINANCIAL_INSURANCEa group of 4 segments, repeated togetherO0..*
IN1in FINANCIAL_INSURANCER1..1
IN2in FINANCIAL_INSURANCEO0..1
IN3in FINANCIAL_INSURANCEO0..*
ROLin FINANCIAL_INSURANCEO0..*

R inside a group means required of that group. Send the group and you must include that segment; leave the group out and it never appears. This structure has 13 such groups: VISIT, COMMON_ORDER, TIMING_QUANTITY, ORDER, OBSERVATION, INSURANCE, FINANCIAL, FINANCIAL_PROCEDURE, FINANCIAL_COMMON_ORDER, FINANCIAL_TIMING_QUANTITY, FINANCIAL_ORDER, FINANCIAL_OBSERVATION, FINANCIAL_INSURANCE.

Trigger events

The trigger event is the real-world thing that made the message get sent. DFT defines 2.

EventNameStructure
P03Post Detail Financial TransactionsDFT_P03
P11Post Detail Financial Transactions - ExpandedDFT_P11