Opening Problem Statement
Meet Sarah, an indie digital product creator who sells her design templates on Gumroad. Every time she makes a sale, Sarah wants to add the buyer’s email to her Beehiiv newsletter to keep them engaged with updates and new releases. But doing this manually takes her 1-2 hours at the end of each day, copying emails, adding them individually to Beehiiv, and updating her sales CRM in Google Sheets. This tedious task steals precious time she could spend creating more products or marketing her brand. Plus, manual entry risks errors and missed subscribers, leading to lost engagement and potential revenue.
This automation workflow solves Sarah’s problem by syncing new Gumroad sales directly to Beehiiv newsletter subscriptions as they happen. It also logs each sale in a Google Sheets CRM and sends a Telegram notification to her team instantly, eliminating manual work and human error.
What This Automation Does
When a new sale happens on Gumroad, this n8n workflow performs the following specific actions automatically:
- Triggers itself on every Gumroad sale using the Gumroad Sale Trigger node.
- Gets the list of Beehiiv publications to find the right newsletter to subscribe users to via an HTTP Request node.
- Adds the buyer’s email as a subscriber to the selected Beehiiv publication using a POST subscription HTTP request with API authentication.
- Appends the sale data — date, email, country, product name — into a Google Sheets spreadsheet functioning as a CRM via the Google Sheets node.
- Notifies the team on Telegram through a message with sale details using the Telegram node.
With this workflow, Sarah saves hours each day, maintains an up-to-date sales CRM without manual entry, grows her newsletter audience effortlessly, and keeps her team instantly informed about sales.
Prerequisites ⚙️
- Gumroad account (with at least one product listed and API access token generated under Settings > Advanced)
- Beehiiv account with at least one publication created and an API key generated
- Google Sheets account with a spreadsheet set up as a sales CRM
- Telegram account and bot to send notifications to a Telegram channel
- n8n account for building and hosting the workflow
Optional: You can self-host n8n for full control, speed, and security using services like Hostinger (see Hostinger n8n hosting).
Step-by-Step Guide
Step 1: Set up Gumroad Sale Trigger node
In your n8n editor, click the ‘+’ icon and add a Gumroad Sale Trigger node.
Navigate to the node’s credentials and create/connect your Gumroad API token (found under Gumroad Settings > Advanced > Create Application).
Set the resource type as “sale” so this node listens for each new sale event.
You should see the webhook URL generated. Use this URL to configure your Gumroad webhook if needed.
Once set, this node will emit sale data like email, product name, timestamp, and country on each new sale.
Common mistake: Forgetting to set the API token or resource type correctly causes the trigger not to activate.
Step 2: Add HTTP Request node to list Beehiiv publications
Add the HTTP Request node and select GET method.
Set the URL to https://api.beehiiv.com/v2/publications to fetch all publications from your Beehiiv account.
Under Authentication, choose “HTTP Header Auth” and provide your Beehiiv API key bearer token.
This node fetches the list of publications dynamically so you can reference publication IDs downstream.
Common mistake: Incorrect API key or missing authentication header will return 401 errors.
Step 3: Send POST subscription request to Beehiiv
Add another HTTP Request node configured as POST.
Use an expression for the URL: https://api.beehiiv.com/v2/publications/{{ $json.data[0].id }}/subscriptions to pick the first publication’s ID dynamically.
Set the body parameters with the buyer’s email pulled from the Gumroad trigger data: email: {{$json.email}}.
Ensure authentication is again set with the API key header.
This node creates the new newsletter subscriber in Beehiiv automatically.
Common mistake: Forgetting to enable ‘Send Body’ or mismatch of parameter names can prevent subscription creation.
Step 4: Append sale data to Google Sheets CRM
Add the Google Sheets node and select the append operation.
Connect your Google Sheets account credentials and select the spreadsheet ID and sheet name.
Map the columns:
date={{ $json.sale_timestamp }}email={{ $json.email }}country={{ $json.ip_country }}product name={{ $json.product_name }}
After running, your spreadsheet will add a new row for each sale with relevant details.
Common mistake: Incorrect sheet or document ID or missing permission will cause the append to fail.
Step 5: Set Telegram Chat ID using Set node
Add a Set node and create a string variable called telegramChatId with your chat or channel ID as value (e.g., -1001234567890).
This value will be used to send notifications in the Telegram node.
Common mistake: Using the wrong chat ID format or forgetting the negative sign for channels will block messages.
Step 6: Notify team in Telegram channel
Add a Telegram node and connect your Telegram API credentials (bot token).
In the text field, insert the message using expressions from the Gumroad trigger data, for example:
=🔔 New Gumroad sale!
Product: {{ $json.product_name }}
Email: {{ $json.email }}
Country: {{ $json.ip_country }}Select the chat ID from the Set node output.
When this node runs, your team sees an instant alert on Telegram with new sale details.
Common mistake: Not adding the bot as admin to the channel or using wrong chat ID blocks notifications.
Customizations ✏️
- Change the Beehiiv publication: Modify the
List publicationsnode or the Post subscription URL to target a different publication ID if you manage multiple newsletters. - Add more fields to Google Sheets: In the
append row in CRMnode, add extra columns like buyer name or sale amount by mapping additional Gumroad sale data. - Customize Telegram message format: In the
Notify in channelnode, edit the message text to include emojis, links, or custom text for your team. - Filter certain product sales: Add a
IFnode after the Gumroad trigger to only process sales of specific products to limit who gets subscribed.
Troubleshooting 🔧
Problem: “No data received from Gumroad sales trigger.”
Cause: Missing or incorrect Gumroad API token or webhook not configured properly.
Solution: Re-check your API credentials in the Gumroad Sale Trigger node and ensure Gumroad webhook URLs are active.
Problem: “HTTP 401 Unauthorized on Beehiiv request.”
Cause: Invalid or expired Beehiiv API key or wrong authentication method.
Solution: Regenerate your API key on Beehiiv and update the authentication headers in HTTP Request nodes.
Problem: “Google Sheets append fails with permissions error.”
Cause: Google account not authorized or spreadsheet not shared appropriately.
Solution: Verify your Google Sheets OAuth2 credentials and share the sheet with the service account email if needed.
Problem: “Telegram fails to send messages.”
Cause: Bot lacks admin privileges or wrong chat ID format.
Solution: Add your Telegram bot as admin to the channel and confirm the exact channel chat ID (starts with -100).
Pre-Production Checklist ✅
- Verify Gumroad API token is correct and webhook is active.
- Confirm Beehiiv API key is valid and publications list returns data.
- Ensure Google Sheets credentials are authorized and sheet IDs are correctly set.
- Test Telegram bot with a simple message before activating workflow.
- Run a test Gumroad sale (or simulate) to verify data flows and all nodes execute without errors.
Deployment Guide
Once all nodes are configured and tested, activate the workflow by toggling its switch in n8n.
n8n will listen for every new Gumroad sale, automatically subscribing new buyers to Beehiiv, logging sales in Google Sheets, and sending Telegram alerts to your team.
Monitor workflow executions via n8n’s execution list to handle any errors rapidly.
FAQs
Q: Can I use another newsletter platform instead of Beehiiv?
A: Yes, but you would need to change the HTTP request nodes to use the alternative platform’s API with appropriate authentication.
Q: Does this workflow consume API credits?
A: Yes, each Gumroad sale event and Beehiiv subscription call counts against their respective API limits—monitor accordingly.
Q: Is my data secure?
A: All API calls are authenticated with secure tokens, and n8n can be self-hosted for data privacy.
Q: Can I handle thousands of sales with this workflow?
A: Yes, n8n scales well but ensure your API rate limits and Google Sheets quota support the volume.
Conclusion
By following this guide, you’ve built a powerful n8n automation that seamlessly syncs Gumroad sales to Beehiiv newsletter subscribers, updates your Google Sheets CRM, and notifies your Telegram team instantly.
You’ve eliminated hours of manual work each day, prevented errors, and improved your engagement strategy. Next, consider extending your automation to segment subscribers based on purchase data or trigger personalized email campaigns from this subscriber list.
Keep automating smartly and enjoy your streamlined digital business workflow!