Product

Developers

Free Tools

All use cases
Integration Pattern

Post-Denial Resolution

After a denial comes back through an ERA (835) or claim status response (277), call RCI to interpret it, get an appeal strategy, and understand root cause.

For: Denial management companies, AI RCM platforms, billing companies

How it works

architecture flow
ERA (835) / Claim Status (277) received
  │
  ├─ Parse CARC and RARC codes from denial
  │
  ├─ Call RCI: POST /v1/agents/denial-resolution
  │   ├─ Interpret CARC/RARC in plain English
  │   ├─ Identify root cause category
  │   ├─ Get payer-specific appeal deadline (L4)
  │   ├─ Generate appeal strategy
  │   └─ List required documentation
  │
  ├─ Appeal strategy returned
  │   ├─ Auto-generate appeal letter
  │   ├─ Attach required documentation
  │   └─ Track appeal deadline
  │
  └─ Resubmit corrected claim or file appeal

Code example

python
import httpx

async def resolve_denial(api_key: str, denial: dict) -> dict:
    async with httpx.AsyncClient(
        base_url="https://api.rci.health",
        headers={"X-API-Key": api_key},
    ) as client:
        # Submit to denial resolution agent
        resp = await client.post("/v1/agents/denial-resolution", json={
            "query": f"Claim denied with CARC {denial['carc']}",
            "carc": denial["carc"],
            "rarc": denial.get("rarc"),
            "ccn": denial.get("facility_ccn"),
            "cpt": denial.get("cpt_code"),
        })
        job = resp.json()

        # Poll for completion
        while job["status"] not in ("completed", "failed"):
            resp = await client.get(f"/v1/agents/jobs/{job['job_id']}")
            job = resp.json()

    return {
        "explanation": job["result"]["explanation"],
        "root_cause": job["result"]["root_cause"],
        "appeal_strategy": job["result"]["appeal_strategy"],
        "appeal_deadline": job["result"]["appeal_deadline"],
        "required_docs": job["result"]["required_documentation"],
        "confidence": job["audit"]["composite_score"],
    }

Common denials RCI resolves

CARC 197

Precertification/authorization absent

Request retroactive auth, then appeal with clinical documentation

CARC 50

Non-covered service

Validate medical necessity against NCD/LCD, appeal with supporting criteria

CARC 16

Missing/incomplete information

Identify missing fields from L2/L3 validation, resubmit with corrections

CARC 29

Time limit for filing expired

Check if exception applies (e.g., retroactive eligibility), file exception request

CARC 182

Procedure inconsistent with POS

Resolve correct POS from L3 care setting, resubmit with corrected code

CARC 4

Procedure inconsistent with modifier

Check L3/L5 modifier requirements, resubmit with correct modifier

Automate denial resolution

Start interpreting denials and generating appeal strategies programmatically.