HL7 BHS Batch Header

HL7 field reference BHS fields from HL7 v2.5.1 Show fields

These are the generated fields for the version selected at the top of the page. The document stays the same, but the reference panel follows that version.

Fields

FieldNameRequiredRepeatableTypeTable
BHS.1 Batch Field Separator Yes No ST
BHS.2 Batch Encoding Characters Yes No ST
BHS.3 Batch Sending Application No No HD
BHS.4 Batch Sending Facility No No HD
BHS.5 Batch Receiving Application No No HD
BHS.6 Batch Receiving Facility No No HD
BHS.7 Batch Creation Date/Time No No TS
BHS.8 Batch Security No No ST
BHS.9 Batch Name/ID/Type No No ST
BHS.10 Batch Comment No No ST
BHS.11 Batch Control ID No No ST
BHS.12 Reference Batch Control ID No No ST

BHS starts a batch inside an HL7 file and gives the receiver batch-level sender, receiver, creation, security, and control information before the individual messages begin.

Batch and file wrappers are operational plumbing: they tell you where a file or batch starts, where it ends, who sent it, who should receive it, and how to reconcile the contents.

The messages inside still have their own MSH headers. The wrapper fields are about file-level routing, batching, duplicate handling, retry behaviour, and counts.

The imported v2.5.1 message-structure catalog does not list a common message structure for BHS here, so I would treat it as profile-driven. Use it when your sending and receiving systems have explicitly agreed how the segment is carried.

For practical interface work, read the generated field panel for datatype, required, repeatable, and table details, then use the notes below to decide what the field should mean in the receiving workflow.

BHS-1 Batch Field Separator RequiredR SingleS TypeST

BHS-1 is the separator used by the wrapper line itself. In normal HL7 traffic this is the pipe character, |, and changing it is only sensible when both systems have explicitly agreed to parse the wrapper that way.

BHS-2 Batch Encoding Characters RequiredR SingleS TypeST

BHS-2 carries the component, repetition, escape, and subcomponent characters for the wrapper line. The usual value is ^~\&; if this does not match the actual message encoding, parsing problems start before the receiver even reaches the clinical content.

BHS-3 Batch Sending Application OptionalO SingleS TypeHD

BHS-3 identifies the sending application or facility at the wrapper level. Use stable values that match routing and reconciliation rules, not whatever display label happened to be configured this week.

Because this field uses HD, it can carry a namespace and universal identifier when the local name alone is not precise enough.

BHS-4 Batch Sending Facility OptionalO SingleS TypeHD

BHS-4 identifies the sending application or facility at the wrapper level. Use stable values that match routing and reconciliation rules, not whatever display label happened to be configured this week.

Because this field uses HD, it can carry a namespace and universal identifier when the local name alone is not precise enough.

BHS-5 Batch Receiving Application OptionalO SingleS TypeHD

BHS-5 identifies the receiving application or facility at the wrapper level. Use stable values that match routing and reconciliation rules, not whatever display label happened to be configured this week.

Because this field uses HD, it can carry a namespace and universal identifier when the local name alone is not precise enough.

BHS-6 Batch Receiving Facility OptionalO SingleS TypeHD

BHS-6 identifies the receiving application or facility at the wrapper level. Use stable values that match routing and reconciliation rules, not whatever display label happened to be configured this week.

Because this field uses HD, it can carry a namespace and universal identifier when the local name alone is not precise enough.

BHS-7 Batch Creation Date/Time OptionalO SingleS TypeTS

BHS-7 is the timestamp for creating this wrapper or record, not necessarily the time of the clinical event inside it. Use the real source-system precision and agree timezone behaviour before using it for reconciliation.

BHS-8 Batch Security OptionalO SingleS TypeST

BHS-8 is rarely the right place for modern authentication. If a legacy profile uses it, document the exact value and rotation rule; otherwise keep security in the transport, certificates, network controls, or authenticated service layer.

BHS-9 Batch Name/ID/Type OptionalO SingleS TypeST

BHS-9 is part of the control identity for this batch. Make it stable enough for duplicate detection, retries, audit trails, and support conversations.

BHS-10 Batch Comment OptionalO SingleS TypeST

BHS-10 is human-readable context. Keep it useful for display and troubleshooting, but do not hide required workflow logic here unless the implementation guide explicitly says the receiver parses it.

BHS-11 Batch Control ID OptionalO SingleS TypeST

BHS-11 is part of the control identity for this batch. Make it stable enough for duplicate detection, retries, audit trails, and support conversations.

BHS-12 Reference Batch Control ID OptionalO SingleS TypeST

BHS-12 is part of the control identity for this batch. Make it stable enough for duplicate detection, retries, audit trails, and support conversations.

When this references a prior control ID, preserve the original value exactly. A receiver trying to match a correction or continuation cannot repair a changed identifier by guesswork.

Related links