Plenty of tools will send the same PDF to a list. Far fewer will send a different PDF to every person on it. That difference is the entire job for finance, operations and account teams — the covering note barely changes, but the attachment is unique to each recipient and getting it wrong is a data breach, not a typo.
How the matching works
The pattern is always the same. A spreadsheet carries one row per recipient, with a column that identifies their document — an account number, an invoice reference, a filename. Your documents sit in a folder named on the same key. The send matches row to file, merges the message, and delivers.
The whole thing lives or dies on that key being clean.
What to check before you send
- Every row has a file, and every file has a row. Orphans in either direction mean somebody gets nothing, or somebody gets a document that is not theirs.
- The key is genuinely unique. Two customers with the same surname, or a truncated account number, is how the wrong statement reaches the wrong person.
- Addresses are validated first. Bounces on a personalised send are worse than on a newsletter — the document did not arrive and you may not notice.
- Spot-check the merge, not just the list. Open three rendered messages from different parts of the file before releasing the batch.
Proving it arrived
For operational mail, “sent” is not the finish line. Somebody will ask whether a specific customer received their statement, and the answer needs to be a record, not a guess. Delivery, opens and bounces at the level of the individual recipient are what turn a bulk send into something you can stand behind.