🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

Stripe to Google Sheets, sales logged and shared in Slack

Lisa Granqvist Partner Workflow Automation Expert

Sales comes in, and then the scramble starts. Someone needs to log the transaction, confirm the invoice exists, send the receipt, and tell the team. Miss one step and you’re chasing “did we bill them?” messages later.

This Stripe Sheets Slack automation hits RevOps first, but agency owners and busy finance leads feel it too. You get a clean record in Google Sheets, a Slack notification for visibility, and a customer receipt email without anyone copy‑pasting details.

Below, you’ll see exactly what the workflow does, what you need, and how the moving parts fit together so you can run it with confidence.

How This Automation Works

Here’s the complete workflow you’ll be setting up:

n8n Workflow Template: Stripe to Google Sheets, sales logged and shared in Slack

Why This Matters: Post-checkout busywork causes missed follow-ups

Stripe tells you a checkout completed, but your actual process usually lives somewhere else. A spreadsheet tab for transactions. Another tab for invoices. A Slack channel where the team expects a heads-up. And the customer waiting for a receipt link so they can file it, expense it, or forward it. Doing this manually feels “quick” until you’re doing it five times a day, switching between tools, hunting for invoice PDFs, and fixing typos that should never have happened. Honestly, the worst part is the uncertainty. You don’t notice the missed receipt until a customer replies days later.

The friction compounds. Here’s where it usually breaks down.

  • Someone logs the payment in Sheets, but forgets to add the invoice details, so reporting stays messy.
  • Slack notifications happen “when someone remembers,” which means the team doesn’t follow up fast on higher-intent buyers.
  • Receipts go out late (or from the wrong inbox), and customers end up asking for proof of purchase.
  • Invoice creation can lag behind checkout, so manual workflows fail when the PDF isn’t ready yet.

What You’ll Build: Stripe events logged to Sheets, shared to Slack, and receipted by email

This workflow listens for two Stripe events: a completed checkout and an invoice being created. When a checkout completes, it immediately logs the purchase details into a “transactions” tab in Google Sheets, then posts a message into Slack so your RevOps (or whoever owns follow-up) sees the sale right away. In the background, the workflow waits briefly, then looks up the matching invoice record in Sheets once Stripe has generated it. Finally, it emails the customer a personalized receipt message with a link to download their receipt (using your connected Gmail account). The result is a tight loop: sale captured, team notified, customer receipted, and records kept clean for later reporting.

The workflow starts in Stripe, because that’s your source of truth for payments. Google Sheets becomes the shared log for transactions and invoices, which keeps finance and ops on the same page. Slack provides the real-time nudge that makes follow-up actually happen.

What You’re Building

Expected Results

Say you handle 10 Stripe checkouts a week. Manually, logging the transaction (about 5 minutes), notifying the team in Slack (2 minutes), finding the invoice PDF later (maybe 5 minutes), and emailing a receipt (another 5 minutes) is roughly 15–20 minutes each time, or about 3 hours a week. With this workflow, you’re mostly done after the checkout triggers it. The wait and invoice lookup happen automatically, and the email goes out without you touching it.

Before You Start

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Stripe for checkout and invoice events.
  • Google Sheets to store transactions and invoices.
  • Slack to notify your internal channel.
  • Gmail (Google Workspace) to send customer receipt emails.

Skill level: Beginner. You’ll connect accounts, create one spreadsheet, and map a few fields.

Want someone to build this for you? Talk to an automation expert (free 15-minute consultation).

Step by Step

A Stripe checkout completes. When a customer finishes paying through Stripe Checkout, the workflow triggers immediately and pulls in the purchase details from Stripe.

The sale is logged to Google Sheets. A new row is added to your “transactions” tab, giving you a simple ledger you can filter, share, or reconcile later. Right after that, the workflow posts to Slack so the team sees the new sale in the channel you choose (the template uses a RevOps channel by default).

The workflow waits for the invoice. Stripe can create the invoice a little after the checkout, so a short delay is used to avoid trying to grab an invoice that doesn’t exist yet.

The invoice is found and the receipt email is sent. Once the invoice is available (and logged), the workflow looks up the invoice record and sends the customer an email with their receipt link using Gmail.

You can easily modify the Slack channel and the Google Sheets column mapping based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Stripe Trigger

Set up both Stripe event triggers so the workflow can capture checkout sessions and invoice creation events.

  1. Add and open Checkout Completion Trigger, then set Events to checkout.session.completed.
  2. Credential Required: Connect your stripeApi credentials in Checkout Completion Trigger.
  3. Add and open Invoice Event Trigger, then set Events to invoice.created.
  4. Credential Required: Connect your stripeApi credentials in Invoice Event Trigger.
  5. (Optional) Keep Flowpast Branding as a visual note; it does not affect execution.

Step 2: Connect Google Sheets

