Detect recalled Shopify products with CPSC, FDA, OpenAI, Slack, and Google Sheets
Ready for 3.0What this workflow does
This AI workflow has 24 nodes and runs on a schedule (every day at 08:00). Along the way it connects Shopify, Google Sheets, OpenAI Chat Model and Slack. It also calls saferproducts.gov and api.fda.gov over HTTP.
How it runs
Trigger: On a schedule (every day at 08:00).
- Set Configuration Parameters (Edit Fields (Set)): sets 10 fields: shopifyStoreHandle, lookbackDays, minCandidateScore…
- Retrieve Shopify Products (Shopify): get many (product)
- Fetch CPSC Recall Data (HTTP Request): calls saferproducts.gov
- Fetch FDA Food Recalls (HTTP Request): calls api.fda.gov
- Fetch FDA Drug Recalls (HTTP Request): calls api.fda.gov
- Fetch FDA Device Recalls (HTTP Request): calls api.fda.gov
- Read Recall Log from Sheets (Google Sheets): read
- Normalize Recall Entries (Code): runs custom JavaScript code
- Identify Candidate Products (Code): runs custom JavaScript code
- Filter: keeps only the items that match a condition
…plus 11 more steps. See the full node list below.
Services it uses
HTTP calls to: saferproducts.gov, api.fda.gov
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (11)
- Schedule Trigger
n8n-nodes-base.scheduleTrigger - Edit Fields (Set)
n8n-nodes-base.set - Shopify
n8n-nodes-base.shopify - HTTP Request
n8n-nodes-base.httpRequest - Google Sheets
n8n-nodes-base.googleSheets - Code
n8n-nodes-base.code - Filter
n8n-nodes-base.filter - Basic LLM Chain
@n8n/n8n-nodes-langchain.chainLlm - OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi - Structured Output Parser
@n8n/n8n-nodes-langchain.outputParserStructured - Slack
n8n-nodes-base.slack
From the author
Quick overview This workflow runs every morning, checks recent CPSC and FDA recalls against your Shopify product catalog, uses OpenAI to verify likely matches, and then posts alerts to Slack while logging results to Google Sheets (with an optional step to set…