Back to Catalog

Templates by Rosh Ragel

Manage ClickUp Tasks with Natural Language via Telegram Bot and GPT-4.1

📌 What It Does This workflow connects a Telegram bot with your ClickUp workspace, allowing you to create, read, update, and delete tasks just by sending a message. The AI agent interprets natural language commands and takes the appropriate action — all without needing to open ClickUp. It’s like having a personal assistant inside Telegram that manages your task list for you. ✅ Prerequisites To use this workflow, you'll need the following credentials set up in n8n: Telegram Bot API Credential (used in all Telegram nodes) ClickUp OAuth2 Credential (for task operations) OpenAI Credential (to power the AI agent that parses your commands) ⚠️ Before First Use Make sure to add your bot's user ID to the Ignore Bot Messages node. This prevents infinite loops caused by the bot responding to its own messages. If you're unsure of your bot's ID: Temporarily disable the two Telegram tool nodes connected to the AI Agent. Send a test message from the bot and capture its ID. Add that ID to the ignore filter, then re-enable the nodes. ⚙️ How It Works Trigger: The workflow starts when your Telegram bot receives a message. Ignore Self: If the message was sent by the bot itself, the workflow stops. AI Analysis: The message is passed to an AI agent (OpenAI) that determines what action to take. Decision Tree: 📌 Create a new task in ClickUp ✏️ Update an existing task 🔍 Find a task and return its details 🗑️ Delete a task ❓ Ask for more details if input is unclear ✅ Send confirmation or feedback to the user 💡 Example Use Cases “Add a task called ‘Follow up with supplier’ for tomorrow.” “What tasks are due this week?” “Update the task ‘Website Launch’ to ‘in progress’.” “Delete the task ‘Old client notes’.” This workflow is ideal for solo operators, remote teams, or anyone who wants to manage ClickUp while on the go — without switching apps. 🛠️ Setup Instructions Telegram Bot: Create a Telegram bot using BotFather Add your Telegram credential to all Telegram nodes in this workflow Bot ID Filter: Add your bot’s Telegram user ID to the Ignore Bot Messages node OpenAI Setup: Add your OpenAI credential to the AI Agent node ClickUp Integration: Connect your ClickUp credential Set your workspace, list, and folder IDs in the task creation and search nodes 🚀 How to Use Save the Telegram bot to your contacts Open the Telegram chat with your bot and send a message like: "Add a task to follow up with invoices every Friday" The bot will reply with confirmation or ask for clarification The task will appear in your ClickUp workspace within seconds 🔧 Customization Options Add new intents to the AI agent to support more actions (e.g., time tracking or comments) Customize the bot’s responses for branding or tone Add notifications or reminders using additional Telegram nodes ✨ Why It's Useful This workflow eliminates the friction of switching between Telegram and your task manager. It reduces manual data entry, saves time, and gives you a simple way to manage your to-do list using natural language — even on mobile. Perfect for freelancers, managers, or team leads who want a faster, more intuitive way to stay organized.

Rosh RagelBy Rosh Ragel
544

Client billing detail collection & invoice generation with Gmail and QuickBooks

