Every document your business sends, generated from Salesforce.
Invoices, quotes, contracts, receipts, board packets, year-end statements — merged from live Salesforce data, emailed, signed, and filed back on the record. PDF, Word, Excel, or PowerPoint. Nothing ever leaves your org, and it's free for unlimited users.
Documents are the output. The workflow is the product.
Portwood connects Salesforce data, templates, Flow, email, signatures, and file storage into complete document automation patterns your team can actually run.
Nonprofit donor journey
Every gift acknowledged the day it lands, pledges signed, board meetings briefed — and year-end giving statements for every donor at once.
Lead to invoice
Use the same Salesforce-native engine for follow-up packets, proposals, quotes, contracts, and invoices.
Field and customer service
Generate field summaries, inspection reports, customer packets, and operational exports from live Salesforce data.
Reducing document automation costs worldwide
Every install on the map is a Salesforce team choosing native automation over another external document vendor.
Everything a document automation platform needs.
Every capability is included. No paywalled features. No upgrade prompts. No "contact sales" to unlock the workflow your team actually needs.
Native templates
Start with the template your team already uses: Word, Excel, PowerPoint, HTML, or a packaged web page. Upload, add merge tags, and generate from Salesforce.
Giant Query engine
Generate documents from records with 50,000+ child rows. Cursor-based pagination, global ORDER BY across all batches, template-embedded images preserved.
Zero external callouts
100% Apex and Lightning Web Components. Your record data never touches a third-party API. Works when competitors' vendors have outages. Works in air-gapped orgs.
Built-in e-signatures
Send documents for signing directly from Portwood. Guest-user signing pages, namespace-aware URLs, and tamper-evident audit trails. No DocuSign, no PandaDoc, no per-envelope fees.
Barcodes & QR codes
Code 128 barcodes and QR codes render natively in Word templates and PDFs. No external libraries, no font installations, no licensing. Just add a tag.
{*ProductCode}Flow automation
Generate and route documents from any Salesforce Flow. Sample Flows bundled. Dedicated Giant Query Flow Action for bulk automation. DML-bulkified and governor-safe.
Hebrew, Arabic & RTL
Right-to-left language support built in. Multi-language documents work natively. No plugins, no add-ons, no separate template branch for each locale.
Conditionals & aggregates
{#IF Amount > 50000} clauses. Inverse conditionals. Checkbox format. SUM, COUNT, AVG, MIN, MAX aggregates. Date and currency formatting at any depth.
Free forever, no seat math
Unlimited users, unlimited templates, unlimited documents. No paywalled features, no "upgrade to unlock," no renewal negotiation when your team doubles. Apache 2.0 licensed, so it stays that way.
Author in HTML. Or Word. Automate anywhere.
The same merge syntax lives in a pure-HTML template or a Word doc — both run on the same engine, because Portwood renders HTML and converts your Word file into it. Word is the quick on-ramp for straightforward documents; when a layout gets genuinely complex, authoring in HTML is the safest path — what you write is exactly what renders, with no conversion surprises.
INVOICE
Bill to: {Account.Name}
{Account.BillingStreet}
{Account.BillingCity}, {Account.BillingState}
{#Opportunities}
{Name} {Amount:currency}
Closed: {CloseDate:MMMM d, yyyy}
{/Opportunities}
Line items: {COUNT:Opportunities}
Subtotal: {SUM:Opportunities.Amount:currency}
{#IF Amount > 50000}
Enterprise pricing applied: 15% discount
{:else}
Standard pricing
{/IF}
Barcode: {*InvoiceNumber}
QR code: {*Website:qr}
Signed by: {@Signature_Buyer}
Logo: {%Company_Logo__c:200x60}
Merge tags, loops, conditionals, aggregates — all in one automation syntax.
The same template can produce a single-record PDF, a bulk batch of 10,000 invoices, or a Giant Query document with 50,000 line items. Nothing to reconfigure. The engine decides.
{Field} merge{Parent.Field} lookup{#List}{/List} loop{^Field} inverse{SUM:List.Field} aggregate{Date:MMMM d} format{*Field} barcode{*Field:qr} QR code{%Image} image embed{@Signature_X} e-sign{Flag:checkbox} checkbox{#IF x > y} conditionalBring any template. One rendering core.
Word, Excel, PowerPoint, or pure HTML — every template converges on the same native HTML rendering engine. It's why a Word file and a hand-coded HTML template come out looking identical.
Author anywhere
Start in the tool your team already knows — Word, Excel, PowerPoint, or hand-written HTML. Add merge tags and go. No proprietary editor to learn, no format to convert by hand.
An HTML engine at the core
Under the hood, Portwood is an HTML rendering engine. Your template is merged and converted to HTML, then rendered to pixel-perfect PDF by Salesforce's own Blob.toPdf() — entirely inside your org, with zero external callouts.
Your choice of output
Want a PDF? It's rendered straight from that HTML. Want an editable Word, Excel, or PowerPoint file instead? Portwood assembles the Office document natively. Same tags, same data — you pick the format.
Electronic signatures inside the same automation flow.
Send any Portwood-generated document out for signing. Guest users sign on a public portal, signatures land back on the record, and the whole audit trail lives inside your org — tamper-evident, FLS-enforced, and visible to whoever already has access to the source record.
Record-triggered Flows fire off signing requests. No human in the loop required. Send one, send a thousand.
Signers don't need a Salesforce license. Namespace-aware URLs work cleanly in subscriber orgs. Mobile-friendly out of the box.
Every signature captured with timestamp, IP, consent record, and the exact document version. All inside your Salesforce org. Nothing leaves.
2026-04-10 14:22 UTC — Walsh signed (IP 73.14.*.*)
2026-04-10 14:38 UTC — Patel signed (IP 12.84.*.*)
2026-04-10 15:01 UTC — Morales signed (IP 98.22.*.*)
2026-04-10 15:01 UTC — Final PDF sealed on MSA__c record
Why is it free?
We built Portwood to give something back to the Salesforce community. We'd watched orgs spend thousands per year on document automation, and knew it could be done better — natively, inside the org, without sending anyone a bill. Every feature is included, there are no per-seat tiers, and it will remain free for life.
How Portwood stacks up.
This is what paid document automation vendors rarely put next to each other on a single page.
| Portwood | Conga | S-Docs | OmniStudio | PDF Butler | PandaDoc | Nintex | |
|---|---|---|---|---|---|---|---|
| Price | Free forever | ~$25-50/user/mo | ~$15-30/user/mo | Industries license | ~$25-150/org/mo | ~$35-65/user/mo | ~$25-35/user/mo |
| 100% Native Salesforce | Yes | No | Yes | Partial | Yes | No | No |
| Data stays in your org | Yes | No | Yes | Yes | Yes | No | No |
| Zero external callouts | Yes | No | Yes | No | Yes | No | No |
| Word templates | Yes | Yes | HTML only | Yes | HTML only | Web editor | Yes |
| PDF output | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
| DOCX output | Yes | Yes | No | Yes | Weak | Yes | Yes |
| E-Signatures built in | Yes | Add-on | No | No | Add-on | Core | Add-on |
| Barcodes & QR codes | Native | Add-on | No | No | Limited | No | No |
| Conditional logic | Yes | Yes | Limited | Yes | Limited | Limited | Yes |
| Aggregate functions | SUM/COUNT/AVG/MIN/MAX | Limited | No | Limited | No | No | Limited |
| Hebrew / Arabic / RTL | Yes | No | No | Limited | No | No | No |
| Images in documents | Yes | Yes | Limited | Limited | Yes | Yes | Yes |
| Rich text fields | Yes | Partial | Yes | Limited | Yes | N/A | Partial |
| Multi-level related records | Unlimited depth | Limited | Limited | Yes | Limited | No | Limited |
| Many-to-many relationships | Yes | Complex | No | Manual | No | No | Limited |
| Bulk generation | Built-in | Add-on cost | Yes | Limited | Higher tiers | API only | Yes |
| Related records per doc | 50,000+ | ~500 | ~500 | ~1,000 | ~500 | ~200 | ~500 |
| Flow action included | Yes | Limited | Limited | Yes | Yes | No | Yes |
| Open source | Apache 2.0 | No | No | No | No | No | No |
| Works when vendor is down | Yes | No | Yes | Partial | Yes | No | No |
← swipe to compare →
Pricing reflects publicly available estimates as of early 2026. Actual pricing varies by contract. Feature comparisons reflect documented capabilities and are updated as vendors ship updates.
Install the automation engine in 30 seconds.
No configuration needed. Assign the permission set, open the app, and start building your first document workflow.
Built by Salesforce admins, for Salesforce admins.
Ask how Portwood works, request features, report bugs, and help shape the roadmap.
Discussion board
General questions about Portwood, tips, and other admins building what you're building.
Join discussionsNeed someone in your org's context — your templates, your queries, a release that broke something? That's Premium Support: a private channel with the people who write Portwood, from $49.95/month.