Interface: Build834Spec
The full input to "./build-834.js".build834: the envelope, the
header, and ≥ 1 member loop. A well-formed spec round-trips through
get834Header / get834Enrollments field-for-field; a spec with an
unknown maintenance type or a missing member loop is REFUSED with an
"./build-errors.js".Enrollment834BuildError.
Example
import { build834, type Build834Spec } from "@cosyte/x12";
const spec: Build834Spec = {
envelope: {
senderId: "EMPLOYERCO", receiverId: "MEDPAY",
interchangeDate: "260601", interchangeTime: "1200",
interchangeControlNumber: "000000001",
groupControlNumber: "1", transactionSetControlNumber: "0001",
},
header: {
transactionSetPurposeCode: "00", referenceId: "FILE-202606", date: "20260601",
sponsor: { entityIdentifierCode: "P5", name: "EMPLOYER CO" },
payer: { entityIdentifierCode: "IN", name: "MEDPAY INSURANCE" },
},
members: [
{
subscriberIndicator: "Y", relationshipCode: "18", maintenanceTypeCode: "021",
member: { lastName: "DOE", firstName: "JANE", idQualifier: "34", idCode: "MBR0001" },
healthCoverages: [{ maintenanceTypeCode: "021", insuranceLineCode: "HLT" }],
},
],
};
const ix = build834(spec);
Properties
envelope
readonlyenvelope:Build834EnvelopeSpec
Interchange / group / transaction identity.
header
readonlyheader:Build834HeaderSpec
BGN header + sponsor / payer parties.
members
readonlymembers: readonlyBuild834MemberSpec[]
Loop 2000 member-level detail (≥ 1 required).