Log checkout and invoice data into Google Sheets for tracking and later lookup.

  1. Open Record Purchase Log and set Operation to append.
  2. Set Document ID to [YOUR_ID] and Sheet Name to [YOUR_ID] (transactions sheet).
  3. Verify column mappings use expressions like {{$json.data.object.customer_details.name}}, {{DateTime.fromSeconds($json.data.object.created ).toFormat('yyyy-MM-dd HH:mm:ss')}}, and {{new Intl.NumberFormat("en-US", { style: "currency", currency: $json.data.object.currency}).format($json.data.object.amount_total/100)}}.
  4. Credential Required: Connect your googleSheetsOAuth2Api credentials in Record Purchase Log.
  5. Open Record Invoice Log and set Operation to append with Document ID [YOUR_ID] and Sheet Name [YOUR_ID] (invoices sheet).
  6. Confirm expressions like {{$json.data.object.id}}, {{$json.data.object.invoice_pdf}}, and {{new Intl.NumberFormat("en-US", { style: "currency", currency: $json.data.object.currency}).format($json.data.object.amount_paid/100)}}.
  7. Credential Required: Connect your googleSheetsOAuth2Api credentials in Record Invoice Log.

⚠️ Common Pitfall: Replace both [YOUR_ID] values with your actual Google Sheet ID and worksheet names, otherwise the append and lookup operations will fail.

Step 3: Set Up the Wait and Invoice Lookup

Delay the flow until invoices are created, then locate the matching invoice record.

  1. Open Delay for Invoice and configure the wait timing if desired (defaults are acceptable for a basic delay).
  2. Open Find Invoice Record and set the filter Lookup Column to invoice_id with Lookup Value {{$json.invoice_id}}.
  3. Set Document ID to [YOUR_ID] and Sheet Name to [YOUR_ID] (invoices sheet).
  4. Credential Required: Connect your googleSheetsOAuth2Api credentials in Find Invoice Record.

Record Purchase Log outputs to both Notify Revenue Ops and Delay for Invoice in parallel.

Step 4: Configure Output and Notifications

Send the customer receipt via Gmail and notify Revenue Ops in Slack.

  1. Open Send Receipt Email and set Send To to {{$('Record Purchase Log').item.json.email}}.
  2. Set Subject to Your Demo Karma purchase and keep the HTML Message content intact, including {{$json.invoice_pdf}} for the receipt link.
  3. Credential Required: Connect your gmailOAuth2 credentials in Send Receipt Email.
  4. Open Notify Revenue Ops and set Channel to [YOUR_ID] (revops channel).
  5. Confirm the Slack message uses {{$json.amount_total}}, {{$json.name}}, and the Stripe payment link containing {{$('Checkout Completion Trigger').item.json.data.object.payment_intent}}.
  6. Credential Required: Connect your slackOAuth2Api credentials in Notify Revenue Ops.

Tip: Verify the Stripe dashboard link in Notify Revenue Ops uses your live or test account ID to avoid broken payment links.

Step 5: Test and Activate Your Workflow

Run a complete test to ensure all logs, notifications, and emails work as expected.

  1. Click Execute Workflow and trigger a test Stripe checkout session so Checkout Completion Trigger fires.
  2. Confirm Record Purchase Log appends a row in the transactions sheet and Notify Revenue Ops posts a Slack message.
  3. Wait for Invoice Event Trigger to fire, then confirm Record Invoice Log writes the invoice row.
  4. Verify Find Invoice Record locates the invoice and Send Receipt Email sends a message containing the PDF link.
  5. When tests pass, toggle the workflow to Active to run in production.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Troubleshooting Tips

  • Stripe credentials and event permissions can be the culprit. If triggers don’t fire, check your Stripe webhook/events setup and confirm you’re using the right account (sandbox vs. production).
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • Google Sheets and Gmail permissions are picky in shared workspaces. If rows aren’t being written or emails aren’t sending, re-check the connected Google account and that it has access to the “Payments” spreadsheet and the sending inbox.

Quick Answers

What’s the setup time for this Stripe Sheets Slack automation?

About 30 minutes if your Stripe, Google, and Slack accounts are ready.

Is coding required for this Stripe Sheets Slack automation?

No. You’ll connect accounts and map a few fields into Google Sheets and your Slack message.

Is n8n free to use for this Stripe Sheets Slack workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in Gmail/Google Workspace costs if you’re not already subscribed.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I modify this Stripe Sheets Slack automation for different use cases?

Yes, and it’s common. You can change the Slack “Notify Revenue Ops” step to post in a different channel (or DM a specific user), and you can adjust the Google Sheets logging steps to match your columns. Some teams also tweak the delay before “Find Invoice Record” if invoice creation in Stripe takes longer, or edit the Gmail receipt template to match their exact support language.

Why is my Stripe connection failing in this workflow?

Usually it’s the wrong Stripe environment. People test in sandbox but connect credentials from production (or the other way around). It can also be missing event access for the checkout/invoice triggers, or a revoked key after someone rotated credentials. Reconnect Stripe in n8n and then re-run a test checkout to confirm the trigger is firing.

What volume can this Stripe Sheets Slack workflow process?

Plenty for most small teams.

Is this Stripe Sheets Slack automation better than using Zapier or Make?

Often, yes, because this flow isn’t just “send A to B.” You’re handling two Stripe triggers, writing to two sheet tabs, waiting for invoice timing, then looking up the right record before sending an email. n8n is built for that kind of branching and “wait then continue” logic, and you can self-host to avoid per-task pricing when volume grows. Zapier or Make can still work if you keep the process very simple, but the moment you want reliable invoice timing and a lookup step, it gets fiddly. If you’re torn, Talk to an automation expert and explain your volume and tools.

Once this is live, every checkout leaves a trail your team can trust. Less chasing, fewer gaps, and a calmer end-of-week reconciliation.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal