Healthcare

Extract explanation of benefits to structured JSON

Explanation of Benefits documents detail how a claim was processed, what was billed, what the plan paid, and what the patient owes. Every payer formats EOBs differently. Sensible normalizes EOB data into consistent JSON for claims reconciliation, billing, and revenue cycle management.

claims reconciliation | patient billing | denials management

Validated JSON

Schema-enforced output; every field matches your contract

Source coordinates

Every value links back to page + bounding box for audit

Per-document pricing

Predictable cost. No token-volatility surprises

Trusted by teams turning documents into production data

Why EOBs break standard extraction tools

Hundreds of payer formats and dense, claim-level detail make EOBs a normalization problem. We map each payer to one schema and decode adjustment reason codes, even when a single document covers many claims.

01

Payer Format Diversity

UnitedHealthcare, Anthem, Aetna, Cigna, hundreds of regional payers: each produces EOBs with unique layouts, code tables, and adjustment logic. All normalized into a single claims schema for your billing system.

02

Adjustment Reason Code Parsing

CARC and RARC codes explain payment variances: why the paid amount differs from the billed amount. Each adjustment is extracted with its reason code, amount, and the service line it applies to, structured for automated denial management.

03

Multi-Claim Documents

Multiple claims, patients, or service dates on a single EOB. Each claim is processed separately and returned as a distinct item, preserving the per-claim detail your revenue cycle management requires.

Managed services

Don't want to build it? We'll write your configs from your samples.

Solutions engineers handle plan, build, deploy, and adjust on your behalf. You see clean JSON in your API response. Same engine as self-serve, just with the configuration work outsourced.

What's included

01Plan.Engineers review your samples and pick the right method

02Build.SenseML configs written from your samples

03Deploy.Same engine as self-serve, ready for production

04Adjust.We update configs when formats shift or new edge cases appear

05Integrate.Help with custom integration into your downstream systems

Fields we extract

Every EOB is different, so we build the config around your exact schema rather than a fixed list. These are the fields revenue-cycle teams request most; we map whatever else your billing system needs.

01

Claim header

Patient name, member ID, provider name, claim number, service date(s), payer name, check/EFT number, payment date

02

Line-level detail

CPT/HCPCS code, description, billed amount, allowed amount, plan paid, patient responsibility (copay/coinsurance/deductible), adjustment amount, CARC/RARC codes

03

Payment summary

Total billed, total allowed, total paid, total patient responsibility, check amount, provider-level adjustments

config.json

SenseML

{ /* SenseML: Explanation of Benefits extraction */
"fields": [
{
"method": {
"id": "queryGroup",
"queries": [
{ "id": "patient_name", "description": "patient name, member name, subscriber name" },
{ "id": "claim_number", "description": "claim number, claim #, claim ID" },
{ "id": "amount_paid", "description": "amount paid, plan pays, insurer payment, paid amount" },
{ "id": "patient_responsibility", "description": "patient responsibility, you owe, amount you owe, your cost" }
// + more fields, mapped to your schema
]
}
}
]
}

Supported payer formats

Sensible processes EOBs from any commercial or government payer. Pre-built templates in the healthcare library cover major payers. New formats can be configured using SenseML's hybrid extraction approach.

Commercial payers

UnitedHealthcare, Anthem/Elevance, Aetna/CVS Health, Cigna, Humana, BCBS (all affiliates), Kaiser, regional plans

Government payers

Medicare (MAC-specific formats), Medicaid (state-specific), TRICARE, VA, workers compensation, auto/no-fault

Common Questions

Answers about payer format support, adjustment code parsing, and multi-claim handling.

Does Sensible extract remittance advice details?

Yes. Sensible captures check/EFT number, payment date, provider NPI, claim number, and payment totals. For 835 electronic remittances, direct file parsing is more efficient than PDF extraction.

Can Sensible calculate patient responsibility from EOBs?

Sensible extracts copay, coinsurance, deductible applied, and total patient responsibility per service line, along with remark codes and adjustment reason codes. The structured output makes it straightforward to compute totals programmatically, and because the fields are configuration, you decide what gets pulled and how it's shaped.

Does Sensible extract CPT and ICD codes from EOBs?

Yes. Sensible extracts CPT/HCPCS procedure codes, ICD-10 diagnosis codes, billed amounts, allowed amounts, adjustments, and payment amounts per service line. These are defaults defined in configuration, so you can add modifiers, place-of-service codes, or any other field a given payer reports.

Which insurance payers' EOBs does Sensible support?

Any payer. Sensible processes EOBs regardless of who issued them, and the library includes pre-built configurations for several major payers including Cigna, Humana, Medicaid, and Tricare. When a payer's layout hasn't been built yet, its config gets set up to match, so you're never limited to a fixed roster.

Do you support webhooks?

Yes. Sensible sends extraction results to your webhook endpoint when processing completes. You can also poll the API for status.

Does Sensible support human review?

Yes. Sensible flags extractions with low confidence for human review. You can configure review thresholds and workflows.

What security certifications does Sensible have?

Sensible is SOC 2 Type II certified and HIPAA compliant. Data is encrypted in transit and at rest.

How long is document data retained?

Document data is stored indefinitely by default. Custom retention policies are available and can be configured for same-day deletion if needed.

Is there a free trial?

Yes. Sensible offers a 14-day free trial on the Growth plan. No credit card required to start.

How is pricing structured?

Sensible uses per-document pricing for predictable costs. No token-based billing or usage surprises. Volume discounts are available for higher throughput.

How do I integrate with Sensible?

Sensible provides REST APIs and SDKs for Python and Node.js. Most integrations take a few hours. Webhooks, Zapier, and direct API calls are all supported.

What file formats does Sensible support?

Sensible processes PDFs (native or scanned), Microsoft Word (DOC, DOCX), spreadsheets (XLSX, XLS, CSV), single-page images (JPEG, PNG), multi-page images (TIFF), and email bodies with attachments.

How accurate is the extraction?

Accuracy depends on document quality and configuration. Most production deployments achieve 95%+ accuracy with proper validation rules and confidence signals.

How fast is document processing?

Processing speed depends on document size, page count, OCR requirements, and which extraction methods are used. Simple single-page documents process in seconds. Larger or more complex documents that use LLM-based extraction take longer.

Start free

Turn your next EOB into JSON.

Free 14-day trial. No credit card required. Start extracting in minutes.