Bulk Send

Upload a CSV. Send 200 envelopes.

Map columns to recipient fields and fan out — one envelope per row. Sequential or parallel signing. 1- or 2-signer flows. Live batch log shows every row's status. Each recipient gets a personally-addressed envelope; no batch context exposed.

Sender
Batch
CSV Upload
q2-orders.csv200 rows
Namerecipient_name
Emailrecipient_email
Companycompany
Amountorder_total
Fan out 200 envelopes →
Q2 Sales Orders200
Signed9 of 12
200 sent in 14s · 78% in 24h

A spreadsheet in, a flight of envelopes out.

Bulk Send turns a CSV into hundreds of individually-routed agreements — each with its own audit trail, its own signers, its own sealed PDF — without losing the per-recipient touch.

CSV → mapped fields.

Drop a CSV; auto-detected columns suggest mappings to recipient name, email, and any template field tag. Hand-correct one row, every row inherits.

1 or 2 signer flows per row.

Each row can carry a single signer or a counter-signer column — sequential or parallel. Witness columns supported on Team+ when the Witness Flow add-on is enabled.

Live batch tracking.

Real-time row-status pills: Queued · Sent · Viewed · Signed · Bounced · Cancelled. Filter pills slice the batch instantly. Export the result set as CSV when it's done.

Batch · #B-2026-0428
Resend pendingCancel batch
Q2 Sales Orders · 200 rows.
156 / 200 · 78%
All200Pending42Signed156Bounced2Cancelled0
RecipientCompanyStatusSent
Aurélie BeauchampLumière Co.Signed28/05/26 09:12 AM
Marcus TanNorthwind StudiosSigned28/05/26 09:12 AM
Priya SharmaCobalt LabsSigned28/05/26 09:12 AM
Devon CarrilloHex Bay CapitalIn progress28/05/26 09:12 AM
Hana OkaforFoundry SystemsSigned28/05/26 09:12 AM
Léo TremblayChinook HoldingsBounced28/05/26 09:12 AM
Started 28/05/26 09:12 AMExport CSV

Manage the batch

Resend pending rows in one click. Cancel the whole batch mid-flight. Retry only the failed-delivery rows. Download the result CSV with status + signed-PDF URLs attached.

Mid-send cancellation.

Hit pause and any unsent rows freeze. Envelopes already in the signer's inbox keep working — you choose whether to revoke them or let them complete.

Retry failed rows.

Bounced emails, timed-out signers, malformed addresses — surfaced as a filter pill, one-click resend with corrected data. The batch tally stays clean.

Throttle + send-rate.

Team tier ships at 200/min. Firm tier opens a configurable rate-limit dial so a 5,000-row Q-end blast stays under your email provider's throughput cap.

Signer experience

Each signer feels personally addressed

The recipient never sees the batch. No 'You're #142 of 200.' No template hint. Their envelope arrives in the From line you configured, with their name, their company, their amount — a one-to-one engagement that happens to scale.

Per-row personalization.

Every field tag in your template can pull from a CSV column — Name, Company, Amount, Effective Date, custom fields. The envelope is rendered against THEIR row only.

Mobile-first signing.

The signing page reads the same on a phone as on a laptop. The 2x magnifier kicks in at small widths so the field they tap is always the field they meant.

Sealed PDF straight to inbox.

When they finish, the certified PDF + audit cert lands in their email before they close the tab. Sender sees the row flip green in the batch log.

ASAperture Studios
Signature Request
Devon, your Q2 order.
CompanyHex Bay Capital
Order total$48,200.00
Effective01/06/2026
Sign here
Review & sign →
Personally addressed
Row 1 of 200 · hidden from signer
Ideal use cases

Where Bulk Send pays for itself.

Quarterly cycles, renewal seasons, mass acknowledgements — anywhere the same agreement structure routes to many counterparties at once.

Q-end sales orders

200 sales orders going out the last week of the quarter — one CSV from your CRM, one click, every customer gets their personalized order to sign.

Reseller onboarding

New partner cohort lands every month. CSV from your CRM, channel-partner agreement template, one batch — everyone signed before the kickoff call.

Lease renewals

Property managers run rent rolls through a renewal template — each unit gets the right tenant, the right rent, the right effective date, the right witness.

Annual employee acknowledgements

Code of conduct, IP assignment, handbook update — push to every employee at once with their name + dept + manager pulled from your HRIS export.

Insurance renewals

Renewal declarations for an entire book of business — premium, policy number, effective date all pre-filled per row from your policy admin system.

Event waivers

Registrant list in, signed waivers out before doors open. Optional minor-waiver second-signer column captures the guardian on the same envelope.

Frequently asked

Questions, answered.

What CSV format does Bulk Send expect?

Standard comma-separated, UTF-8, first row is headers. Excel CSV-UTF-8 exports are fine. We also accept TSV and semicolon-delimited (common in EU exports). Up to 10,000 rows per batch on Team, unlimited on Firm. Required columns: at minimum a recipient email column — everything else maps to template field tags or stays as audit-only metadata.

How does column auto-mapping work?

On upload we read the header row and score each column against your template's field tags using a small lexical match (e.g. 'Email Address' → email, 'Effective Date' → effective_date, 'Total' → amount). A right-rail mapping panel lets you confirm or override before fan-out. The mapping saves with the template so the next batch with the same headers is one-click.

Can each row have a different second signer?

Yes. Add a counter_signer_name + counter_signer_email column pair (the exact names are configurable in the template) and each row routes to its own pair. Sequential or parallel is set per-template; you can override per-batch if needed. Witness columns work the same way when the Witness Flow add-on is active.

What happens if I cancel a batch mid-send?

A confirmation dialog with two scopes: "Stop new sends" leaves in-flight envelopes alive, "Revoke everything" recalls envelopes still mid-signing. Already-completed signatures are immutable (they're sealed PDFs with audit trails — they're evidence). The batch log shows a CANCELLED chip and the row counts split into Sent / In-flight / Stopped.

Can I retry just the failed rows?

Filter the batch by Bounced or Cancelled, multi-select rows, "Resend selected" pulls them into a sibling batch tied to the parent. You can edit the CSV cells inline before resending — fixing a typo'd email doesn't require re-uploading the whole file.

How do I export results when the batch is done?

One-click CSV export from the batch view. Each row carries: original CSV columns, final status, signed-at timestamp, signed-PDF URL, audit-cert URL, signer IP, and the envelope ID. Pipe it into your CRM, your warehouse, your accounting system. We also expose a webhook on completion if you want push not pull.

Are there rate limits or throttling I should know about?

Team tier sends at 200 envelopes/minute, designed to land smoothly inside Postmark and most ESP throughput caps. Firm tier opens a configurable rate-limit dial so you can match your own warm-up plan or stay within a custom DKIM-verified domain's per-second budget. We never queue more than 24 hours; if a row hasn't sent by then we surface it as Stuck and you choose to retry or cancel.

Still have questions?

Email us →
Included in Team

Stop pasting the same template 200 times.

Bulk Send ships with Team — $19.99/mo for 4 seats. Drop a CSV, hit fan-out, and the next 200 envelopes are someone else's problem to sign.