> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.meetgail.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.meetgail.com/_mcp/server.

# Fill PDF Form

> Fills a fillable PDF form, such as an ACORD form, from data your workflow gathered.

The Fill PDF Form node takes a fillable PDF template and the data a workflow has
collected, and fills the form in for you. It works out which piece of your data
belongs in each field, even when the form's field names are cryptic, writes the
values in, and hands back the finished PDF. It was built for insurance forms like
ACORD certificates and applications, where filling by hand is slow and error
prone.

## When to use it

* You need to produce a certificate of insurance or an application from data the
  workflow already has.
* A form's field names do not match how your data is labeled, and you want the
  matching handled for you.
* You want to deliver a finished, ready-to-send document at the end of a run.

## Inputs

| Field            | What it's for                                                                                             | Example                                                      |
| ---------------- | --------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
| Template         | The fillable PDF to fill in, usually uploaded at the start or from an earlier step.                       | An ACORD-25 certificate template                             |
| Source data      | The information to place on the form. Can be any shape, such as an extracted policy or a customer record. | A policy record with insured name, policy number, and limits |
| Output file name | The name to save the filled PDF under.                                                                    | `certificate-of-insurance.pdf`                               |
| Mapping hints    | Optional notes that help match your data to specific fields, useful when field names are cryptic.         | `Tx27 = Producer Phone`                                      |
| Flatten          | Whether to lock the finished PDF so the recipient can view and print but not edit it. Off by default.     | `On` for a final document                                    |

The template and source data usually come from earlier steps written as
[expressions](/platform/workflows/core-concepts/expressions/using-expressions-in-nodes).

## Outputs

| Field              | What you get back                                                                                    |
| ------------------ | ---------------------------------------------------------------------------------------------------- |
| File               | A reference to the filled PDF, ready to attach or upload.                                            |
| Field values       | The values that were written into the form, field by field.                                          |
| Filled field count | How many fields were filled in.                                                                      |
| Unfilled fields    | Any fields that were matched but could not be filled, so you can review or re-run with better hints. |

## Example

A certificate request comes in for Chen Insurance Group. An earlier
[Document Analysis](/platform/workflows/node-reference/ai/document-analysis) step pulls the
insured name, policy number, and coverage limits out of the uploaded policy. A
Fill PDF Form node then fills an ACORD-25 certificate template with that data,
saves it as `certificate-of-insurance.pdf`, and a
[Send Email](/platform/workflows/node-reference/communication/send-email) step delivers it
to the certificate holder, all without anyone opening the form.

![The Fill PDF Form configuration panel, showing the template, source data, and output file name fields.](https://fdr-prod-docs-files-public.s3.us-east-1.amazonaws.com/gail.docs.buildwithfern.com/367a09e6b2259206910e2cd2f6585dc991a62d132b9dbaceba94e829a29eace8/docs/pages/platform/workflows/assets/files-and-documents-fill-pdf-form.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA6KXJSKKNFOCF7G4B%2F20260823%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260823T232949Z&X-Amz-Expires=604800&X-Amz-Signature=54b1ce4220fbb8fea6ae06d3ff550ebb3d2e1a616352fe95229910bb02c9df0f&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject)

Some older PDF forms use a format that cannot be filled automatically. When that
happens, the node reports the problem and suggests re-saving the file from a
current PDF editor, which usually converts it to a fillable form. Give the node
clearly named source data, and add mapping hints for any fields whose names are
hard to guess, for the most reliable results.

## Related nodes

#### [Document Analysis](/platform/workflows/node-reference/ai/document-analysis)

Pull structured data out of a document to feed into the form.

#### [Send Email](/platform/workflows/node-reference/communication/send-email)

Attach the filled PDF to an outgoing email.

#### [Create Text File](/platform/workflows/node-reference/files-and-documents/create-text-file)

Build a file from content you supply.

#### [Check](/platform/workflows/node-reference/logic-and-flow/check)

Turn the fill result into a single labeled outcome, such as complete or needs review.