CSV Mapping Guide
Use this page when you are ready to connect placed overlays on the PDF to the data in your CSV. This is the step that usually decides whether your batch export succeeds cleanly.
If you are still deciding between overlays and native fields, start with Choose the right fill method. If your PDF already contains supported fillable fields, also read Work with native PDF forms (AcroForm).
What Mapping Means
Mapping tells Bulk Fill which CSV column should fill each mapped overlay or
supported native PDF form field. In the current product, each mapping resolves
to a positional column ID such as column_0 or column_1. In the web app,
unnamed or generated columns are shown with friendly labels such as
Column 1 or Column 2, but those labels still map to the same positional
keys in saved mappings and other public contracts.
Static overlays are not part of this guide because they do not read from CSV. This page covers the two CSV-driven layers:
- overlay mapping
- native PDF form mapping on supported non-XFA AcroForm PDFs
Section A - Overlay Mapping
Overlay mapping is the right choice when the value should come from CSV and you need flexible placement anywhere on the page.
In the current product, Bulk Fill supports CSV mapping for these overlay types:
- text fields
- QR fields
- barcode fields
Overlay mappings get a short badge in the editor:
- text fields use
F·1,F·2, and so on - QR fields use
QR·1,QR·2, and so on - barcode fields use
BC·1,BC·2, and so on
How Overlay Mapping Works In The Web App
- Add a mapped overlay in Fields.
- Choose the CSV column for that overlay row. For unnamed or generated
columns, the closed picker uses friendly labels such as
Column 1. The picker menu also includes the current preview row's value for each column, for exampleColumn 1: Carter. - Mapped rows also show the current preview row's CSV value directly in the
row as a
Preview row N: ...helper so you can spot-check the mapping quickly. If the value is clipped, hovering shows a more detailed tooltip such asPreview from Column 1, row 2: Carter. - Preview one or more rows to confirm that the expected value appears.
On PDFs without supported native AcroForm fields, you can also place a mapped text field directly from the Data tab by using the plus button next to a column. If the PDF already has supported native AcroForm fields, Bulk Fill hides that Data-tab shortcut so the native Form workflow stays primary. Overlay text, QR, and barcode fields still remain available from Fields.
Overlay Mapping Example
Suppose your CSV rows follow this structure:
column_0 = customer name
column_1 = invoice number
column_2 = invoice date
column_3 = amount
In the editor UI, that same unnamed or generated column set appears as
Column 1, Column 2, Column 3, and Column 4.
A simple overlay-driven layout might use these mappings:
- customer name text field ->
column_0 - invoice number barcode field ->
column_1 - date text field ->
column_2 - invoice lookup QR field ->
column_3
When you preview row 2, Bulk Fill fills those overlay positions with the values from row 2 of the CSV.
Section B - Native PDF Form Mapping
Native PDF form mapping is the right choice when the source PDF already contains supported native AcroForm fields and you want Bulk Fill to write into that form structure directly.
In the current product, Bulk Fill supports native mapping for:
- supported native PDF text fields
- supported native PDF checkbox fields
- supported native PDF single-select dropdown fields
- supported native PDF radio groups
Native PDF form mapping does not support XFA PDFs. When Bulk Fill detects an XFA form, the Form tab explains that limitation and points you back to overlay Fields, text, QR codes, or barcodes instead.
Native Field Badges And Guides
Native form rows use these badges:
- native PDF text rows use
FF·1,FF·2, and so on after you add them - native PDF checkbox rows use
FC·1,FC·2, and so on after you add them - native PDF dropdown rows use
FD·1,FD·2, and so on after you add them - native PDF radio rows use
FR·1,FR·2, and so on after you add them
Supported writable native PDF text fields, checkboxes, dropdowns, and radio
groups also show pale purple guide boxes directly on the PDF canvas. Before a
PDF field is selected in the Form tab, those guide boxes use generic FF,
FC, FD, or FR labels. Once a Form row is connected to a specific native
PDF field, that PDF guide adopts the row's numbered FF·n, FC·n, FD·n, or
FR·n label. The currently selected native mapping uses a stronger purple
highlight. Text, checkbox, and dropdown rows also show the current preview
row's CSV value directly in the guide when that field type can display it.
How Native Form Mapping Works In The Web App
- Open Form and add the native row type you need:
- Add Form Field
- Add Checkbox
- Add Dropdown
- Add Radio
- Choose the native PDF field from the
Select a FF,Select a FC,Select a FD, orSelect a FRpicker. - Choose the correct CSV column on the second line of that row. For unnamed
or generated columns, the closed picker uses friendly labels such as
Column 1. The picker menu also shows the current preview row's value, for exampleColumn 1: Carter, even though the underlying positional key remainscolumn_0. - Mapped rows also show the current preview row's CSV value directly in the
row as a
Preview row N: ...helper so you can check the selected column before exporting. If the value is clipped, hovering shows a more detailed tooltip such asPreview from Column 1, row 2: Carter. - Preview one or more rows to confirm that the expected value appears.
Each native row starts with the next available row number for that type, but no PDF field is selected until you choose one from the field picker in the row. If the current PDF has no supported fillable form fields, checkboxes, dropdowns, or radio groups, the related add button stays visually unavailable and explains why when you hover or click it.
If you want to keep a Form row but temporarily clear the chosen native PDF
field, you can return the first picker to Select a FF, Select a FC,
Select a FD, or Select a FR. That keeps the row and any selected CSV
column in place so you can park the row and come back to it later.
If the current PDF uses XFA fields, the native add buttons stay unavailable in the Form tab because those native fields are outside the supported scope. You can still place overlay Fields from the Fields tab and map them to CSV columns as usual.
Value Rules For Native Fields
For native PDF checkbox fields, row values are interpreted as:
- checked:
true,1,yes,y,x,on - unchecked:
false,0,no,n,off, blank
Any other checkbox token is treated as a warning and that native field is skipped for that row.
For native PDF dropdown fields, row values are interpreted as:
- Bulk Fill first tries an exact match against the visible dropdown option text
- if the visible option text matches exactly, that option is selected
- if there is no exact visible-text match and the dropdown is editable, Bulk Fill writes the CSV value as free text
- if the CSV value is blank and the dropdown is non-editable with no blank visible option, Bulk Fill leaves that field unchanged without raising a warning
- if the CSV value is not blank, there is no exact visible-text match, and the dropdown is non-editable, Bulk Fill raises a warning and skips that field
Single-select dropdowns only are supported in this version. Multiselect dropdowns, option lists, and XFA native fields stay outside the supported scope.
For native PDF radio groups, row values are interpreted as:
- Bulk Fill tries an exact match against the option strings returned by
PDFRadioGroup.getOptions()in the installed local PDF engine - if the CSV value exactly matches one of those option strings, that option is selected
- if the CSV value is blank, Bulk Fill clears the whole radio group
- if there is no exact match, Bulk Fill raises a warning and skips that field
Radio groups are supported only as one logical field per group. Widget-level radio editing, option lists, and XFA native fields stay outside the supported scope.
What Matters Most In The Current Contract
Because Bulk Fill currently identifies columns by position, stable column order matters more than header text. If your upstream CSV changes the order of the columns, re-check every mapping before you export again.
This also affects header rows:
- a header row is still treated as row data
- preview row 1 will show that header content
- batch export includes row 1 unless you exclude it
How To Check Your Mapping
Before you run the full export:
- Confirm that every mapped overlay row in Fields and every native PDF form row in Form is mapped.
- Use the
FF·n,FC·n,FD·n, orFR·nbutton in the Form row if you need to jump back to that native field on the PDF canvas. - Preview several rows, not just the first row.
- Inspect the longest or least predictable rows.
- Make sure blank cells only appear where blank output is acceptable.
For deletion behavior:
- unmapped overlay rows in Fields remove immediately
- mapped overlay rows in Fields ask for confirmation before removal
- partially configured native Form rows remove immediately
- fully mapped native Form rows ask for confirmation before removal
For mapped QR and barcode overlays, row data matters more than template state:
- if a row value is blank, that overlay is skipped for that row
- if a row value is invalid for that QR/barcode format, that overlay is skipped for that row
- other overlays on the same row still continue
Common Mapping Problems
The CSV Column Exists But The Field Is Still Blank
The overlay may not actually be mapped, or the selected row may have an empty cell in that column.
The Wrong Value Appears
The mapping is probably connected to the wrong positional column. Re-check column order and remap it.
A QR Or Barcode Does Not Render For One Row
That usually means the current row value is blank or invalid for the selected code format. The row can still export, but that mapped code overlay is skipped.
A Native PDF Field Did Not Fill
Preview and export now surface warnings when a native PDF field cannot be written. Review the warning summary, then check the field name, CSV token, and whether the PDF field exists in the current document.
For dropdown fields specifically, confirm whether the CSV value exactly matches the visible option text shown in the PDF. A value that matches an internal or export token but not the visible option text is treated as unmatched in this version.
For radio groups specifically, confirm whether the CSV value exactly matches one of the option tokens listed in the Form row helper text. Those tokens can differ from nearby human-visible page captions in some PDFs.
If there are many native field warnings in one preview, the app may show a warning count summary instead of every warning detail in the toast. The row and field-level warning state in the Form tab remains the source of detail.
Two Mapped Overlays Are Easy To Confuse
Place one overlay at a time, preview after each change, and avoid changing column order once the layout is already mapped.
Next Steps
- Read Work with native PDF forms (AcroForm) if you are using the Form tab workflow.
- Read Preview, Validation, and Export before the full batch run.
- Read Troubleshooting if mapped values still look wrong.