Real Estate

Extract mortgage portfolio data to structured JSON

Mortgage portfolio packages bundle hundreds or thousands of loan-level records into PDFs, Excel exports, and servicer reports. Acquirers, securitization teams, and servicing transfer operations need clean loan-level JSON for diligence and pricing. Sensible converts any portfolio package into normalized JSON ready for analytics and underwriting models.

portfolio acquisition | securitization | servicing transfer

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

What makes mortgage portfolios hard to diligence

Diligence teams usually write a one-off parser per deal: servicer exports differ, loan tapes nest inside each other, and field names never line up. We standardize the whole portfolio against your data model instead.

01

Servicer Format Variation

Every servicer exports portfolios differently: different column orders, different field names, different reporting periods. Each format needs its own configuration, and SenseML makes each one repeatable across deals.

02

Nested Loan Tapes

A single portfolio package can contain loan-level tape, payment history, escrow detail, and modification history — each as a separate section. Sensible stitches them into a single loan-level record per borrower.

03

Field Normalization

UPB, original balance, original LTV, current LTV, FICO, DTI — each label varies by servicer. Sensible normalizes to a single canonical schema so your pricing models see consistent data across every deal.

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 mortgage portfolio is different, so we build the config around your exact schema rather than a fixed list. These are the fields diligence teams request most; we map whatever else your portfolio-analytics or pricing pipeline needs.

01

Portfolio summary

Portfolio name, as-of date, loan count, UPB total, weighted average rate, weighted average FICO, weighted average LTV

02

Loan-level detail

Loan number, original balance, current UPB, note rate, original term, remaining term, FICO, DTI, LTV, property type, occupancy

03

Performance and history

Current status, delinquency history (24mo), modification flag, last paid date, escrow balance, prepayment penalty

config.json

SenseML

{ /* SenseML: mortgage portfolio extraction */
"fields": [
{
"method": {
"id": "queryGroup",
"queries": [
{ "id": "loan_number", "description": "loan number, loan ID" },
{ "id": "current_upb", "description": "current UPB, unpaid balance" },
{ "id": "note_rate", "description": "note rate, interest rate" },
{ "id": "fico_score", "description": "FICO, credit score" }
// + more fields, mapped to your schema
]
}
}
]
}

Supported servicers

Sensible processes portfolio exports from any servicer, with pre-built configurations for major systems.

Major servicers

Mr. Cooper, Rocket, Freedom Mortgage, NewRez, ServiceMac, Cenlar — pre-built configurations for each servicer's export format.

Custom and regional servicers

Bank-owned portfolios, credit union exports, and one-off whole-loan tapes. SenseML configures any new servicer format in hours.

Common questions

Answers about servicer variation, field normalization, and portfolio aggregates.

Does Sensible calculate portfolio-level aggregates?

Sensible extracts portfolio totals when they appear on the package. Loan count, UPB total, weighted average rate, weighted average FICO, and weighted average LTV can also be computed from the structured loan-level data.

Can Sensible extract from multi-section portfolio packages?

Yes. Loan-level tape, payment history, escrow detail, and modification history get stitched into a single loan-level record per borrower. Cross-section references stay intact in the output.

How does Sensible normalize loan-level fields across servicers?

UPB, original balance, original and current LTV, FICO, and DTI map to one canonical schema so pricing models see consistent fields no matter which servicer exported the tape. The schema is yours to extend; additional loan-level fields get added in SenseML when a servicer carries data you want to keep.

Which servicers' portfolio formats does Sensible support?

Sensible processes portfolio exports from any servicer. Pre-built configurations cover Mr. Cooper, Rocket, Freedom Mortgage, NewRez, ServiceMac, and Cenlar. Bank-owned and one-off whole-loan tapes can be configured in SenseML.

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 mortgage portfolio into JSON.

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