Welcome new Stripe customers in MailForge and Slack
The moment someone pays in Stripe, add them to your MailForge welcome list and post the win to Slack so your team sees every new customer in real time.
Build an agent workflow triggered by a Stripe webhook. Subscribe to customer.created and checkout.session.completed events so we catch the moment a new paying customer appears in Stripe.
When the webhook fires, the agent should:
1. Read the Stripe event payload and pull the customer's email, name, plan or product name, and amount paid (converted from Stripe's smallest currency unit into dollars). If the event is checkout.session.completed, expand line_items to get the plan. If it is customer.created, read the customer object directly.
2. Skip the event entirely if livemode is false in the Stripe payload. We never want test-mode charges to reach MailForge or Slack.
3. Dedupe on the customer email so a re-charge, plan change, or duplicate webhook does not spam Slack or re-add the person to the welcome list. Use a simple keyed idempotency check on customer email plus the customer.created or first paid checkout session.
4. Call MailForge Create or Update Contact to upsert the person by email. Carry over the plan name and any useful attributes (region, currency, amount) as custom fields on the contact, and tag with the plan tier so downstream segmentation works.
5. Call MailForge Add Contact to List to drop them into a dedicated "New Customers" onboarding list. The list should be configurable by the operator when they run the workflow; the welcome campaign is triggered by MailForge itself when a contact joins that list.
6. In parallel, use the Slack Bot Send a Message operation to post a short celebratory note to a #new-customers channel. Include the customer's name (or email if name is missing), the plan they bought, and the amount in dollars. Keep it one line, friendly, and use Slack mrkdwn formatting.
If any step fails, log the error and continue. A MailForge failure should never block the Slack celebration and vice versa.
Ask the operator at setup time for: the Slack channel to post to, the MailForge list id (or name) to add contacts to, and whether to include the dollar amount publicly in the Slack message.
Additional information
What does this prompt do?
- The moment a new paying customer appears in Stripe, add them to your MailForge welcome list so your onboarding sequence starts on its own.
- Post a short win message to a Slack channel with the customer name, plan, and amount so the whole team sees every new deal in real time.
- Skip Stripe test charges and dedupe on customer email so repeat charges or plan changes never spam your team channel.
What do I need to use this?
- A Stripe account with permission to add a webhook
- A MailForge account and the onboarding list you want new customers dropped into
- A Slack workspace and the channel where new customer wins should be announced
How can I customize it?
- Switch the MailForge list based on plan tier so trial, starter, and enterprise customers each land in their own welcome journey.
- Point the Slack message at a different channel (like #wins or #revenue) or expand it to include region, currency, or MRR.
- Tighten the filter to only fire above a dollar threshold, only for annual plans, or only for specific products.
Frequently asked questions
Will this fire for test-mode charges in Stripe?
What happens if a customer upgrades, downgrades, or is charged again later?
Can I use a different email tool like Mailchimp or Klaviyo instead of MailForge?
Do I need any code or engineering work in Stripe?
Can I change what the Slack message says?
Related templates
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.
Every weekday morning, roll up your sprint's work items into a clear per-person standup summary and post it to your team's Slack channel before you meet.
Every three hours we scan Braintree for new disputes and chargebacks, open a tracked ticket with a tailored evidence checklist, and alert your team in Slack before the response deadline slips.
Every weekday morning we check your most important Databricks tables for freshness and data problems, and ping Slack only when something actually looks wrong.
Every Monday, automatically find which employee accounts on your company domain turned up in data breaches and get a plain-English briefing in Slack.
When a pipeline build fails, we post a tight Slack card naming who pushed, the likely cause, and a link to the build so on-call can triage in seconds.
Never miss a new paying customer again.
Connect Stripe, MailForge, and Slack once, and every new customer lands in your welcome list and your team channel the second they pay.