kakulu

Data preparation · Reviewed 23 October 2026

Prepare a recipient CSV for Affinity certificates.

Start with two columns: a certificate ID and the recipient’s name exactly as it should appear. Keep one recipient record on each row, check the text, then use that source in your certificate template.

This guide is for the current unified Affinity desktop application. It prepares data for a workflow with one certificate per page; it does not create a layout or export PDFs. Older Publisher tutorials may show different controls.

Start with a small CSV.

The blank template contains only the column headings. The filled example contains six fictional recipients, including two Alex Riveras and names with accents. Both files are UTF-8, comma-separated CSVs. No account is needed.

Download the preparation checklist as text. These are ordinary data files; they contain no exporter or automation.

Use explicit headers in the first row.

Affinity’s current Data Merge documentation says the first line of a CSV or TSV supplies the field names. Put the headings first, with recipient data immediately below them.

certificate_id,recipient_name
C001,Alex Rivera
C002,Alex Rivera

certificate_id and recipient_name are Kakulu’s example headings. Affinity does not require these particular words. Simple, distinct labels make the fields easier to recognise; keep those labels unchanged after connecting them to a template.

For this workflow, use one row for each certificate you intend to issue. A certificate ID identifies that record even when names repeat. You can add columns such as a course title or completion date if the template needs them; the two-column downloads keep the starting point small.

Keep a whole record together. If you sort the spreadsheet, sort the entire recipient table so each name stays with its ID. Save a copy of the exact source used for each batch. This is particularly important when an external splitter later matches PDF pages to a filename list by position.

Duplicate names are valid. Duplicate IDs need review.

Do not remove a row just because another recipient has the same name. The two Alex Rivera records below are intentional. Our convention gives every certificate a distinct, stable ID so their files can remain distinguishable.

The six-recipient CSV download
Certificate IDRecipient nameWhat to check
C001Alex RiveraSame name as C002, different certificate ID
C002Alex RiveraKeep both recipients
C003Zoë NgCheck the ë
C004José AlvarezCheck the é
C005Mei TanOrdinary two-part name
C006Sam O'NeillKeep the apostrophe in the displayed name

The ID convention is our recommendation for reliable identification and naming, not a general Affinity rule. Use IDs from your issuing system if it already provides suitable ones. Check that every intended certificate has an ID and that none is reused by mistake.

Save as UTF-8 and inspect accented names.

If your spreadsheet application offers CSV UTF-8, use that as a starting point. Microsoft documents this format for Excel for Mac. UTF-8 is Kakulu’s interoperability recommendation here; we have not established a particular encoding or byte-order-mark requirement for every Affinity version.

Check that Zoë Ng and José Alvarez still look correct after saving and reopening the source, then check them in Affinity’s data preview and generated pages. Preserve the spelling and accents the recipient supplied. A correct CSV does not establish that the chosen font has every required glyph.

Keep display names separate from filename rules. For example, Sam O’Neill should retain the intended apostrophe on the certificate, even if your chosen filename convention omits it. Our downloadable fixture uses the straight apostrophe in Sam O'Neill; it remains ordinary text in the name field.

Quote a field that contains a comma.

In a comma-separated CSV, commas divide columns. A comma inside a name or course title needs quoting so it stays within that field. A literal double quote inside a quoted field is written twice. These are common CSV conventions described in RFC 4180.

certificate_id,recipient_name,course_title
C007,"Ng, Zoë","Design, Layout and Print"
C008,"Pat ""PJ"" Lee","Design, Layout and Print"

The second record’s displayed name is Pat "PJ" Lee. The surrounding CSV quotes and doubled quote characters are file syntax. They should not become extra characters in the certificate.

When editing in a spreadsheet, type the normal name or title into its cell and let the application write the CSV quoting. The example above shows what the saved text file looks like. It is separate from the six-recipient download.

The current Affinity panel documentation describes both Delimiter and Quote controls. Match them to your source. If all fields appear as one column or split unexpectedly, inspect the saved file’s separator and quoted values before changing the certificate design.

Check the source before merging.

  1. Check headers. Give each needed column a clear name. Remove an introductory title row above the headers, and resolve blank or duplicate headings.
  2. Check required values. For this certificate workflow, review every blank ID or recipient name. Decide whether the record is incomplete or should be removed; do not assume a blank record will be skipped.
  3. Count intended records. The filled download has six recipients plus its header. Compare your own count with the batch you intend to issue, then check how the template advances records.
  4. Inspect unusual text. Include accents, commas, apostrophes and the longest name in your preview checks. Review unintended spaces at the start or end of a value.
  5. Check pairings. Compare each certificate ID with the name beside it. Equal numbers of names and IDs do not prove the rows are correctly aligned.
  6. Inspect the generated document. Check the actual recipient text, IDs, page count and layout. A source-data check cannot detect every record-advance, clipping or font problem.

Keep the editable spreadsheet as your working copy. CSV is a data format, so workbook formatting and other spreadsheet features do not carry over as a complete workbook. Check the saved CSV itself before relying on it.

Refresh the source for corrected and repeat batches.

After correcting and saving a connected source file, use the current Data Merge panel’s Refresh control to fetch its latest records. The panel documentation describes that control. Check the source preview before generating again.

