*** September 2026 Major Release ***Read and watch
Document type

Extracting data from bankruptcy discharges

US bankruptcy courts issue a discharge order near the end of a case, generated by each district's electronic filing system, and some districts combine it with other orders. Mortgage lenders request one from every applicant whose credit report shows a bankruptcy, as a PDF from the court docket or the borrower's upload.

Underwriting needs the chapter, the case number and the date the discharge was entered. Agency guidelines set a waiting period that runs from that date, and the loan origination system checks it before the application can move to approval.

Page 1 of a sample Bankruptcy Discharge, with extracted values outlined
4,641Markdown characters
26parse blocks
34fields extracted
The problem

What makes bankruptcy discharges hard

Several orders under one heading

Some districts stack the discharge of the debtor, the discharge of the trustee and the closing of the case into one order.

One date printed three ways

The electronic filing header prints the entry date with a two-digit year, and the signature block spells the month out in words.

Exceptions on the back page

The second page explains the discharge in prose, with a lettered list of the debts it leaves in place, such as most taxes.

How it works

Parse, extract, verify

1

Parse

Parse turns the document into reading-order Markdown and a hierarchy of blocks (text, tables, figures), and grounds each block to its exact location on the page.

2

Extract

You define the fields in a JSON schema, and Extract returns their values in a consistent, structured format, each linked back to where it appears in the Markdown.

3

Verify

Each value links back to where it appears, down to the character range in the Markdown, and the page and bounding box in the source document, so every result can be verified.

Worked example

One bankruptcy discharge, end to end

About this document: A Chapter 7 order from the US Bankruptcy Court for the District of South Carolina, issued through the court's electronic filing system. One order discharges the debtor, discharges the trustee and closes the case. Two portrait pages: the order, then the standard explanation of the discharge. Page 1 is featured. The debtor's details and the judge's signature were replaced with stand-ins.

Processing objective: The objective is to confirm what the court ordered and when. The court, the chapter and the statute establish the type of discharge, and the order title states what was granted. The timestamp in the filing header marks when the order reached the docket, and each value grounds to its own line.

Demonstration fields: Court, Chapter, Order, Statute cited, Entered (ECF timestamp)

The document

2 of 2 pages
  • Page 1 of the sample Bankruptcy DischargePage 1shown below
  • Page 2 of the sample Bankruptcy DischargePage 2

Where each value came from

Page 1 of the sample Bankruptcy Discharge, with every featured field outlined
Courtcourt
United States Bankruptcy Court – District of South Carolina
The region of the sample Bankruptcy Discharge containing Court, with the extracted value outlined
extraction_metadata["court"]
{
  "value": "United States Bankruptcy Court – District of South Carolina",
  "page": 1,
  "range": {
    "end": 222,
    "start": 163
  },
  "box": {
    "xmin": 0.27928,
    "ymin": 0.07599,
    "xmax": 0.72196,
    "ymax": 0.08963
  }
}
Chapterchapter
7
The region of the sample Bankruptcy Discharge containing Chapter, with the extracted value outlined
extraction_metadata["chapter"]
{
  "value": 7,
  "page": 1,
  "range": {
    "end": 357,
    "start": 347
  },
  "box": {
    "xmin": 0.50172,
    "ymin": 0.1501,
    "xmax": 0.58086,
    "ymax": 0.16458
  }
}
Orderorder_titles[0]
DISCHARGE OF DEBTOR
The region of the sample Bankruptcy Discharge containing Order, with the extracted value outlined
extraction_metadata["order_titles[0]"]
{
  "value": "DISCHARGE OF DEBTOR",
  "page": 1,
  "range": {
    "end": 710,
    "start": 691
  },
  "box": {
    "xmin": 0.39881,
    "ymin": 0.30864,
    "xmax": 0.5904,
    "ymax": 0.32002
  }
}
Statute citeddischarge_statute
section 727 of title 11, United States Code
The region of the sample Bankruptcy Discharge containing Statute cited, with the extracted value outlined
extraction_metadata["discharge_statute"]
{
  "value": "section 727 of title 11, United States Code",
  "page": 1,
  "range": {
    "end": 1026,
    "start": 915
  },
  "box": {
    "xmin": 0.05937,
    "ymin": 0.41237,
    "xmax": 0.82843,
    "ymax": 0.42947
  }
}
Entered (ECF timestamp)ecf_entered_timestamp
11/30/09 02:00:37
The region of the sample Bankruptcy Discharge containing Entered (ECF timestamp), with the extracted value outlined
extraction_metadata["ecf_entered_timestamp"]
{
  "value": "11/30/09 02:00:37",
  "page": 1,
  "range": {
    "end": 69,
    "start": 19
  },
  "box": {
    "xmin": 0.3015,
    "ymin": 0.01395,
    "xmax": 0.77118,
    "ymax": 0.03113
  }
}

How to try it yourself

Everything on this page is reproducible. The sample, its schema, and the Parse and Extract API outputs are published. You can repeat the same two calls from whichever surface you already build on.

  • Claude Skilldescribe the job; the agent writes it
  • CLIno code at all
  • MCPexpose ADE docs as an agent tool
  • REST APIany language
  • Pythonlandingai-ade
  • TypeScriptlandingai-ade
Why LandingAI?

Documents into data

Accurate

The best accuracy on the difficult documents other tools get wrong, such as messy scans, complicated tables, checkboxes and handwriting.

Auditable

Every answer cites its sources. Values come back with an audit trail (page, bounding box, character range) so a human can review them.

Agentic

Applies multi-step reasoning, and plans before it acts. Handles documents it has never seen before and adapts to variations.

API-first

Composable APIs that drop into any tech stack and can be called from anywhere. Easy to build on and embed in your pipelines and products.

Affordable

Cost-competitive rates with complete price transparency. Spend controls before you run, and every job reports its exact cost.

Enterprise-grade

Built for production and scale from day one. Fully observable and monitored, running securely in our cloud or yours.

Built for high-volume, high-throughput production

  • Zero data retention
  • Priority rate limits
  • Enhanced support
  • VPC and on-prem deployment

Available on Team and Enterprise plans.

Compare plans
Capabilities

Bankruptcy Discharge processing highlights

Court and district
Bankruptcy chapter
Case and docket numbers
Discharge statute cited
Entered and filed dates
Electronic filing timestamp
Stacked order titles
Other names used
Trustee discharge and case closing
Debts not discharged list
Signature detection
Dates normalized to ISO
FAQs

Questions, answered

Yes. Describe the chapter as a field in your schema and it comes back as a number, grounded to the line that states it. The court and case number come back the same way, each from its own line.

Yes. Describe the date fields in your schema, and a date written with a two-digit year or with the month in words comes back in ISO form. Grounding points at the date as the order printed it.

Yes. Define them as an array in your schema. Each lettered item in the explanation comes back as its own entry, for as many items as the page lists, grounded to the line that prints it.

Yes. Parsing labels a signature where it appears on the page, so a field asking whether the order is signed comes back true or false. It is grounded to the signature block.

Every extracted value carries the character range it was quoted from in the parsed Markdown. The Ground API maps that range to a page and a bounding box, so a reviewer sees each value on the line that printed it.

Start extracting bankruptcy discharge data

Reliable, structured outputs with full traceability in minutes