Getting started
Get structured data from bank statements, invoices, and tax forms in minutes. New integrations should use the Agent API (/agent/*): PAT auth, direct-to-S3 upload, clean JSON output.
Quick start (5 steps)
- Generate a PAT in Account → API. Tokens look like
dcp_…and are shown once. - Subscribe to job-completion events (one-time setup) –
POST /api/v1/agent/webhookswith{ url, events: ["bank_statement.extraction.completed"] }. Store the signing secret returned once; you'll use it to verify each event. Skip this in dev and use polling (step 5), but for production, webhooks are how you avoid hammering/jobs/<id>. - Upload – get a presigned URL via
POST /api/v1/agent/documents/upload-urlwith{ filename, mimetype }, thenPUTthe file bytes directly to the returned URL. Keeps large uploads off our servers. - Create the job –
POST /api/v1/agent/jobswith{ documents: [<docId>] }(bank-mode + v2 are defaults). - Receive the result – your webhook fires when the job hits
Succeeded; fetchGET /api/v1/agent/jobs/<id>/datato get the structured payload (or/transactionsfor the flat per-row view). Dev only: if you skipped step 2, pollGET /api/v1/agent/jobs/<id>untilstatus === "Succeeded".
First request (cURL)
bash
curl -X POST "https://www.docuclipper.com/api/v1/agent/documents/upload-url" \
-H "Authorization: Bearer dcp_..." \
-H "Content-Type: application/json" \
-d '{"filename":"statement.pdf","mimetype":"application/pdf"}'Response: { url: "<presigned PUT URL>", document: { id, s3Key, s3Path } }. PUT the file to url with Content-Type: application/pdf, then use document.id when you POST /agent/jobs.
Already on the legacy /protected/* API?
It's fully supported, keep using POST /protected/document (multipart), POST /protected/job, and POST /protected/job/<id>/export. See Bank Statement OCR API for the legacy flow. The Agent API is the recommended path for new integrations.
Document type APIs
- Bank Statement API — 9,000+ banks, reconciled transactions, JSON or QBO/OFX/CSV.
- Invoice OCR API — vendor, line items, totals, native QuickBooks/Xero/NetSuite export.
- Receipt OCR API — merchant, total, tax, tip, line items.
- Check OCR API — MICR (mod-10 validated), payee, courtesy + legal amount.
- Tax Form OCR API — W-2, 1099, K-1.
Format conversion APIs
- PDF to QBO API — convert PDF statements to QuickBooks .QBO files.
- PDF to OFX API — Quicken, GnuCash, MoneyMoney, Banktivity.
- PDF to CSV API — clean CSV or XLSX rows for any document type.
Next steps
- OCR API hub — overview of every document type and export format.
- Authentication – PAT setup, where they work, and verifying your token.
- For AI agents – end-to-end cURL example, MCP tool dispatch, OpenAPI spec.
- MCP server – connect DocuClipper to Claude Desktop, Cursor, and Continue. Sub-pages for QuickBooks, Xero, bank statements, OCR.
- Webhooks – avoid polling.