Any document in. Clean JSON out.

Glint reads invoices, receipts, contracts and forms, then returns typed fields from one API call. Dates in ISO 8601, money as numbers, and a warning when the math does not add up.

Get an API key

What happens to a page

  1. 01Read

    Text layer or OCR. Every word gets a position on the page.

  2. 02Split

    The page is cut into tokens: words, numbers, dates, amounts.

  3. 03Map

    Tokens land on fields in your schema. Labels and noise are dropped.

  4. 04Validate

    Line items must sum to the subtotal. Dates come back as ISO 8601.

Text layer or OCR. Every word gets a position on the page.

Northfield Print Co.

418 Mill St, Portland OR

Invoice

No. INV-2048

IssuedMar 14, 2026
DueApr 13, 2026
Bill toHarbor & Vale Ltd
DescriptionQtyUnitAmount
Brand guidelines1$1,850.00$1,850.00
Business cards500$0.42$210.00
Letterpress setup2$95.00$190.00
Subtotal$2,250.00
Tax 8%$180.00
Total due$2,430.00

Payment by bank transfer within 30 days. All amounts in USD.

POST /v1/extractwaiting200 OK
{  "type": "invoice",  "number": "INV-2048",  "issued": "2026-03-14",  "due": "2026-04-13",  "currency": "USD",  "vendor": {    "name": "Northfield Print Co.",    "address": "418 Mill St, Portland OR"  },  "bill_to": "Harbor & Vale Ltd",  "line_items": [    { "desc": "Brand guidelines",      "qty": 1, "unit": 1850.00, "amount": 1850.00 },    { "desc": "Business cards",      "qty": 500, "unit": 0.42, "amount": 210.00 },    { "desc": "Letterpress setup",      "qty": 2, "unit": 95.00, "amount": 190.00 }  ],  "subtotal": 2250.00,  "tax": 180.00,  "total": 2430.00}
sum(line_items) equals subtotal
subtotal plus tax equals total
dates read as ISO 8601

Edit the invoice.Watch the JSON.

Change any field. Write a date as 14/03/2026, a price in euros, a quantity as a word. The parser on this page runs in your browser so you can poke at the idea. The API does the same job on real files.

Load a sample:
From
Number
Issued
Due
Bill to
Subtotal
Tax
Total
Notes
response.jsonHover or tap a field

            
          

One request.Typed JSON back.

Post a file with the schema you want. The response has the shape you just watched: named fields, numbers you can add up, and a warnings array instead of silent guesses.

Auth
A bearer key in the Authorization header.
Schemas
invoice, receipt, bank_statement, or your own JSON Schema.
Batches
Send a folder of files and get a webhook when every one is done.
extract.sh
curl https://api.glint.example/v1/extract \
  -H "Authorization: Bearer $GLINT_API_KEY" \
  -F "file=@invoice.pdf" \
  -F "schema=invoice"

The endpoint shown is a placeholder for this concept.

What it reads.

Send the file you already have. Glint picks the reader for it, and every format comes back as the same JSON.

  • PDF with a text layerRead directly, no OCR pass.
  • Scanned PDFOCR first, then extraction.
  • JPG, PNG, HEIC, WebPPhone photos are straightened before reading.
  • TIFF, multi-pageEvery page in one response.
  • Word, DOCXTables keep their rows and columns.
  • XLSX and CSVEach row can become a record.
  • Email, EMLAttachments come back as separate documents.
  • HTMLOrder confirmations and web receipts.

Priced per page.Not per seat.

You pay for pages read. A three-page PDF counts as three. Every plan gets every format, custom schemas and webhooks.

Glint pricing per 1,000 pages
PlanPer 1,000 pagesWhat it covers
Sandbox$0The first 500 pages every month.No card. Same API, same output.
Build$12Pages 501 to 250,000 in a month.Pay as you go, billed monthly.
Scale$8Every page past 250,000 in a month.Applied automatically, no contract.

Prices are part of this concept and would be set by the product team before launch.

Your pages.Your hourly rate.

Use your own numbers. API cost follows the pricing above. Manual cost is the time someone spends keying the same pages in.

pages
$per hour
minutes

Time one page yourself for a better number.

Glint API per month$0
Manual entry per month$0
Difference per month$0

Manual cost is pages times minutes per page, divided by 60, times your hourly rate. The 4-minute default is a sample; check it against your own team's timing.

Get an API key.

500 pages a month are free, every month. No card needed.