Affinity’s Preflight documentation distinguishes parsing errors, validation warnings, sources that need updating, and fields whose names no longer exist in the source. If a field is missing after an edit, check whether its header was renamed or deleted.

Refreshing source data and correcting an already-generated document are separate steps. Do not assume Refresh rewrites the existing certificate pages. Keep the original template, check the updated source there, generate a new batch and inspect that output. Retire superseded files so they are not included in the delivery.

For repeated batches, reuse the template’s established field names and replace the recipient records carefully. Check the first and last records, repeated names and any changed text. Keep the batch’s source and output together.

What if the source is a Canva Sheet?

Affinity’s September 2026 release notes describe refreshing from a live Canva Sheet without exporting and reimporting CSV. That is a different source workflow. A CSV saved on your computer is a snapshot; editing the original online spreadsheet does not by itself change that CSV file.

Prepare the next course or training cohort.

Reuse the layout and field connections, but treat the new cohort as a new set of source records and outputs. Do not overwrite the only copy of an earlier issued batch or start by editing names inside its generated certificate pages.

Separate reusable setup from each cohort’s records
Keep reusablePrepare for this cohort
Certificate layout, text styles and field headingsThe intended recipients and unique certificate IDs
Established field connections in the original templateThe correct source file and a checked preview of its current records
Suitable export preset and free-splitter naming settings, if usedA newly generated document and a fresh output folder
Your output-checking methodThis course title, completion date, signatory and receiving-system requirements

A changed-cohort example

The original six-person example starts with C001,Alex Rivera and C002,Alex Rivera. A later fictional cohort could instead begin with the following records, while keeping the same headers:

certificate_id,recipient_name
N101,Imani Patel
N102,Léa Martin

These two new rows are an illustration, not a tested native batch or a replacement for the six-recipient download. They represent new certificates, not corrections to the two Alex Rivera records. Keep the ID policy required by your issuing system.

  1. Preserve the previous batch. Keep its approved CSV, generated document and issued PDFs together. Make a working copy of the reusable template for the new course or cohort.
  2. Replace the data deliberately. Keep field headings stable, remove old recipient rows from the new working source and save a separate dated CSV. Reopen it to check names, accents, IDs and record count.
  3. Check the source connection. In the new template copy, select the intended source. Refresh a source that was edited in place, and inspect the actual preview. Do not assume a differently named CSV is selected merely because it is in the same folder.
  4. Update course-specific wording. Check the title, completion date and signatory in the layout as well as in any data columns. A correct name with last month’s course date is still an incorrect certificate.
  5. Generate a new document. Confirm the first and last records and every exception. Review the longest names and missing-character checks; a layout that fit the last group may need attention for this one.
  6. Export into a fresh folder and approve the files. Keep the delivery settings appropriate to the current destination, then compare each saved name and ID with its filename using the delivery checklist.

For example, course-october-source.csv and course-november-source.csv are distinct saved inputs, with separately labelled output folders. The names are an organisational recommendation, not a naming rule imposed by Affinity or Kakulu. Keep any external filename list aligned with the newly generated PDF rather than the earlier cohort.

If the layout is not yet reusable, follow the certificate layout and Data Merge guide. Reusing saved settings in a free splitter can also reduce repeated setup; a later batch does not inherently require starting from scratch.

Next: create the merge, then check its files.

Use the reusable certificate layout guide to connect these fields and generate the certificate pages. Keep this CSV guide available when preparing another cohort.

When the generated certificates are correct, use the individual-PDF export guide to compare manual export, free splitting tools and the native route Kakulu is developing.

Need to repeat the named-PDF finishing step?

Kakulu is developing an exporter for compatible, already-generated certificates in Affinity 3.3.1.4940 on macOS. It is intended to read the resolved name and ID from each page and produce separate, named PDFs, avoiding the intermediate combined PDF and external splitting pass. It does not prepare the recipient source or repair the layout.

The proposed price is US$19 once. The current action is an availability-notification request, not a purchase; no payment is collected. Review the synthetic native example and setup requirements before expressing interest.

Notify me when the $19 exporter is available

Sources and verification limits

By Kakulu. Sources checked 23 October 2026. Current official indexed text was used where an Affinity help page returned navigation without its article. This guide introduces no new native compatibility test. The CSV downloads use the established synthetic recipient mapping; they are not a certification that your data, template or export is correct.

  1. Affinity — Data merge — Undated current help; checked 23 October 2026. CSV/TSV first-row field names and data merge.
  2. Affinity — Data Merge panel — Undated current help; checked 23 October 2026. Delimiter, Quote and Refresh controls.
  3. Affinity — Preflight — Undated current help; checked 23 October 2026. Source parsing errors, stale data and missing fields.
  4. Microsoft — File formats supported in Excel for Mac — Undated support page; checked 23 October 2026. CSV UTF-8 exports and the limits of CSV formatting.
  5. RFC Editor — RFC 4180, section 2 — October 2005; checked 23 October 2026. Common comma-separated quoting conventions; an informational RFC.
  6. Affinity — September 2026 release notes — September 2026; checked 23 October 2026. Live Canva Sheets data-source refresh.