Get Chrome extension

Anvil Alternative: Fill PDFs by API Without Building Templates

7 min read

Anvil is a well-built document platform: PDF filling, PDF generation, e-signatures, web forms, workflows, an OCR service and an MCP server, with public pricing and a free tier. If you are integrating documents into a product you own, it is a serious option and this article will not pretend otherwise.

It also has one design decision that decides whether it fits you. Its PDF filling works in two steps, in Anvil's own words: first "turn your PDFs or documents into API-fillable templates", then fill the template with structured data. Every PDF becomes a template with named fields before the first fill. For a product that fills its own ten forms a million times, that is the right model. For a team that receives a different PDF from every client, it is the whole cost.

We build FillWise, whose PDF form API takes the opposite approach, so read this as a vendor comparison. Everything about Anvil below is from its website as of September 2026.

How Anvil fills a PDF

  1. Upload the PDF. Anvil's Document AI detects the boxes and proposes field names; you review and adjust the template.
  2. Call the API with a JSON payload whose keys match the template's field names.
  3. Receive the completed PDF.

Pricing, from the pricing page: a Free plan at $0 with 2 users, unlimited templates and "500 free API calls per month, $0.10 add'l", described as a UI-only plan until a card is added for API access. An AI Pack at $99 a month adds programmatic Document AI, AI schema mapping, AI-assisted box finding and field labelling, 50 pages per AI-tagged PDF and a higher rate limit. A Product Pack at $425 a month adds white labelling and signing features. Enterprise is custom.

The strengths are real: templates are reusable and precise, the field names are yours, the fill is deterministic, and the rest of the platform (signing, web forms, workflows) sits behind the same account.

Where the template model costs you

Three situations where the setup step is the problem:

Every PDF is different. A visa agency receives embassy forms, airline forms and insurance forms from dozens of sources. A law firm gets a new court or agency form per matter. Templating each one before the first fill means the first fill costs an hour of setup, and most forms are filled a handful of times.

Your data is not structured. Anvil wants JSON keyed to field names. If what you have is an email from the client, a CRM note or a passport photo, something has to turn that into JSON first: either a person or another AI step you build and pay for separately.

The mapping has to be maintained. When the embassy revises its form, the template is stale. Someone notices, usually after a bad fill.

None of this is a flaw in Anvil. It is what "template first" means.

How the FillWise API fills a PDF

One call. You send the PDF and the source data as plain text, and get the completed PDF back.

curl -sS https://fillwise.ai/api/v1/pdf/fill \
  -H "Authorization: Bearer $FILLWISE_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{
    \"pdf\": \"$(base64 -w0 application.pdf)\",
    \"data\": \"Maria Petrova, born 14.03.1992 in Riga, Latvian, passport LV4482913 valid until 05.02.2031\"
  }"

No template. The engine reads the form's own labels, in whatever language, and matches the data to them. The data field takes text in any format, up to 60 000 characters, and you can attach up to four documents (photos, scans, PDFs) for the AI to read instead of, or on top of, the text. A pages parameter fills only part of a long packet.

The response carries the filled PDF as base64, filled_count, and mode: acroform when the PDF had real fields, flat when it had none and the values were drawn at label positions. Scanned PDFs without a text layer are rejected with a 422 rather than returned half-filled.

Keys are created in your account and there is no separate API plan: each successful call spends one fill from the same balance as the Chrome extension. Free is 20 fills to start and 5 a week; paid plans start at $15 for 100 fills a month, listed on the pricing section. Rate limit is 20 requests a minute per account. Full parameter and error reference is in the PDF form API guide.

Side by side

Anvil PDF filling FillWise PDF API
Before the first fill Turn the PDF into a template, review field names Nothing
Input data JSON keyed to template fields Plain text in any format, plus up to 4 documents
New or changed form Update or recreate the template Send it
Fill result Deterministic, exact AI-matched, review recommended
Flat PDFs without fields Template boxes drawn by Document AI Values placed by reading the layout, mode: flat
Scanned PDFs OCR service available separately Rejected
E-signature, web forms, workflows Yes, same platform No
MCP server Yes Yes, fillwise-mcp on npm
Free tier 500 API calls a month, card required for API 20 fills to start, 5 a week, no card
Paid $0.10 per extra call; AI Pack $99/mo; Product Pack $425/mo From $15 for 100 fills a month

Which one, decided

You own the forms. Your product generates the same contracts, applications or certificates from your own database, thousands of times, and you also need signatures. Anvil. The template is built once, the fill is exact, signing is on the same account.

You receive the forms. Clients, agencies, embassies and insurers send you PDFs you did not design, and your data arrives as text, emails and document photos. FillWise. No template, and the AI reads the document instead of you keying JSON.

You are an AI agent builder. Both expose an MCP server. The difference is the same: Anvil's tools fill templates you set up; FillWise's fill_pdf takes any PDF and free text.

Some teams will end up with both: FillWise for the long tail of incoming forms, Anvil for the handful of documents they generate and sign at volume.

What to check by hand

An AI fill is a first draft. Before a document leaves your system:

Privacy

The PDF and the data in an API call go to the FillWise server and to the AI provider for that one fill, and are not stored. What the account keeps (keys, usage counts without field values) is listed on the privacy and data security page.

FAQ

Can I move my Anvil templates to FillWise? There is nothing to move. FillWise reads the PDF itself; send the original form and the data.

Is an AI fill as reliable as a template fill? No, and we say so. A template fill puts the value exactly where you mapped it. An AI fill reads the form and can misjudge a look-alike field. That is the price of skipping setup, and why the response tells you how many fields were filled.

Does FillWise sign documents? No.

Does the FillWise API fill web forms? No. Web forms are filled by the Chrome extension on the page. The API is PDF only.

What happens on a scanned PDF? A 422 with a clear code. The Chrome extension cannot fill scans either; a text layer is required.

Get started

Create a key in your FillWise account, take the last PDF a client sent you, and run the curl above with their details as plain text. If the fill count is right on that one, it will be right on the next hundred.