What It Does This workflow allows you to quickly generate and send invoices by collecting missing billing details from clients through an automated form and email sequence. It integrates Gmail and QuickBooks Online to handle the full billing flow: from request to invoice, reducing manual data entry and time wasted switching between apps. Perfect for freelancers, service providers, or teams that want to streamline invoicing without going back and forth with clients. Prerequisites Gmail OAuth2 credential QuickBooks Online OAuth2 credential How It Works Trigger: Manually start the workflow by filling out a form with the client’s email, invoice amount, description, and product. Send Request Email: A pre-written email is sent to the client asking them to provide their billing details. Collect Info: The client submits their billing name and address via a hosted form. Add/Find Client in QuickBooks: If the client doesn't exist, a new record is created; otherwise, the existing client is used. Generate Invoice: A QuickBooks invoice is created using the submitted info and selected product. Send Invoice: The invoice is automatically emailed to the client using QuickBooks' native interface. Example Use Cases Freelancers requesting billing info before sending an invoice Small businesses invoicing new clients without manual QuickBooks entry Sales or ops teams who want to request billing info via email with just a few clicks Automating follow-up for new customer onboarding or service requests Setup Instructions Connect your Gmail and QuickBooks credentials Add your products to the dropdown list in the Enter Client Details node ⚠️ Make sure the product names exactly match the items in QuickBooks Select the tax code in the Create A New Invoice node Customize the email message in the Send Invoice Request Gmail node to reflect your brand voice How to Use Copy the public URL from the Enter Client Details node (this way you don't have to trigger the workflow manually inside n8n) Each time you need to invoice a client, open the form and fill in: Client’s email Product/service name Invoice amount and description The client receives an email prompting them to fill in their billing info Once submitted, the system creates and sends a QuickBooks invoice automatically Customization Options Add support for multiple line items Automatically send reminder emails if the form isn't completed within a day Add internal logging (Google Sheets, Airtable, etc.) for sent/paid invoices Why It's Useful This workflow removes friction from your billing process. Instead of chasing clients for info and copying data into QuickBooks, you send one email and automation does the rest. It saves time, reduces errors, and makes invoicing feel seamless — while still keeping you in control.

Rosh RagelBy Rosh Ragel
520

Google Sheets and QuickBooks expenses automation template

Automatically Upload Expenses to QuickBooks from Google Sheets What It Does This n8n workflow template automates the process of uploading categorized expenses from Google Sheets into QuickBooks Online. It leverages your Google Sheets data to create expense entries in QuickBooks with minimal manual effort, streamlining the accounting process. Prerequisites QuickBooks Online Credential: Set up your QuickBooks Online connection in n8n for expense creation. Google Sheets Credential: Set up your Google Sheets connection in n8n to read and write data. How It Works Refresh Google Sheets Data: The workflow will first refresh the list of vendors and chart of accounts from your Google Sheets template. Import Bank Transactions: Open the provided Google Sheets template and copy-paste your transactions from your online banking CSV file. Categorize Transactions: Quickly categorize the transactions in Google Sheets, or assign this task to a team member. Run the Workflow: Once the transactions are categorized, run the workflow again, and each expense will be created automatically in QuickBooks Online. Example Use Cases Small Business Owners: Automatically track and upload monthly expenses to QuickBooks Online without manually entering data. Accountants: Automate the transfer of bank transactions to QuickBooks, streamlining the financial process. Bookkeepers: Quickly categorize and upload business expenses to QuickBooks with minimal effort. Setup Instructions Connect Your Google Sheets and QuickBooks Credentials: In n8n, connect your Google Sheets and QuickBooks accounts. Follow the credential setup instructions for both services. Setup the Google Sheets Node: Link the specific Google Sheet that contains your expense data. Make sure the sheet includes the correct columns for transactions, vendors, and accounts. Setup the QuickBooks Node: Configure the QuickBooks Online node to create expense entries in QuickBooks from the data in your Google Sheets. Setup the HTTP Node for API Calls: Use the HTTP node to make custom API calls to QuickBooks Configure the QuickBooks Realm ID: Obtain the QuickBooks Realm ID from your QuickBooks Online Developer account to use for custom API calls. This ensures the workflow targets the correct QuickBooks instance. How to Use Import Transactions: Copy and paste your bank transactions from the CSV into the provided Google Sheets template. Categorize Transactions: Manually categorize the transactions in the sheet, or delegate this task to another person to ensure they’re correctly tagged (e.g., Utilities, Office Supplies, Travel). Run the Workflow: Execute the workflow to automatically upload the categorized expenses into QuickBooks. Verify in QuickBooks: After the workflow runs, log into QuickBooks Online to confirm the expenses have been created and categorized correctly. Free Google Sheets Template To get started quickly, download my free Google Sheets template that includes pre-configured sheets for bank transactions, vendors, and chart of accounts. This template will make it easier for you to import and categorize your expenses before running the n8n workflow. Download the Free Google Sheets Template Customization Options Category Mapping: Customize how categories in Google Sheets are mapped to QuickBooks expense types. Additional API Calls: Add custom API calls if you need extra functionality, such as creating custom reports or syncing additional data. Notifications: Configure email or Slack notifications to alert you when the expenses have been successfully uploaded. Why It's Useful Time-Saving: Automatically upload and categorize expenses in QuickBooks without needing to enter them manually. Error Reduction: Minimize human error by automating the process of uploading and categorizing transactions. Efficiency: Connects Google Sheets to QuickBooks, making it easy to manage expenses in one place without having to toggle between multiple apps. Accuracy: Syncs data between Google Sheets and QuickBooks in a structured, automated way for consistent and reliable financial reporting. Flexibility: Allow external users or lower-permission employees to categorize financial transactions without providing direct access to QBO

Rosh RagelBy Rosh Ragel
460

Store Gmail email details in MySQL database

This workflow processes emails received in Gmail and saves detailed information about each email to a MySQL database. Before using, you need to have: Gmail credentials MySQL database credentials A table in your database with the following columns: messageId (Gmail message ID) threadId snippet sender_name (nullable) sender_email recipient_name (nullable) recipient_email subject (nullable) How it works: The Gmail Trigger listens for new emails (checked every minute). A Code Node extracts the following fields from each email: Sender's name and email Recipient's name and email The MySQL Node inserts the extracted data into your database. If an entry with the same sender email already exists, it updates the record with the new details. How to use: Make sure your database table has all required columns listed above. Select the appropriate table and configure the matching column (e.g., id) to avoid duplicates. Customizing this Workflow: You can further modify the workflow to store attachments, timestamps, labels, or any other Gmail metadata as needed.

Rosh RagelBy Rosh Ragel
453

Automatically add Gmail sender contacts to MySQL database

This workflow processes emails received in Gmail and adds the sender's name and email address to a MySQL database. Use Cases: A sales or marketing agency can use this to automatically save client contact info to a database to build a list of leads Companies can use this to automatically save contacts to a database in case of Gmail data loss / losing access to their Gmail account Companies can build mailing lists to automatically send promotions to all of the clients who have contacted them in a given time period Before using, you need to have: Gmail credential MySQL database credential A Table in the MySQL database to store your contacts The table should have a "name" column, which allows NULL values The table should have an "email" column, which should be UNIQUE How it works: The Gmail Trigger will listen for a new email every minute For each email, the code node will extract the name and email address of the sender. If there is no name, it will return null The MySQL node will insert the new contact into a table in your database If the contact email already exists in your database, the MySQL node will update the contact name How to use: Please set up the MySQL node by selecting the correct table to store contacts in Please choose your "email" column to match on Please choose your "name" column to store names Customizing this Workflow: You can customize this workflow to save more data to MySQL. Here are some examples: In the MySQL node, click "Add Value", and choose one of the fields from the Gmail node to save in your database column. You can try saving the following items: Subject line MessageID ThreadID Snippet Recipient Info

Rosh RagelBy Rosh Ragel
436

Automatically send monthly sales reports from Square via Gmail

Automatically Send Monthly Sales Reports from Square via Gmail What It Does This workflow automatically connects to the Square API and generates a monthly sales summary report for all your Square locations. The report matches the figures displayed in Square Dashboard > Reports > Sales Summary. It's designed to run monthly and pull the previous month’s sales into a CSV file, which is then sent to a manager/finance team for analysis. This workflow builds on my previous template, which allows users to automatically pull data from the Square API into n8n for processing. (See here: https://n8n.io/workflows/6358) Prerequisites To use this workflow, you'll need: A Square API credential (configured as a Header Auth credential) A Gmail credential How to Set Up Square Credentials: Go to Credentials > Create New Choose Header Auth Set the Name to Authorization Set the Value to your Square Access Token (e.g., Bearer <your-api-key>) How It Works Trigger: The workflow runs on the 1st of every month at 8:00 AM Fetch Locations: An HTTP request retrieves all Square locations linked to your account Fetch Orders: For each location, an HTTP request pulls completed orders for the previous calendar month Filter Empty Locations: Locations with no sales are ignored Aggregate Sales Data: A Code node processes the order data and produces a summary identical to Square’s built-in Sales Summary report Create CSV File: A CSV file is created containing the relevant data Send Email: An email is sent using Gmail to the chosen third party Example Use Cases Automatically send monthly Square sales data to management for forecasting and planning Automatically send data to an external third party, such as a landlord or agent, who is paid via commission Automatically send data to a bookkeeper for entry into QuickBooks How to Use Configure both HTTP Request nodes to use your Square API credential Set the workflow to Active so it runs automatically Enter the email address of the person you want to send the report to and update the message body If you want to remove the n8n attribution, you can do so in the last node Customization Options Add pagination to handle locations with more than 1,000 orders per month Adjust the date filters in the HTTP node to cover the full calendar month (e.g., use Luxon or JavaScript to calculate startdate and enddate) Why It's Useful This workflow saves time, reduces manual report pulling from Square, and enables smarter automation around sales data — whether for operations, finance, or performance monitoring.

Rosh RagelBy Rosh Ragel
361

Pull Square sales summary reports for automated reporting and analysis

Programatically Pull Square Report Data Into N8N What It Does This sub-workflow connects to the Square API and generates a daily sales summary report for all of your Square locations. The report matches the figures displayed in the Square Dashboard > Reports > Sales Summary. It’s designed to be reused in other workflows, ideal for reporting, data storage, accounting, or automation. Prerequisites To use this workflow, you'll need: Square API credentials (configured as a Header Auth credential) How to Set Up Square Credentials: Go to Credentials > Create New Choose Header Auth Set the Name to "Authorization" Set the Value to your Square Access Token (e.g., Bearer <your-api-key>) How It Works Trigger: The workflow is triggered as a sub-workflow, requiring a report_date input. Fetch Locations: An HTTP request gets all Square locations linked to your account. Fetch Orders: For each location, an HTTP request pulls completed orders for the specified report_date. Filter Empty Locations: Locations with no sales are ignored. Aggregate Sales Data: A Code node processes the order data and produces a summary identical to Square’s built-in Sales Summary report. Output: A cleaned, consistent summary that can be consumed by parent workflows or other nodes. Example Use Cases Automatically store daily sales data in Google Sheets, MySQL, or PostgreSQL for analysis and historical tracking Automatically send daily email or Slack reports to managers or finance teams Build weekly/monthly reports by looping over multiple dates Push sales data into accounting software like QuickBooks or Xero for automated bookkeeping Calculate commissions or rent payments based on sales volume How to Use Configure both HTTP Request nodes to use your Square API credential. If you are not in the Toronto/New York Timezone, please change the "startat" and "endat" parameters in the second HTTP node from "-05:00" to your local timezone Use as a sub-workflow inside a main workflow. Pass a report_date (formatted as YYYY-MM-DD) to the sub-workflow when you call it. Customization Options Add pagination to handle locations with more than 1,000 orders per day. Expand the workflow to save or send the report output via additional integrations (email, database, webhook, etc.). Why It's Useful This workflow saves time, reduces manual report pulling from Square, and enables smarter automation around sales data—whether for operations, finance, or performance monitoring.

Rosh RagelBy Rosh Ragel
355

Automatically send monthly sales reports from Square via Outlook

Automatically Send Monthly Sales Reports from Square via Outlook What It Does This workflow automatically connects to the Square API and generates a monthly sales summary report for all your Square locations. The report matches the figures displayed in Square Dashboard > Reports > Sales Summary. It's designed to run monthly and pull the previous month’s sales into a CSV file, which is then sent to a manager/finance team for analysis. This workflow builds on my previous template, which allows users to automatically pull data from the Square API into n8n for processing. (See here: https://n8n.io/workflows/6358) Prerequisites To use this workflow, you'll need: A Square API credential (configured as a Header Auth credential) A Microsoft Outlook credential How to Set Up Square Credentials: Go to Credentials > Create New Choose Header Auth Set the Name to Authorization Set the Value to your Square Access Token (e.g., Bearer <your-api-key>) How It Works Trigger: The workflow runs on the 1st of every month at 8:00 AM Fetch Locations: An HTTP request retrieves all Square locations linked to your account Fetch Orders: For each location, an HTTP request pulls completed orders for the previous calendar month Filter Empty Locations: Locations with no sales are ignored Aggregate Sales Data: A Code node processes the order data and produces a summary identical to Square’s built-in Sales Summary report Create CSV File: A CSV file is created containing the relevant data Send Email: An email is sent using Microsoft Outlook to the chosen third party Example Use Cases Automatically send monthly Square sales data to management for forecasting and planning Automatically send data to an external third party, such as a landlord or agent, who is paid via commission Automatically send data to a bookkeeper for entry into QuickBooks How to Use Configure both HTTP Request nodes to use your Square API credential Set the workflow to Active so it runs automatically Enter the email address of the person you want to send the report to and update the message body If you want to remove the n8n attribution, you can do so in the last node Customization Options Add pagination to handle locations with more than 1,000 orders per month Adjust the date filters in the HTTP node to cover the full calendar month (e.g., use Luxon or JavaScript to calculate startdate and enddate) Why It's Useful This workflow saves time, reduces manual report pulling from Square, and enables smarter automation around sales data — whether for operations, finance, or performance monitoring.

Rosh RagelBy Rosh Ragel
284

Automatically send weekly sales reports from Square via Gmail

Automatically Send Weekly Sales Reports from Square via Gmail What It Does This workflow automatically connects to the Square API and generates a weekly sales summary report for all your Square locations. The report matches the figures displayed in Square Dashboard > Reports > Sales Summary. It's designed to run weekly and pull the previous week’s sales into a CSV file, which is then sent to a manager/finance team for analysis. This workflow builds on my previous template, which allows users to automatically pull data from the Square API into n8n for processing. (See here: https://n8n.io/workflows/6358) Prerequisites To use this workflow, you'll need: A Square API credential (configured as a Header Auth credential) A Microsoft Outlook credential How to Set Up Square Credentials: Go to Credentials > Create New Choose Header Auth Set the Name to Authorization Set the Value to your Square Access Token (e.g., Bearer <your-api-key>) How It Works Trigger: The workflow runs every Monday at 8:00 AM Fetch Locations: An HTTP request retrieves all Square locations linked to your account Fetch Orders: For each location, an HTTP request pulls completed orders for the previous week (e.g., Monday to Sunday) Filter Empty Locations: Locations with no sales are ignored Aggregate Sales Data: A Code node processes the order data and produces a summary identical to Square’s built-in Sales Summary report Create CSV File: A CSV file is created containing the relevant data Send Email: An email is sent to the chosen third party Example Use Cases Automatically send weekly Square sales data to management to improve the quality of planning and scheduling decisions Automatically send data to an external third party, such as a landlord or agent, who is paid via commission Automatically send data to a bookkeeper for entry into QuickBooks How to Use Configure both HTTP Request nodes to use your Square API credential Set the workflow to Active so it runs automatically Enter the email address of the person you want to send the report to and update the message body If you want to remove the n8n attribution, you can do so in the last node Customization Options Add pagination to handle locations with more than 1,000 orders per week Why It's Useful This workflow saves time, reduces manual report pulling from Square, and enables smarter automation around sales data — whether for operations, finance, or performance monitoring.

Rosh RagelBy Rosh Ragel
228

Automatically send daily sales reports from Square via Gmail

Automatically Send Square Summary Report for Yesterday's Sales via Gmail What It Does This workflow automatically connects to the Square API and generates a daily sales summary report for all your Square locations. The report matches the figures displayed in Square Dashboard > Reports > Sales Summary. It's designed to run daily and pull the previous day's sales into a CSV file, which is then sent to a manager/finance team for analysis. This workflow builds on my previous template, which allows users to automatically pull data from the Square API into n8n for processing. (See here: https://n8n.io/workflows/6358) Prerequisites To use this workflow, you'll need: A Square API credential (configured as a Header Auth credential) A Gmail credential How to Set Up Square Credentials: Go to Credentials > Create New Choose Header Auth Set the Name to Authorization Set the Value to your Square Access Token (e.g., Bearer <your-api-key>) How It Works Trigger: The workflow runs every day at 4:00 AM Fetch Locations: An HTTP request retrieves all Square locations linked to your account Fetch Orders: For each location, an HTTP request pulls completed orders for the specified report_date Filter Empty Locations: Locations with no sales are ignored Aggregate Sales Data: A Code node processes the order data and produces a summary identical to Square’s built-in Sales Summary report Create CSV File: A CSV file is created containing the relevant data Send Email: An email is sent to the chosen third party Example Use Cases Automatically send Square sales data to management to improve the quality of planning and scheduling decisions Automatically send data to an external third party, such as a landlord or agent, who is paid via commission Automatically send data to a bookkeeper for entry into QuickBooks How to Use Configure both HTTP Request nodes to use your Square API credential Set the workflow to Active so it runs automatically Enter the email address of the person you want to send the report to and update the message body If you want to remove the n8n attribution, you can do so in the last node Customization Options Add pagination to handle locations with more than 1,000 orders per day Instead of a daily summary, you can modify this workflow to produce a weekly summary once a week Why It's Useful This workflow saves time, reduces manual report pulling from Square, and enables smarter automation around sales data — whether for operations, finance, or performance monitoring.

Rosh RagelBy Rosh Ragel
223

Dynamically send out-of-office / vacation message using Gmail & Google Calendar

What it Does Automatically checks your Google Calendar to determine if you're officially off work for the rest of today. If so, it auto-sends a personalized out‑of‑office reply via Gmail, telling senders when you’ll be back—based on your next calendar entry within the next 2 weeks. Prerequisites To use this template, you'll need: Gmail credentials (for the trigger and reply nodes) Google Calendar credentials (for both calendar checks) A dedicated work calendar selected in the Calendar nodes Workflow Logic Gmail Trigger Monitors incoming emails every minute Can be filtered (e.g., labels or VIP senders) Calendar Check 1 Inspects if any events remain today Calendar Check 2 If no remaining events, scan the next 14 days for the next event Function Node Formats the return date as Weekday, Month D, YYYY (e.g., “Thursday, July 24, 2025”) Gmail Send Sends a customized out‑of‑office email, using the formatted date Optionally includes n8n attribution (editable) User Setup Instructions Gmail Trigger: Connect your Gmail account and add any desired filters (labels, senders). Google Calendar Nodes: Connect your calendar account and select your “work” calendar in both nodes. Function Node: No changes needed unless you prefer a different date format. Gmail Send Node: Edit the message template and toggle attribution as desired. Customization - Options Edit the final email content and tone in the Send node Adjust calendar lookahead in Calendar Check 2 (default is 14 days) Add Gmail filters to restrict auto-replies (e.g. only specific senders or labels) Why It's Useful Ideal for freelancers, consultants, or remote workers who don’t follow a strict 9–5, yet want automated responses aligned with their actual availability, not a static setting. It’s dynamic, real-time, and easy to tweak. Classification Use Case: Calendar-driven out-of-office automation Recommended audience: Business professionals, freelancers, remote employees

Rosh RagelBy Rosh Ragel
109

Automatically send weekly sales reports from Square via Outlook

Automatically Send Weekly Sales Reports from Square via Outlook What It Does This workflow automatically connects to the Square API and generates a weekly sales summary report for all your Square locations. The report matches the figures displayed in Square Dashboard > Reports > Sales Summary. It's designed to run weekly and pull the previous week’s sales into a CSV file, which is then sent to a manager/finance team for analysis. This workflow builds on my previous template, which allows users to automatically pull data from the Square API into n8n for processing. (See here: https://n8n.io/workflows/6358) Prerequisites To use this workflow, you'll need: A Square API credential (configured as a Header Auth credential) A Microsoft Outlook credential How to Set Up Square Credentials: Go to Credentials > Create New Choose Header Auth Set the Name to Authorization Set the Value to your Square Access Token (e.g., Bearer <your-api-key>) How It Works Trigger: The workflow runs every Monday at 4:00 AM Fetch Locations: An HTTP request retrieves all Square locations linked to your account Fetch Orders: For each location, an HTTP request pulls completed orders for the previous week (e.g., Monday to Sunday) Filter Empty Locations: Locations with no sales are ignored Aggregate Sales Data: A Code node processes the order data and produces a summary identical to Square’s built-in Sales Summary report Create CSV File: A CSV file is created containing the relevant data Send Email: An email is sent via Microsoft Outlook to the chosen third party Example Use Cases Automatically send weekly Square sales data to management to improve the quality of planning and scheduling decisions Automatically send data to an external third party, such as a landlord or agent, who is paid via commission Automatically send data to a bookkeeper for entry into QuickBooks How to Use Configure both HTTP Request nodes to use your Square API credential Set the workflow to Active so it runs automatically Enter the email address of the person you want to send the report to and update the message body If you want to remove the n8n attribution, you can do so in the last node Customization Options Add pagination to handle locations with more than 1,000 orders per week Why It's Useful This workflow saves time, reduces manual report pulling from Square, and enables smarter automation around sales data — whether for operations, finance, or performance monitoring.

Rosh RagelBy Rosh Ragel
99
All templates loaded