All articles
• 6 min read•By InOneShot Team

How to Organize Your PDF Mail Merge Template Library

A well-named, well-stored template saves you from repositioning fields on every batch. How to structure, name and maintain reusable PDF mail merge templates.

To organize your PDF mail merge templates, give each one a name that says what it is for, keep the base PDF, the spreadsheet and the saved template separate, and use one folder per document type. A well-stored template reloads in seconds, so you never reposition every field on every new batch.

If you use a mail merge tool two or three times, a single file is enough. If you use it every month for certificates, invoices or invitations, clutter builds up fast: three versions of the same template, a spreadsheet nobody is sure is current, a base PDF overwritten by mistake, a renamed column that silently leaves a field blank. This article proposes a simple organization you can set up in ten minutes, and explains what an InOneShot template actually contains, because that is what dictates the right way to store it. For the spreadsheet itself, see the checklist in how to create one filled PDF per Excel row offline.

What is a mail merge template, and what does it contain?

In InOneShot you open a base PDF, place fields on it (text from a column, today's date, a signature, a QR code) and link those fields to your spreadsheet columns. Once the layout is right, you save it as a template, in an .ffm file, and reload it for the next batch. That is the basic idea behind generating hundreds of personalized PDFs from an Excel file without redoing everything each time.

The .ffm file is a small text file (in JSON format). For each field it stores: its position on the page, the page number, the text size, the alignment, the maximum width, the field type and the name of the spreadsheet column it is linked to. For a signature field it also stores the location of the signature image. And it keeps the name and location of the base PDF on your computer.

What it does not contain: your data. No spreadsheet row is copied into the template. The spreadsheet stays a separate file that you change for each batch. So three things live on their own: the base PDF (layout, logo, legal notes), the saved template (field positions and settings) and the spreadsheet (the batch data). The whole organization rests on that separation.

Why do file locations and column names matter?

Because the template relies on them. Two behaviours of the desktop app are worth knowing before you file anything away.

  • The base PDF is found by its location. When you reload a template, InOneShot automatically reopens the base PDF if it is still where it was. If you moved or renamed it, the app tells you the template's PDF cannot be found: simply open the PDF first, then reload the template.
  • Fields are linked by the exact column name. If you rename the 'Name' header to 'Last name' in your spreadsheet, the matching field can no longer find its column. InOneShot then lists the template's columns that are missing from the loaded Excel file and warns that they will stay empty.
  • The signature image is also found by its location: keep it in a folder that does not move.

The practical takeaway is simple: decide once and for all where your base PDFs and signature images live, and never change column names without updating the template right away.

How should you store your files?

A simple structure beats a clever system you will not maintain. Here is the one we recommend.

  • One folder per document type: Certificates, Invoices, Invitations, Badges.
  • Inside each, a Base folder (starting PDFs and signature image), a Templates folder (.ffm files) and a Batches folder (one dated folder per send, with the spreadsheet and the generated PDFs).
  • One base PDF per version of the layout: if you change the logo, create a new version next to the old one instead of replacing it, otherwise older templates will open on the new layout.
  • An Archive folder for templates you no longer use, instead of deleting them.

The benefit of dated batches: if a client or an auditor questions a document, you can find the exact spreadsheet and PDFs of that send, with no guessing. This is especially useful for a training provider that needs to generate training certificates without management software and produce them again later.

How should you name your templates?

A good name answers three questions: what, for whom, which version. A few examples:

  • Training-certificate_Organisation-A_v2.ffm
  • Invoice_Recurring-client_v1.ffm
  • AGM-invitation_Association_2026.ffm

Avoid names such as new, final or final2: in three months nobody knows which one is right. Add a version number when the layout changes, and the year for yearly documents (invitations, diplomas). Give the base PDF and the template that uses it the same name (Invoice_Recurring-client_v1.pdf and Invoice_Recurring-client_v1.ffm) so you can see at a glance which pair belongs together.

The same logic applies to spreadsheet headers: choose short, stable names (Name, FirstName, SessionDate, InvoiceNumber) and keep them identical from one batch to the next. A batch spreadsheet that always uses the same headers loads without a single warning.

How do you keep templates up to date without breaking them?

A template changes for three reasons: a legal note changes, the visual identity is updated, or a column is added to the spreadsheet. In each case the rule is the same: duplicate, edit the copy, test, and only then replace.

  • Always run a test on three spreadsheet rows before launching the full batch.
  • Check the longest names and accented characters in the preview, since they are the ones that overflow boxes.
  • If you add or rename a column, link the field to the new column and save the template under a new version number.
  • Keep the old version for a month, long enough to confirm everything works.

For details that rarely change (registration number, address, payment terms), put them in the base PDF rather than in the spreadsheet: you edit them in one place only. And since your spreadsheets hold names and addresses, keep the Batches folder in a restricted-access location and follow your local data protection rules (in France, the [CNIL](https://www.cnil.fr) guidance).

Which templates are worth building first?

Start with the documents you produce most often, not the most impressive ones. If you issue invoices every month, that is your first template: see how to generate bulk PDF invoices from Excel. For HR paperwork, read how to produce contracts, invitations and badges. Each well-built template is an investment that pays back with every later batch.

Conclusion: store a template once, use it twenty times

Separate the base PDF, the template and the spreadsheet, leave the base PDF and signature where they are, keep column names stable, name clearly and test before each batch: that is the whole method. The time spent organizing comes back from the second send. To see the full workflow, read how to create one filled PDF per Excel row offline, then build your first template.

Frequently asked questions

Does an .ffm template contain my data?

No. It stores the position and settings of the fields, the names of the linked columns and the location of the base PDF. Your data stays in the spreadsheet, which you change for each batch.

What happens if I moved the base PDF?

When you reload, InOneShot says the template's PDF cannot be found. Open the base PDF from its new location first, then reload the template.

What if I renamed a column in my Excel file?

The app lists the template's columns missing from the loaded file and warns that they will stay empty. Restore the old header, or link the field to the new column and save the template again.

Do I need one template per client?

Only if the layout differs. If only the content changes, one template and one spreadsheet per batch is enough.

Are my files sent anywhere?

No. InOneShot runs on your computer: the base PDF, the template and the spreadsheet stay with you.

Ready to automate your PDFs?

Try InOneShot for free and generate your documents in one click.

Discover InOneShot