HL7 MFR_M04 Charge Description Master File Response
MFR_M04 returns charge description master records in response to a master-file query. It is the response side of the older MFQ_M01/MFR pattern, using original-style query segments rather than the newer QBP/RSP style.
If MFN_M04 is a push notification, MFR_M04 is the pull answer: "here are the CDM records that match your query."
A small MFR M04 example
What workflow it represents
A receiver asks for one or more charge master records. The owner responds with MFR_M04, acknowledging the query and returning matching charge descriptions and optional pricing rows.
This pattern is useful for legacy systems that query reference data on demand instead of receiving a scheduled MFN feed. In modern projects I would still ask whether a push feed or a newer query profile is easier to operate.
How to read the structure
MSH identifies the response. MSA acknowledges the query message, ERR reports errors, and QAK can carry query status and hit counts. QRD and QRF echo the original-style query definition and filter.
MFI identifies the charge master file. Each MF_QUERY group starts with MFE, then returns the matching CDM charge record and optional repeating PRC pricing rows. DSC supports continuation when the response is paged.
Implementation traps
Do not treat MSA-1 alone as the query result. The message can acknowledge the request while QAK or the returned record groups tell you whether anything useful was found.
Also watch pagination. A response with a continuation pointer is not complete just because it contains one CDM record.
Finally, keep the query key and returned MFE key aligned. If the response returns a different primary key format from the requested one, cache updates become unreliable.
Reference notes
HL7 master-file query material describes the MFQ/MFR transaction as a way to query a particular record or group of records in a master file. MFR_M04 uses that response envelope and returns charge records as MFE, CDM, and optional PRC detail.