JotJetJSON API

THE INVOICE → JSON WORKSPACE

Invoices in.
JSON out.
Work moves.

From a supplier’s PDF to your next API call. JotJet extracts invoice details into structured JSON you can review, download, and build with.

PDF, PNG or JPEG in the playground.
No code needed to try it. API key required.

SEE THE TRANSFORMATIONIllustrative sample
Northline StudioINVOICE
INV-00422026-01-15
Website designUSD 250.00
Invoice totalUSD 250.00
Amount paidUSD 0.00
READ · EXTRACT · VALIDATE { JSON }
invoice.json
{
  "vendor_name": "Northline Studio",
  "invoice_number": "INV-0042",
  "currency": "USD",
  "grand_total": "250.00",
  "amount_paid": "0.00",
  "total_due": "250.00"
}

Printed invoice totals become decimal strings. No floating-point surprises.

FROM YOUR DOCUMENTPDF / PNG / JPEG{ structured JSON }TO YOUR WORKFLOW

ONE PRODUCT. TWO WAYS IN.

Try it by hand.
Then put it to work.

Explore an invoice in your browser, or make extraction part of the software you already use.

FOR OPERATIONS & FINANCE

The file goes here.
The data comes back.

Choose a PDF or image. Follow processing, inspect the JSON, and download the result. Review flagged values before they enter your books.

Open the playground ↗
FOR DEVELOPERS

Your invoice pipeline,
without the glue code.

Create a job, upload, poll, and fetch. Get scoped access tokens, explicit deadlines, and a complete Node.js example.

Explore the API ↗

MORE THAN A WALL OF TEXT

Data with a place
for every detail.

Vendors, invoice numbers, dates, line items and taxes — in a consistent contract. Printed totals and outstanding balances stay separate.

Inspect the JSON Schema ↗
vendor_nameWho sent the invoice
line_items[]Descriptions, quantities & prices
grand_totalThe printed invoice total
total_dueWhat remains to be paid
nullUnknown stays unknown

THE REQUEST LIFECYCLE

A clear path from upload to output.

See the code →
  1. Create

    Start a job with your API key and an idempotency key.

    POST /v1/jobs
  2. Upload

    Send your PDF using its short-lived upload capability.

    PUT /v1/uploads/{id}
  3. Review

    Poll until completed or needs_review. Inspect flagged values.

    GET /v1/jobs/{id}
  4. Keep & clear

    Download the JSON, request deletion, and track purge status.

    GET /v1/results/{id}

BEFORE YOUR FIRST REQUEST

A few useful details.

What can I upload?

One invoice per PDF, up to 10 MiB and 20 pages. The playground also converts PNG/JPEG images to a single-page PDF in browser memory. Your plan may apply lower limits.

What does JSON actually give me?

Named fields your software can read directly: vendor, invoice number, dates, line items, currency and totals. Use the JSON in your own accounting integrations, databases or automations.

How do page credits work?

Pages are reserved after file validation. Completed and needs_review results settle the reserved pages. Failures release unsettled reservations. Track available, reserved and used pages in your console.

How long are my files available?

Access ends 15 minutes before the job’s original 24-hour expiry. Download results before that cutoff. You can request earlier deletion and check the console for verified purge status.

Are the results always ready to use?

No. Review issues and the processing version returned by the API. Ambiguous or inconsistent values require review; mock mode returns synthetic data and does not extract your invoice.

YOUR NEXT INVOICE, STRUCTURED.

Less retyping.
More building.

Meet your new workflow ↗

Try a request in the JotJet playground.

Welcome to JotJet.

Sign in using an API key issued by your account administrator. Email registration and password login are not configured.

Your key stays in this tab’s memory. Reloading or signing out clears it. Use an account key with usage and key-management scopes for full access.