Zapier Starter Packs
Starter Packs are pre-built template bundles designed specifically for common Zapier automation workflows. Each pack includes a professional email template and matching PDF or Excel attachment template.
Ready-to-Use Templates - Import a starter pack, connect your Zapier trigger, and start sending professional emails with attachments in minutes.
Available Starter Packs
CRM integrations (HubSpot, Salesforce, Pipedrive)
Sales ProposalE-commerce (Shopify, WooCommerce)
Order ConfirmationPayment processors (Stripe, PayPal)
Payment ReceiptFulfillment notifications
Shipping NotificationSubscription billing
SaaS InvoiceProject management (Airtable, Monday.com)
Project StatusGoogle Sheets data exports
Weekly ReportSupport desk (Zendesk, Freshdesk)
Ticket ResolutionForm submissions (Typeform)
Lead Magnet DeliveryScheduling (Calendly)
Meeting ConfirmationUsing Starter Packs with Zapier
Step 1: Import a Starter Pack
- Go to your FormaMail dashboard
- Navigate to Templates → Starter Packs
- Browse and select a pack that matches your use case
- Click Import to add both templates to your account
Step 2: Customize Templates (Optional)
- Open the imported email template in the designer
- Update branding colors, logo, and text
- Modify the attachment template if needed
- Save your changes
Step 3: Create Your Zap
- Create a new Zap in Zapier
- Choose your trigger app (e.g., Shopify, HubSpot)
- Select the trigger event (e.g., “New Order”, “Deal Won”)
- Add FormaMail as the action
- Select Send Email with PDF or Send Email with Excel
Step 4: Map Variables
Use the mapping tables below to connect your trigger data to template variables.
Step 5: Test and Activate
- Send a test email with sample data
- Verify the attachment generates correctly
- Turn on your Zap
Sales Proposal
Best For: CRM integrations (HubSpot, Salesforce, Pipedrive)
Trigger Events:
- Deal stage changed to “Proposal Sent”
- New deal created
- Opportunity won
Attachment Type: PDF
Variable Mapping (HubSpot)
| Template Variable | HubSpot Field | Description |
|---|---|---|
customer.name | {{Contact: Company}} | Customer company name |
customer.email | {{Contact: Email}} | Recipient email |
deal.name | {{Deal: Deal Name}} | Deal/opportunity name |
deal.value | {{Deal: Amount}} | Total deal value |
proposal.validUntil | Calculated | Use Zapier formatter (today + 30 days) |
salesRep.name | {{Deal: Owner Name}} | Sales representative |
salesRep.email | {{Deal: Owner Email}} | Rep’s email |
Sample Zap Configuration
Trigger: HubSpot - Deal Stage Changed
Filter: Stage = "Proposal Sent"
Action: FormaMail - Send Email with PDF
├── Template: sales-proposal-email
├── PDF Template: sales-proposal-pdf
├── To: {{Contact: Email}}
└── Variables: Mapped from HubSpot fieldsOrder Confirmation
Best For: E-commerce platforms (Shopify, WooCommerce, BigCommerce)
Trigger Events:
- New order placed
- Order paid
Attachment Type: PDF (Invoice/Receipt)
Variable Mapping (Shopify)
| Template Variable | Shopify Field | Description |
|---|---|---|
customer.name | {{Customer: First Name}} {{Customer: Last Name}} | Full name |
customer.email | {{Customer: Email}} | Recipient email |
order.id | {{Order: Name}} | Order number (#1001) |
order.date | {{Order: Created At}} | Order date |
items | {{Line Items}} | Array of products |
subtotal | {{Order: Subtotal Price}} | Subtotal |
shippingCost | {{Order: Total Shipping Price}} | Shipping |
tax | {{Order: Total Tax}} | Tax amount |
total | {{Order: Total Price}} | Grand total |
Line Items Array
For the items array, use Zapier’s formatter or a custom Code step:
// In Zapier Code step
return {
items: inputData.lineItems.map(item => ({
name: item.title,
quantity: item.quantity,
price: item.price,
priceFormatted: `$${item.price}`,
sku: item.sku,
image: item.image?.src || ''
}))
};Payment Receipt
Best For: Payment processors (Stripe, PayPal, Square)
Trigger Events:
- Payment succeeded
- Invoice paid
Attachment Type: PDF
Variable Mapping (Stripe)
| Template Variable | Stripe Field | Description |
|---|---|---|
customer.name | {{Customer: Name}} | Customer name |
customer.email | {{Customer: Email}} | Recipient email |
payment.id | {{Payment Intent: ID}} | Transaction ID |
payment.date | {{Payment Intent: Created}} | Payment date |
payment.amount | {{Payment Intent: Amount}} / 100 | Amount (convert from cents) |
payment.currency | {{Payment Intent: Currency}} | Currency code |
payment.method | Credit Card | Payment method |
payment.last4 | {{Payment Method: Card Last 4}} | Last 4 digits |
Amount Conversion - Stripe amounts are in cents. Use Zapier’s Formatter to divide by 100.
Shipping Notification
Best For: E-commerce fulfillment notifications
Trigger Events:
- Order fulfilled
- Shipment created
Attachment Type: PDF (Packing Slip)
Variable Mapping (Shopify Fulfillment)
| Template Variable | Shopify Field | Description |
|---|---|---|
customer.name | {{Customer: Name}} | Customer name |
customer.email | {{Customer: Email}} | Recipient email |
order.id | {{Order: Name}} | Order number |
shipping.trackingNumber | {{Fulfillment: Tracking Number}} | Tracking number |
shipping.trackingUrl | {{Fulfillment: Tracking URL}} | Tracking link |
shipping.carrier | {{Fulfillment: Tracking Company}} | Carrier name |
shipping.estimatedDelivery | Calculated | Expected delivery date |
SaaS Invoice
Best For: Subscription businesses, B2B invoicing
Trigger Events:
- Invoice created
- Subscription renewed
- Payment received
Attachment Type: PDF
Variable Mapping
| Template Variable | Source Field | Description |
|---|---|---|
company.name | Static | Your company name |
company.logo | Static | Your logo URL |
customer.name | Trigger data | Customer/company name |
customer.email | Trigger data | Billing email |
invoice.number | Generated | Invoice number |
invoice.date | Current date | Invoice date |
invoice.dueDate | Calculated | Due date (net 30) |
items | Trigger data | Line items array |
subtotal | Calculated | Sum of items |
tax.rate | Your tax rate | Tax percentage |
tax.amount | Calculated | Tax amount |
total | Calculated | Grand total |
Project Status
Best For: Project management tools (Airtable, Monday.com, Notion)
Trigger Events:
- Project status changed
- Milestone completed
- Weekly schedule
Attachment Type: Excel
Variable Mapping (Airtable)
| Template Variable | Airtable Field | Description |
|---|---|---|
project.name | {{Record: Name}} | Project name |
project.status | {{Record: Status}} | Current status |
project.progress | {{Record: Progress}} | 0-100 percentage |
project.startDate | {{Record: Start Date}} | Start date |
project.targetDate | {{Record: Target Date}} | Target completion |
tasks | Linked records | Task list array |
metrics | Formula fields | Summary metrics |
Weekly Report
Best For: Scheduled reporting from Google Sheets, databases
Trigger Events:
- Schedule (weekly)
- New summary row
Attachment Type: Excel
Variable Mapping (Google Sheets)
| Template Variable | Google Sheets | Description |
|---|---|---|
report.title | Cell or static | Report title |
report.period | Date range | Reporting period |
report.generatedAt | Current date | Generation timestamp |
metrics | Named range | Key metrics |
data | Sheet data | Full data export |
Tip: Create a summary row in your sheet that aggregates weekly data, then use “New Row” as the trigger.
Ticket Resolution
Best For: Support desks (Zendesk, Freshdesk, Intercom)
Trigger Events:
- Ticket solved
- Conversation closed
Attachment Type: PDF (Transcript)
Variable Mapping (Zendesk)
| Template Variable | Zendesk Field | Description |
|---|---|---|
customer.name | {{Ticket: Requester Name}} | Customer name |
customer.email | {{Ticket: Requester Email}} | Customer email |
ticket.id | {{Ticket: ID}} | Ticket number |
ticket.subject | {{Ticket: Subject}} | Ticket subject |
ticket.status | resolved | Status (static) |
ticket.createdAt | {{Ticket: Created At}} | Creation date |
ticket.resolvedAt | {{Ticket: Updated At}} | Resolution date |
agent.name | {{Ticket: Assignee Name}} | Support agent |
messages | {{Ticket: Comments}} | Message thread |
Lead Magnet Delivery
Best For: Marketing forms (Typeform, Google Forms, Facebook Leads)
Trigger Events:
- Form submitted
- Lead captured
Attachment Type: PDF (Lead magnet document)
Variable Mapping (Typeform)
| Template Variable | Typeform Field | Description |
|---|---|---|
lead.name | {{Answer: Name}} | Lead’s name |
lead.email | {{Answer: Email}} | Lead’s email |
lead.company | {{Answer: Company}} | Company (if asked) |
resource.title | Static | Lead magnet title |
resource.description | Static | Description |
nextSteps | Static | Array of next actions |
Meeting Confirmation
Best For: Scheduling tools (Calendly, HubSpot Meetings)
Trigger Events:
- Meeting booked
- Invitee created
Attachment Type: PDF (Agenda)
Variable Mapping (Calendly)
| Template Variable | Calendly Field | Description |
|---|---|---|
host.name | {{Event: Owner Name}} | Host name |
host.email | {{Event: Owner Email}} | Host email |
attendee.name | {{Invitee: Name}} | Attendee name |
attendee.email | {{Invitee: Email}} | Attendee email |
meeting.title | {{Event: Type Name}} | Meeting type |
meeting.startTime | {{Event: Start Time}} | Start time |
meeting.endTime | {{Event: End Time}} | End time |
meeting.timezone | {{Invitee: Timezone}} | Timezone |
meeting.location | {{Event: Location}} | Location/video link |
Best Practices
1. Test with Sample Data
Always test your Zap with realistic data before going live:
1. Use Zapier's "Test" feature
2. Verify email renders correctly
3. Check PDF/Excel attachment
4. Confirm all variables populate2. Handle Missing Data
Use Zapier’s Formatter to provide defaults:
{{Contact: Company}} or "Valued Customer"3. Format Currency and Dates
Use Zapier’s Formatter app to:
- Convert cents to dollars (Ă· 100)
- Format dates (November 27, 2025)
- Add currency symbols ($99.00)
4. Use Pre-Formatted Fields
Our starter packs include pre-formatted fields in sample data:
priceFormattedinstead ofpricetotalFormattedinstead oftotaldateFormattedinstead of raw dates
Map to these fields for cleaner output.
Troubleshooting
Attachment Not Generating
- Verify PDF/Excel template ID is correct
- Check all required variables are mapped
- Ensure array data is properly formatted
Variables Not Populating
- Confirm variable names match exactly (case-sensitive)
- Check for typos in
{{variable}}syntax - Verify trigger data contains expected fields
Formatting Issues
- Use pre-formatted fields when available
- Apply Zapier Formatter for custom formatting
- Test with edge cases (long text, special characters)