Skip to main content
Version: v0.0.2

Function: build271()

build271(spec): X12Interchange

build271 - assemble a 005010X279A1 271 around the supplied spec.

Refused via "./build-errors.js".Eligibility271BuildError:

  • No information sources, a source with no receivers, or a receiver with no subscribers → X12_271_BUILD_INVALID_HIERARCHY.
  • An over-long (>9 char) interchange control number → X12_271_BUILD_INVALID_SPEC.

Parameters

spec

Build271Spec

Returns

X12Interchange

Example

import { build271, X12Decimal } from "@cosyte/x12";
const ix = build271({
envelope: {
senderId: "MEDPAY", receiverId: "PROVIDER",
interchangeDate: "260601", interchangeTime: "1200",
interchangeControlNumber: "000000001",
groupControlNumber: "1", transactionSetControlNumber: "0001",
},
informationSources: [{
entity: { entityIdentifierCode: "PR", entityTypeQualifier: "2", name: "MEDPAY INSURANCE", idQualifier: "PI", idCode: "00123" },
receivers: [{
entity: { entityIdentifierCode: "1P", entityTypeQualifier: "2", name: "ANYTOWN CLINIC", idQualifier: "XX", idCode: "1234567890" },
subscribers: [{
traces: [{ traceTypeCode: "2", referenceId: "ELIG001" }],
name: { entityIdentifierCode: "IL", entityTypeQualifier: "1", lastName: "DOE", firstName: "JANE", idQualifier: "MI", idCode: "MBR0001" },
benefits: [{ eligibilityCode: "1", coverageLevelCode: "IND", serviceTypeCodes: [{ code: "30" }], monetaryAmount: X12Decimal.fromString("1000.00")! }],
}],
}],
}],
});