Healthcare
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.
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






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
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
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
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
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
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
]
}
}
]
}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.
UnitedHealthcare, Anthem/Elevance, Aetna/CVS Health, Cigna, Humana, BCBS (all affiliates), Kaiser, regional plans
Medicare (MAC-specific formats), Medicaid (state-specific), TRICARE, VA, workers compensation, auto/no-fault
Answers about payer format support, adjustment code parsing, and multi-claim handling.
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.
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.
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.
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.
Yes. Sensible sends extraction results to your webhook endpoint when processing completes. You can also poll the API for status.
Yes. Sensible flags extractions with low confidence for human review. You can configure review thresholds and workflows.
Sensible is SOC 2 Type II certified and HIPAA compliant. Data is encrypted in transit and at rest.
Document data is stored indefinitely by default. Custom retention policies are available and can be configured for same-day deletion if needed.
Yes. Sensible offers a 14-day free trial on the Growth plan. No credit card required to start.
Sensible uses per-document pricing for predictable costs. No token-based billing or usage surprises. Volume discounts are available for higher throughput.
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.
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.
Accuracy depends on document quality and configuration. Most production deployments achieve 95%+ accuracy with proper validation rules and confidence signals.
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
Free 14-day trial. No credit card required. Start extracting in minutes.