X12 TrxID determination

The X12 trxID now includes the receiver's and sender's ID and ID qualifiers, and requires the user-defined metadata as generated by splitX12.

The new trxID uses the form:

MMM_RECEIVER_RQ_SENDER_SQ
  • MMM = message number (that is, 835 from the transaction set)
  • RECEIVER = receiver ID from the ISA
  • RQ = receiver ID qualifier from the ISA
  • SENDER = sender ID from the ISA
  • SQ = sender ID qualifier from the ISA

The trxID determination works for transaction set messages (ST) or group messages (GS). The trxID determination relies on the correct separator characters in the SEPCHARS metadata field. It also relies on the ISA user-defined metadata.

If the ISA user-defined metadata is missing from the message, then the RECEIVER, RQ, SENDER, and SQ fields are blank and the underscores are omitted. The trxID would be 835. Routing is similar to HL7, where unspecified trailing fields are ignored.

For example, in the trxID 835_MSGGROUP_ZZ_COLVERLEAF_ZZ, 835 would route all 835 transactions, and 835_MSGGROUP would route all 835s bound for MSGGROUP. This handles most routing scenarios without the requirement for a custom trxID procedure.

Note: If X12 trxID determination is specified for the inbound thread, then the splitX12 is automatically included in the inbound TPS with default arguments.