Daily Braintree declined-payment recovery digest to Slack

Every weekday at 8am, your billing team gets a Slack rundown of yesterday's failed Braintree charges, the revenue at risk, and who to chase first.

Agentic Task
BraintreeSlack BotFinanceOperationsDaily DigestsNotifications & AlertsAI Reports
PromptCreate

Every weekday at 8am, run a declined-payment recovery digest so our billing team can chase failed Braintree charges the same morning. This runs on a schedule (cron), Monday through Friday at 8am.

Start with Braintree Search Transactions to pull every transaction created in the last 24 hours whose status is a failure: processor declined, gateway rejected, failed, or authorization expired. Skip anything in test mode, and skip any charge that has already been recovered (for example, a later successful charge to the same customer for the same amount or order). For each qualifying transaction, read the amount, currency, status, and the specific decline or rejection reason.

For each remaining failed transaction, use Braintree Search Customers to look up the customer by their ID or email and pull their name and email address so the billing team knows exactly who to contact. If a customer cannot be matched, still include the charge and note that contact details are missing.

Then build the digest. Total up the revenue at risk across all failed charges (amounts are decimal strings in each transaction's currency, so keep currencies separate if there is more than one). List each affected customer with the amount, the specific decline reason, and a short suggested outreach note tailored to that reason (for example, an expired card reads differently from an insufficient-funds decline). Order the list so the largest recoverable amounts come first.

Post the finished digest to our billing channel with Slack, Send a Message. Lead with the total revenue at risk and the number of affected customers, then the prioritized customer list with amounts, decline reasons, and the suggested notes. Use clear Slack formatting so it is easy to skim on a phone.

If there were no qualifying declined payments in the last 24 hours, post a brief all-clear to the same channel (for example, "No declined Braintree payments in the last 24 hours") instead of staying silent, so the team knows the check ran.

What does this prompt do?

  • Each weekday morning, gathers every Braintree payment that was declined, rejected, failed, or expired in the last 24 hours.
  • Adds each customer's name and email so your team knows exactly who to reach out to.
  • Totals the revenue at risk and ranks customers by the biggest recoverable amounts first.
  • Posts a clean digest to your billing Slack channel with a suggested outreach note for each customer, or a quick all-clear when there were no failures.

What do I need to use this?

  • A Braintree account with permission to view transactions and customers.
  • A Slack workspace with a channel for your billing team.
  • The name of the Slack channel where the digest should be posted.

How can I customize it?

  • Change the schedule, for example run it seven days a week or later in the morning.
  • Choose which Slack channel receives the digest.
  • Adjust which failure types count, or set a minimum amount so only larger declines are flagged.

FAQs

Which failed payments does it include?
It looks for charges from the last 24 hours that were declined by the processor, rejected by the gateway, outright failed, or where the authorization expired.
Will it flag test transactions?
No. Test-mode charges and payments that have already been recovered are skipped, so your team only sees real, still-open issues.
What happens on a day with no failed payments?
You still get a short all-clear message in Slack, so you know the check ran and there is nothing to chase.
Do I need to write the outreach messages myself?
No. Each customer in the digest comes with a short suggested note you can copy, tweak, and send.
Can I run this on weekends too?
Yes. It defaults to weekday mornings, but you can set it to run on any days and times you like.

Related templates

Build a credential rotation checklist when someone leaves

When someone leaves, we check which shared passwords they used in their final months and post a ranked rotation list to your security channel.

1Password
Rippling
Slack Bot
+1
Agentic Task
Weekly Amazon S3 bucket security audit posted to Slack

Every Monday, check every S3 bucket for public exposure, missing encryption and weak backup settings, then get the risks ranked in Slack.

Amazon S3
Slack Bot
Google Sheets
Agentic Task
Log Agorapulse social conversations to HubSpot contacts

Twice every weekday, the conversations from your social inbox land on the right HubSpot contact timelines, with a Slack recap for sales.

Agorapulse
HubSpot
Slack Bot
Agentic Task
Clean up HubSpot contacts from your Amazon SES suppression list

Every morning, find the addresses that hard bounced or filed a spam complaint, update the matching HubSpot contacts, and post a short Slack recap.

Amazon SES
HubSpot
Slack Bot
Agentic Task
Draft polite follow-ups for emails that never got a reply

Every weekday at 4pm, spot the threads that went quiet, stage a ready-to-send nudge in your mailbox, and get a ranked Slack recap.

Aurinko
Google Sheets
Slack Bot
Agentic Task
Replay failed SQS messages when a bug fix is merged

When you merge a fix in GitHub, this agent checks the matching dead-letter queue, replays the failed messages, and reports back on the pull request and in Slack.

Amazon SQS
GitHub
Slack Bot
Agentic Task

Stop letting failed payments slip through the cracks.

Start every morning with a clear list of the declined charges worth chasing and exactly who to contact.