SequenzySequenzy
FeaturesPricingCustomersDocsChangelogBlog
Get Started

Sequenzy

Email Marketing Tool for SaaS.

Compare
  • vs Resend
  • vs Mailchimp
  • vs Loops
  • vs ConvertKit
X vs Y
  • Resend vs SendGrid
  • Loops vs Mailchimp
  • Plunk vs Postmark
  • Bento vs Klaviyo
Alternatives
  • Mailchimp
  • Resend
  • Loops
  • ConvertKit
Pricing Guides
  • Mailchimp Pricing
  • Klaviyo Pricing
  • HubSpot Pricing
  • ActiveCampaign
  • Brevo Pricing
  • Customer.io Pricing
Free Tools
  • AI Email Writer
  • AI HTML Email Builder
  • Email Validator
  • SPF Checker
  • DKIM Checker
  • Subject Line Tester
Glossary
  • SPF
  • DKIM
  • DMARC
  • Email Deliverability
Templates
  • Churn Prevention
  • Follow-up
  • Onboarding
  • Transactional
Email Marketing For
  • Dentists
  • Real Estate
  • Restaurants
  • Photographers
Sequenzy For
  • Reduce Churn
  • Convert Free Trials
  • Recover Payments
  • Automate Onboarding
Subject Lines
  • Welcome
  • Follow-Up
  • Black Friday
  • Win-Back
Newsletter Ideas
  • SaaS
  • E-commerce
  • Real Estate
  • Nonprofit

AI Agents

  • MCP Integration
  • MCP Email Tools
  • AI Agent Email
  • OpenClaw
  • Cowork

Vibe Coding

  • Cursor
  • Bolt.new
  • Lovable
  • Replit

Sequences

  • What is a Sequence?
  • Onboarding
  • Trial-to-Paid
  • Nurture
Guides
  • Next.js
  • Node.js
  • Python
  • Stripe
  • Ruby on Rails
  • What Is Email Marketing?
  • How to Start
  • Strategy Guide
  • Grow Your List
  • Improve Open Rates

Best Tools

  • Email Marketing Tools
  • Newsletter Platforms
  • Automation Tools
  • Transactional Email
  • Free Tools

Resources

  • Customer Stories
  • Affiliates
  • Sequenzy Review
  • Blog
  • Sequenzy Facts for AI
  • Email vs Social Media

Developers

  • Docs
  • TypeScript SDK
  • Better Auth Plugin
  • GitHub
© Sequenzy. All rights reserved.•🇺🇦 Made in Ukraine
|
Terms of ServicePrivacy PolicyDPAContact
Back to Blog
Transactional EmailEmail MarketingSEO

Dunning Email Template for Failed Payments and Grace Periods

Nik
Nik@nikpolale
June 28, 2026
9 min read
Dunning Email Template for Failed Payments and Grace Periods

TL;DR

A useful dunning email explains that a charge failed, what the customer should do next, and what happens during the grace period. Stop the sequence after payment succeeds and do not invent a decline reason you do not have.

Dunning is the recovery path after a billing attempt fails. The email should reduce uncertainty without shaming the customer: identify the account, give one secure action, explain the next checkpoint, and state the real consequence of inaction.

Start with the payment event

Do not write “your card was declined” when the provider only returned a generic failure. Preserve the event’s factual reason and use a safe fallback.

Event dataCopy useFallback
Account or workspace“Your Acme Analytics payment needs attention”Product name
Amount and currencyConfirm what was attemptedOmit if unavailable
Failure categoryExplain expired card, insufficient funds, or generic failure“We could not complete the payment”
Retry dateSet expectation“We will retry soon”
Grace-period endExplain service impactDo not promise a date the product does not enforce
Billing portalOne primary actionSupport contact if unavailable

Use the same subscription state that powers the product. If the account is still active, say so. If access is limited, say what is limited and when.

A staged sequence

StageGoalStop condition
First failureMake the issue easy to fixPayment succeeds or subscription is canceled
Retry reminderExplain the next attemptUpdated method or successful retry
Grace-period noticeExplain the real deadlinePayment, cancellation, or manual review
Final noticeConfirm the consequenceNo additional promotional follow-up

Avoid sending all four messages in one day. Use the provider’s retry schedule and suppress after any successful payment event.

Template

Subject: We couldn’t process your {{product_name}} payment

Preheader: Update your payment method to keep your account active.

Hello {{customer_name}},

We couldn’t complete the {{amount}} payment for {{product_name}} on {{attempt_date}}. Your account is {{account_state}} while we retry the payment.

[Update payment method]

{{failure_explanation}}

We will try again on {{retry_date}}. If the payment is not successful by {{grace_period_end}}, {{actual_account_consequence}}.

If you believe this is an error, contact {{support_email}} and include account ID {{account_reference}}. Please do not email card details.

{{company_name}}

Failure explanations

Use only values supplied by the processor:

  • Expired: “The payment method on file has expired.”
  • Insufficient funds: “The payment provider reported insufficient funds.”
  • Generic: “The payment provider could not complete the charge.”
  • Authentication required: “Your bank requires an additional verification step.”

Never expose processor codes, card data, or an unsupported claim that the customer canceled the payment.

Suppression and idempotency

The workflow needs a stable payment-attempt ID. Do not create duplicate reminders when a webhook is delivered twice. Cancel queued messages when:

  • a payment succeeds;
  • the customer updates the method;
  • the subscription is canceled;
  • the account is placed under manual billing review;
  • the grace period ends and another product state owns the communication.

QA checklist

  • Replay duplicate and out-of-order payment events.
  • Verify currency, amount, dates, and account state.
  • Test a missing failure reason.
  • Confirm the update link requires the correct account authorization.
  • Confirm every follow-up stops after payment success.
  • Check that the message remains useful when the customer is on mobile.

For AI-assisted versions, see the dunning email generator. For a narrower card-expiration event, use the card expiration template.

Keep the sequence from becoming noise

Use the processor’s retry events as the source of truth, but add a quiet period so a burst of webhook failures does not create a burst of emails. A practical policy might be:

SituationCommunication
First failed attemptOne clear recovery email
Retry scheduledA reminder only if the first action was not completed
Repeated failureExplain the actual grace-period date
Customer contacted supportPause automated escalation
Payment recoveredConfirmation or no further dunning

The exact timing belongs in the billing policy. The important point is that each message has a different job and that the customer can see which state the account is in.

Claims and compliance review

Have finance approve currency, tax, late-fee, suspension, and collection language. Have security review the billing URL and the way account references are exposed. An AI-generated sentence such as “your account will be deleted” is unacceptable unless the product really does that under the customer’s contract.

Test with customers who pay by invoice, customers on a grace period, and customers with multiple subscriptions. Those cases often require different recipients and different next actions.

Built for AI teams

Automate your email marketing

Join thousands of teams sending better email with Sequenzy.

Start for Free

No credit card required

Why Sequenzy

  • AI EditorWrite emails with natural language
  • CLI & MCPRun email from your terminal or AI agents
  • AutomationSet up sequences in minutes
  • Landing PagesLaunch pages that convert
  • High DeliverabilityLand in inbox, not spam

What you get

  • Unlimited emails
  • Custom domains
  • Analytics
  • API access