Turn a PDF into a CRM record
Extract fields from a supplied PDF, review them, and independently confirm exactly one correct contact after approval and replay.
- Human decision point
- Approve the proposed record before writing. Missing required fields go to review.
- What counts as passing
- Before and after destination reads, expected field comparison, replay count, and parser/destination versions.
- Listings
- 6 published listings
- Page data updated
Results on record
Directory runs
Environment: Local synthetic born-digital PDF and in-memory SQLite table. No vendor account. Python 3.13.3, pypdf 6.14.2, SQLite 3.49.1.
| Listing | Outcome | Cases | Verified completions | Metered spend | Cost per completion | Observed | Receipt |
|---|---|---|---|---|---|---|---|
| Local pypdf and SQLite reference fixtureRun by AgentsByTask | Task passedNo row before approval; one approved contact; replay left one row; a PDF without an email went to review and left the table unchanged. | 4 | 4 | $0.00 | $0.00metered external spend ÷ 4 verified completions, this fixture only | Evidence record |
Author-run local reference fixture. One synthetic born-digital PDF and an in-memory SQLite table. Not a vendor task pass.
Listings and fit
Extraction, review, the destination write and verification are separate steps. Most listings cover one of them. A run passes only when a read of the destination confirms the expected record.
| Listing | Documented for this task | Unknowns | Evidence | Published price | Sources |
|---|---|---|---|---|---|
| Reference workflow (author-run fixture) | |||||
| Local pypdf and SQLite reference fixtureReference workflow (author-run fixture) · AgentsByTask | Author-run reference: extraction, approval gate, upsert, replay and missing-input routing checked on one synthetic born-digital PDF. | Scanned PDFs, malformed email, ambiguous duplicates, an unavailable destination and every live CRM are outside the run. | Task passed | $0 metered external charges on this run USD/local fixture checked Local compute and operator time excluded. |
checked |
| Workflow builder and APIs | |||||
| n8n with HubSpotWorkflow builder and API · n8n and HubSpot | End-to-end candidate. n8n extracts PDF content and has a HubSpot contact action. HubSpot documents batch upsert by email or a custom unique property. | The API documents no partial upsert by email. Not run here; evaluate with a dedicated HubSpot test account. | Publisher documented | n8n Starter lists €20/month billed yearly for 2,500 monthly executions EUR/month Price source · checked CRM, OCR, and hosting may be separate. |
|
| Power Automate with AI BuilderWorkflow builder and API · Microsoft | Process Documents makes extracted fields available to a flow. | Evaluate field mapping and the destination write separately. No comparable cost per contact established. | Publisher documented | Plan and page credit dependent licensing and credits Price source · checked No comparable cost per completed contact established. |
checked |
| Command-line tools | |||||
| Docling CLICommand-line tool · Docling | Extraction component: converts a local PDF to structured outputs such as JSON or Markdown. | Field mapping and the contact write are separate steps you supply. | Publisher documented | Local compute and operator costs local resources checked No end-to-end provider cost measured. |
checked |
| APIs | |||||
| Mistral OCR 4.1API · Mistral AI | OCR component for extracting information from documents. | Field mapping, review and the CRM write are separate steps. | Publisher documented | OCR 4.1 standard: $4 per 1,000 pages USD/1,000 pages Price source · checked Annotation, field mapping and CRM costs are separate. |
checked |
| Agent Skills | |||||
| Anthropic PDF skillAgent Skill · Anthropic | Published skill describing PDF reading, extraction, merging and form workflows. Use as an extraction component. | Inspect installation and execution requirements. No destination write is part of the skill. | Publisher documented | No published price recorded | checked |
Prices are shown in each publisher’s own unit (per minute, per call, per month, per page) and are not converted. A price is not a cost per completed task: that needs metered spend and a success count from the same comparable test.
Planned AgentsByTask test
Proposed. No observed result.
Pass means: Additional cases for a publisher benchmark: an image-only scan, a malformed email, an ambiguous duplicate and an unavailable destination, each recorded separately.
Setup: Dedicated CRM test account. Before and after destination reads, expected-field comparison and replay count.