Use Cases/Email

Transaction emails that build trust

Send professional order confirmations the instant customers check out. Product details, shipping info, and tracking links in one beautiful email.

Instant DeliveryDynamic TemplatesOpen Tracking
import { Stack0 } from '@stack0/sdk'
const stack0 = new Stack0({ apiKey: process.env.STACK0_API_KEY })
// Send order confirmation email
export async function sendOrderConfirmation(order: Order) {
await stack0.mail.send({
from: 'orders@yourdomain.com',
to: order.customer.email,
subject: `Order #${order.id} confirmed`,
templateId: 'order-confirmation',
templateVariables: {
customerName: order.customer.name,
orderId: order.id,
orderDate: order.createdAt.toLocaleDateString(),
items: order.items.map(item => ({
name: item.name,
quantity: item.quantity,
price: item.price.toFixed(2),
imageUrl: item.imageUrl,
})),
subtotal: order.subtotal.toFixed(2),
shipping: order.shipping.toFixed(2),
tax: order.tax.toFixed(2),
total: order.total.toFixed(2),
shippingAddress: order.shippingAddress,
estimatedDelivery: order.estimatedDelivery,
},
})
}

Features

What's included

Dynamic Templates

Loop through products, calculate totals, render images. Templates handle complexity.

Instant Delivery

Sub-second sending for transaction emails. Customers see confirmation immediately.

Open Tracking

Monitor order email engagement. Identify delivery issues before customers complain.

Bounce Handling

Invalid emails flagged. Know when orders might not reach customers.

Status Updates

Send shipped, delivered, and return emails from the same template system.

Scheduling

Schedule follow-up emails. Review requests, reorder reminders, and more.

Why Stack0

Built for production

Instant confirmation

Order emails sent within seconds of purchase. No anxious waiting for customers.

Dynamic line items

Render product images, quantities, and prices. Template loops handle any cart size.

Shipping details

Include address, carrier, tracking number, and estimated delivery in one email.

Track engagement

See open rates on order emails. Identify delivery issues early.

TypeScript SDK

Type-safe order data means fewer bugs in critical transaction flows.

Simple pricing

$0.50 per 1,000 emails. No premium for transactional emails.

Applications

Common implementations

Purchase Confirmation

Confirm orders with full details immediately after checkout.

Shipping Notification

Notify customers when orders ship with tracking information.

Delivery Confirmation

Confirm delivery and prompt for reviews or feedback.

Subscription Receipts

Send receipts for recurring subscription charges.

FAQ

Frequently asked questions

Yes. Pass image URLs in your template variables and use them in your email template. Images are displayed inline. We recommend using your CDN URLs for reliable image loading.

Use template loops with the 'items' array. Your template can iterate over items to display each product with its name, quantity, price, and image. There's no limit on the number of items.

Use the same template system for shipping notifications. Create templates for 'shipped', 'out-for-delivery', and 'delivered' statuses. Include tracking numbers and carrier links in your template variables.

Order confirmations are sent with high priority and typically delivered within 1-3 seconds. This ensures customers see confirmation immediately after checkout.

Yes. Open tracking is enabled by default. You can see open rates in your dashboard or receive webhooks when emails are opened. This helps identify delivery issues early.

Ready to build?

Plans start at $5/month.

Get Started