Templates

Dunning email templates for failed Stripe payments

Copy-ready wording for the three emails Dunity sends your customers: when a payment fails, before a card expires, and when retries end. Each one is checked against the tags Dunity fills in.

  • $29/month, flat
  • Cancel anytime
  • Restricted Stripe key only

How the tags work

A tag such as {{amount}} is replaced with the real value when the email goes out. The body must contain {{update_link}}, or Settings won’t save it. Subjects can use the other tags, but not the link.

Payment failed

{{update_link}}
required: links to update the card on file
{{invoice_id}}
the Stripe invoice ID
{{amount}}
amount due, formatted as currency

Card expiring

{{update_link}}
required: links to update the card on file
{{card_brand}}
e.g. Visa
{{card_last4}}
last 4 digits of the card
{{expiry_date}}
e.g. 03/2027

Retries ended

{{update_link}}
required: links to update the card on file
{{discount_percent}}
the % off being offered
{{invoice_id}}
the Stripe invoice ID
{{amount}}
amount due, formatted as currency

Payment failed

Sent once to your customer, when a payment first fails. Paste it in Settings, on the “Dunning email” card.

  • Friendly

    Warm and low pressure. If you have paused retries in Settings, delete the sentence about trying the card again.

    Subject

    A quick note about your {{amount}} payment

    Body

    Hi there,
    
    We tried to charge your card for {{amount}} (invoice {{invoice_id}}) and it didn't go through. It happens, and it's usually quick to sort out.
    
    You can {{update_link}}. We'll also try the card again soon.
    
    Thanks for being a customer.
  • Short and plain

    Brief and direct, with the amount and invoice up front.

    Subject

    Payment failed: {{amount}}

    Body

    Your payment of {{amount}} for invoice {{invoice_id}} didn't go through. Please {{update_link}}.
  • Formal

    For business customers. Set a reply-to in Settings, under Dunning email, so a reply reaches you.

    Subject

    Action needed: payment for invoice {{invoice_id}}

    Body

    We were unable to collect {{amount}} for invoice {{invoice_id}}.
    
    Please {{update_link}} so the payment can be taken. If you have a question about this invoice, reply to this email.
    
    Thank you.

Card expiring

Sent 30 and 7 days before a card expires, once you turn card expiration reminders on. They are off until you do. Paste it in Settings, on the “Card expiration reminders” card.

  • Friendly

    Warm and low pressure.

    Subject

    Your card ending in {{card_last4}} expires {{expiry_date}}

    Body

    Hi there,
    
    Your {{card_brand}} card ending in {{card_last4}} expires {{expiry_date}}. To avoid any interruption, you can {{update_link}} before then.
    
    Thanks for being a customer.
  • Short and plain

    Brief and direct.

    Subject

    Card expiring {{expiry_date}}

    Body

    Your {{card_brand}} card ending in {{card_last4}} expires {{expiry_date}}. Please {{update_link}} before then.

Retries ended

Sent once, when retries end, once you turn win-back offers on. It offers the discount you set as a credit on the invoice. Paste it in Settings, on the “Win-back offers” card.

  • Plain offer

    States the discount plainly. It uses the percentage you set in Settings.

    Subject

    {{discount_percent}}% off if you update your card

    Body

    We couldn't charge your card for invoice {{invoice_id}} ({{amount}}), so we've stopped retrying.
    
    Update your card now and we'll take {{discount_percent}}% off this invoice. You can {{update_link}}.
  • Short and direct

    The shortest version, with the discount in the subject.

    Subject

    We'll take {{discount_percent}}% off invoice {{invoice_id}}

    Body

    Your card was declined on several attempts for {{amount}}. If you {{update_link}} now, {{discount_percent}}% comes off this invoice.

Writing your own

  • Keep {{update_link}} in the body once. It becomes a link that reads “update your payment method”.
  • Write plain text. Dunity shows your text as you typed it and turns each line break into a break, so any HTML you type appears as written.
  • Leave the decline reason out. None of the tags carries it, which suits Stripe’s advice not to explain a lost or stolen card to the customer.
  • Promise only what will happen. If you have paused retries, don’t say you will try the card again.
  • Keep the subject under 200 characters and the body under 10,000, the limits Settings enforces.

The default wording and when each email goes out are on how Dunity works, and what to do about a specific decline is in the decline code guides.

Email template questions

What people ask before they change the wording.

Where do I paste these templates?

In Settings, on the card for each email: Dunning email, Card expiration reminders or Win-back offers. Each card has a Subject and a Body. Leave a field empty and Dunity uses its default wording.

Can I put the decline reason in the email?

No. None of the tags carries it, and Stripe advises against telling a customer why a lost or stolen card was declined. The decline code guides say what Dunity does with each code.

Can I use HTML, bold text or my logo?

No. Dunity sends your text as plain text and turns line breaks into breaks. Anything in angle brackets appears as you typed it. The only link is the update link, which Dunity adds where you put the tag.

Will the email come from my own address?

No. It comes from Dunity’s sending address. You can set a reply-to under Dunning email, and it is used on all three emails: payment failed, card expiry and win-back.

Do I have to write my own?

No. Dunity sends its default wording until you save your own. Use these when you want a different tone.