ClaimJumper’s data model flows from parsed remittance data through triage decisions and prioritization scoring to draft artifacts. Remittance images are extracted into structuredDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/sputhenofficial/claimjumper/llms.txt
Use this file to discover all available pages before exploring further.
Claim objects by the ingest pipeline, each claim’s denied lines are normalized into AdjustmentLine records for triage, and the result is assembled into a PrioritizedLine that carries a deadline, an urgency score, and an optional DraftArtifact. The final TriageResponse returned to the UI holds every QueueItem the biller needs to act on. This page describes the shape and semantics of each type in the order it appears in that pipeline.
RemittanceMeta
RemittanceMeta is extracted from the remittance header by the ingest step. Every Claim in a batch shares the same RemittanceMeta because a single remittance document covers one payer-provider payment event.
Payer name from the remittance header (e.g.
"Meridian Health Plan").Provider name as printed on the remittance (e.g.
"North Valley Medical Group").10-digit National Provider Identifier exactly as printed. No formatting is applied — leading zeros are preserved.
ISO 8601 calendar date (
YYYY-MM-DD) of the remittance notice. This field drives appeal deadline calculation: calculateAppealDeadline() adds 5 presumed-receipt days then 120 redetermination days to arrive at the filing deadline.ISO 8601 calendar date on which payment was issued.
EFT trace number from the payment header (e.g.
"MHP-260614-784391").Every CARC and RARC definition printed in the remittance footer’s “Adjustment and Remark Code Legend.” Must contain at least one entry. These definitions are the canonical source for draft artifact citations — they are never inferred from model knowledge.
CodeLegendEntry
Each entry in code_legend captures a single code definition exactly as it appears on the remittance page.
Whether this is a Claim Adjustment Reason Code (
CARC) or a Remittance Advice Remark Code (RARC).The code identifier. Preserves leading zeros and alphanumeric codes exactly as printed (e.g.
"16", "M51", "N115"). Never normalized or zero-stripped.The verbatim definition printed in the legend. Never inferred from model knowledge — if a code appears in the legend, this field contains its exact printed text.Example entries from
eob-001:ClaimMeta
ClaimMeta captures the claim-level identifiers extracted from each individual claim block within the remittance.
Payer-assigned claim identifier (e.g.
"MHP-CLA-482901").Patient name as printed on the remittance.
ISO 8601 date of service at the claim level. Individual service lines carry their own
service_date which may differ when a claim spans multiple dates.ISO 8601 date the claim was received by the payer. Used together with
service_date when constructing timely-filing appeal evidence.ServiceLine
ServiceLine represents one line of a claim as adjudicated on the remittance. Every financial amount is nonnegative. The rarc and notes fields are explicitly nullable — they are null when absent on the remittance, never omitted or defaulted to an empty string.
Positive integer identifying the line within the claim (1-indexed as printed).
ISO 8601 date of service for this specific line.
CPT or HCPCS procedure code (e.g.
"99285", "71046").Human-readable description of the procedure as printed on the remittance line.
Amount billed by the provider. Nonnegative.
Amount allowed by the payer. Nonnegative. May be
0 for fully denied lines.Amount actually paid to the provider. Nonnegative.
Amount assigned to the patient (coinsurance, copay, deductible). Nonnegative.
Standard X12 group code classifying who is responsible for the adjustment (e.g.
CO, PR, OA, PI, CR). See the Adjustment Codes reference for routing implications.Claim Adjustment Reason Code. Read together with
group_code and rarc, never in isolation.Remittance Advice Remark Code.
null when no RARC appears on this line — never coerced to an empty string. The triage model treats a null RARC differently from a present one.A claim-level remark or note copied to all service lines of that claim during ingest.
null when no remark is present. Example: "Clearinghouse acknowledgment on file showing original submission 2026-03-02."Claim
Claim is the independently processable unit produced by ingest(). Each Claim carries the full remittance context alongside a single claim block and its service lines, so downstream pipeline steps never need to re-join across a batch.
The remittance header shared across all claims in the batch.
Identifiers and dates for this specific claim.
One or more service lines adjudicated under this claim. The schema enforces a minimum of one line.
AdjustmentLine
AdjustmentLine is the normalized, flattened view of a service line used by the triage model and the prioritization step. It is produced by adaptForPrioritization(), which promotes notice_date from RemittanceMeta and copies the denial-relevant fields from ServiceLine. The rarc and notes fields are optional rather than nullable: they are omitted entirely when absent, which allows the Zod schema to produce clean objects without null sentinel values for the model.
X12 group code from the service line.
Claim Adjustment Reason Code.
Remittance Advice Remark Code. Omitted (not present on the object) when the service line had no RARC.
Nonnegative billed amount, carried forward for priority score calculation.
Procedure description from the service line.
ISO 8601 date promoted from
RemittanceMeta.notice_date. This is the anchor date for calculateAppealDeadline().Claim-level remark. Omitted when absent — not set to
null.DenialTriage
DenialTriage is the triage model’s output (TriageModelOutput) extended with an overrides array populated by enforceInvariants() after the model responds. The overrides field records which safety rules fired and what lane changes were made, providing a human-readable audit trail.
The resolved resolution lane after invariant enforcement. One of:
| Value | Meaning |
|---|---|
appeal | File a formal appeal with supporting documentation |
corrected_claim | Resubmit with corrected billing information |
patient_bill | Balance due from patient; route to patient statement |
write_off | Provider absorbs the adjustment; no further action |
human_review | Escalated — biller must decide before any action is taken |
Concise label for the denial reason (e.g.
"Missing or invalid procedure code information.").Explanation citing the specific Group Code, CARC, and RARC combination that drove the lane decision. Only codes and facts present in the parsed input are cited — the model never invents policy numbers, LCD identifiers, or clinical facts.
Ordered list of documents or data the biller must attach for the chosen lane to succeed. Empty array is valid when no additional evidence is required.
Model confidence in the lane assignment, expressed as a value between
0 and 1 inclusive. Values below 0.6 trigger an automatic override to human_review.Estimated probability that pursuing the assigned lane will result in payment recovery, between
0 and 1. Used directly in the priority score formula: billed_amount × recovery_probability × urgency.Human-readable descriptions of any invariant rules that fired and modified the model’s raw output. Empty array (
[]) when no invariants changed the lane. Example: ["CO invariant: lane changed from patient_bill to human_review"].PrioritizedLine
PrioritizedLine is the output of the prioritize() step. The work queue is sorted first by deadline ascending, then by priority_score descending, so the most urgent high-value lines surface at the top.
The normalized adjustment line being prioritized.
The triage decision (including any invariant overrides) for this line.
ISO 8601 date computed by
calculateAppealDeadline(line.notice_date): notice date + 5 presumed-receipt days + 120 redetermination days.A
0–1 score computed as clamp((125 - daysRemaining) / 125, 0, 1), where daysRemaining is calendar days from today to deadline. A line due tomorrow has urgency near 1; a freshly opened line with 125+ days remaining has urgency near or at 0.Composite score used for queue ordering within the same deadline bucket:A $2,840 line with
recovery_probability = 0.35 and urgency = 0.80 scores 794.4. Higher is worked first.DraftArtifact
DraftArtifact holds the actionable output produced by the draft step for lanes that require written follow-up. The artifact is scoped to a single service line.
The lane this artifact was drafted for — always matches the
DenialTriage.lane of the parent QueueItem.Display title. Conventionally one of:
"Appeal Draft"— forappeallanes"Corrected Claim Worklist"— forcorrected_claimlanes"Human Review Required"— forhuman_reviewlanes
The full text of the drafted artifact — appeal letter body, corrected-claim checklist, or human-review summary. All cited values in the content are grounded in the
citations array.Structured citations linking each claim in the artifact body back to its source field. Each
DraftCitation carries a source ("parse" for extracted claim data or "legend" for the code definitions printed on the remittance), a field_path identifying the source location, and a value string.QueueItem and TriageResponse
These are the top-level types returned by ClaimJumper’s triage API endpoint.
QueueItem binds the full parsed claim, the specific service line being worked, its prioritization record, and (when applicable) the drafted artifact. Keeping the full Claim on the item ensures the draft step always has access to rich context without needing to re-join.
TriageResponse is the complete API response body: the ordered work queue plus the shared remittance metadata.
artifact is intentionally optional. The write_off and patient_bill lanes do not generate a drafted artifact — the triage decision itself is the actionable output.