Quick Overview This workflow logs Gmail receipt attachments to Google Sheets by extracting structured fields with OpenAI (including category selection from your list), prevents duplicates by checking the ledger, and sends a monthly spending summary email via Gmail based on last month’s rows. How it works Triggers when a Gmail message matching has:attachment subject:receipt arrives or when a schedule runs on the 1st of the month at 8am. For receipt emails, looks up the Gmail message ID in Google Sheets and stops if the receipt is already logged. If the receipt is new, extracts text from PDF attachments or transcribes image receipts using OpenAI vision. Sends the receipt text to OpenAI to extract receipt_date, merchant, amount, currency, and a category chosen only from your predefined category list. Appends one cleaned expense row to Google Sheets with the extracted fields plus a processed timestamp, Gmail message ID, and the original email subject. For the monthly run, reads the full Google Sheets ledger, totals last month’s expenses by category, and emails the summary to you via Gmail. Setup Connect Gmail credentials for the Gmail Trigger and for sending the monthly summary email.
Tags
Related workflows
See all AI Automation→Find and verify business emails with ScraperCity, OpenAI, Google Sheets, and Gmail
Quick overview This workflow reads contacts from Google Sheets, finds and verifies their business emails via the ScraperCity Email Finder API, generates a short personalized icebreaker with OpenAI, appends the enriched leads to another Google Sheet, and emails a run summary via Gmail. How it works Starts manually to run an email enrichment job. Reads contacts (first name, last name, domain) from an input Google Sheets worksheet and aggregates them into a single payload. Submits the contacts to the ScraperCity Email Finder API, then waits and repeatedly checks the job status until it succeeds or fails/times out. When the job succeeds, downloads the result CSV from ScraperCity, parses it, normalizes key fields (name, domain, email, verification status, provider), and keeps only rows with an email. For each verified contact, prompts OpenAI to generate one short, company-referencing cold-email opening line in the configured language. Appends the enriched lead (including email, status, and icebreaker) to an output Google Sheets worksheet and sends a summary email via Gmail. Setup Create a ScraperCity account with Email Finder credits and add an HTTP Header Auth credential that sends you
Scrape and score Amazon products with Apify, OpenAI, and Google Sheets
Quick overview This workflow manually scrapes product results from an Amazon search URL via the Apify Amazon Crawler actor, uses OpenAI to generate a structured product analysis (category, key feature, verdict, value score), and appends the enriched results to a Google Sheets spreadsheet. How it works Runs when you manually click “Test workflow” in n8n. Sends the configured Amazon search URL and scraping limits to the apify Amazon Crawler actor and retrieves the dataset items. Filters out any scraper items that are missing a title or contain an error. Uses OpenAI to analyze each product’s title, brand, price, rating, and review count and returns a structured category, key feature, buyer verdict, and 1–10 value score. Combines the scraped fields and AI analysis into a single row format and adds a timestamp. Appends each enriched product as a new row in Google Sheets. Setup Create an apify API token and add it as an HTTP Header Auth credential used by the Apify request. Add an OpenAI API key as an OpenAI credential and choose the model to use in the configuration. Connect a Google Sheets OAuth2 account and select the target spreadsheet, sheet tab, and columns for appending rows. Upda
Turn support emails into FAQ drafts with Gmail, OpenAI, Sheets and Docs
Quick overview This workflow monitors a Gmail inbox for new support-style emails, uses OpenAI to extract a reusable FAQ question and safe draft answer, logs results to Google Sheets, and then creates a Google Docs draft and/or Gmail review drafts for a human reviewer. How it works Polls Gmail every 5 minutes for unread emails matching the configured support-related search query. Cleans the email content by stripping quoted replies, signatures, and HTML to produce a concise plain-text body. Sends the cleaned email and product context to OpenAI to extract a structured FAQ candidate (question, draft answer, category, score, sensitivity flag, tags, and recommended action). Calculates a routing status based on the FAQ score threshold and sensitivity/recommended action, and prepares draft text for a Google Doc and reviewer email. Appends every processed email and extracted fields to a Google Sheets tab for tracking and reporting. If the candidate is strong, creates a Google Docs FAQ draft, inserts the draft content, and creates a Gmail draft notification to the reviewer with the document link. If the candidate needs manual handling, creates a Gmail draft to the reviewer with the review n