← Back to blog

#email

50 articles

Cloudflare Workers Cron Triggers Transactional Email with Rovela (2026): triggers.crons + scheduled() + Idempotency-Key per Window

Cloudflare Workers Cron Triggers Transactional Email with Rovela (2026): triggers.crons + scheduled() + Idempotency-Key per Window

Wire Cloudflare Workers Cron Triggers (UTC five-field cron in wrangler triggers.crons + scheduled()) to Rovela POST /emails. Store ROVELA_API_KEY with wrangler secret, aggregate live digests, and send with a window-scoped Idempotency-Key from controller.scheduledTime. Distinct from HTTP Workers email and Azure/GCP/AWS/Netlify/Fly/Render/Railway/Vercel cron.

Read more →
Polar.sh Webhook Confirmation Email with Rovela (2026): Standard Webhooks + Idempotency-Key

Polar.sh Webhook Confirmation Email with Rovela (2026): Standard Webhooks + Idempotency-Key

Verify Polar webhook-id / webhook-timestamp / webhook-signature on the raw body, handle order.paid / subscription.created, and send branded confirmations via Rovela POST /emails with Idempotency-Key = polar-order.paid-{id} or polar-subscription.created-{id}. Polar owns OSS/indie checkout; Rovela delivers. Distinct from Lemon Squeezy, Paddle, and Stripe webhook posts.

Read more →
Paddle Billing Webhook Email with Rovela (2026): Paddle-Signature + Idempotency-Key

Paddle Billing Webhook Email with Rovela (2026): Paddle-Signature + Idempotency-Key

Verify Paddle-Signature (HMAC-SHA256 of ts:rawBody), handle transaction.completed / subscription.created, resolve buyer email, and send branded confirmations via Rovela POST /emails with Idempotency-Key = paddle-transaction.completed-{txn_id} or paddle-subscription.created-{sub_id}. Paddle owns checkout; Rovela delivers. Distinct from Stripe, Shopify, and Lemon Squeezy webhook posts.

Read more →