Finance & Ops · n8n

Get Instant Slack Alerts When Zendrop Product Costs Change

Automatically check your Zendrop product costs on a schedule and send a Slack message the moment a price changes. Never get caught off-guard by a margin-killing cost increase again.

difficulty Intermediatesetup 45 minresult You receive a formatted Slack alert with the product name, old cost, and new cost whenever Zendrop updates a product price.
  1. 1

    Step 1 – Schedule the check

    Add a Schedule Trigger node. Set Trigger Interval to every 6 hours (or whatever frequency suits you). This node kicks off the workflow automatically without any manual action.

  2. 2

    Step 2 – Fetch current costs from Zendrop

    Add an HTTP Request node connected to the Schedule Trigger. Set Method to GET and URL to https://app.zendrop.com/api/products (add your API key in the Headers field as Authorization: Bearer YOUR_ZENDROP_API_KEY). This returns your current product list with costs. Store your Zendrop API key in n8n Credentials for security.

  3. 3

    Step 3 – Load previous costs from Google Sheets

    Add a Google Sheets node set to Read Rows operation. Point it to a sheet you create with columns product_id, product_name, and last_cost. Connect your Google account in n8n Credentials. This sheet acts as your cost memory so the workflow can compare old vs new prices.

  4. 4

    Step 4 – Detect cost changes and prepare message

    Add a Code node. Write a short script that loops through the Zendrop API results, matches each product by product_id to the Google Sheets rows, and identifies any where the current cost differs from last_cost. Output an array of changed products with fields productName, oldCost, newCost. If nothing changed, output an empty array. Also update the Google Sheet with new costs inside this node using an append/update approach.

  5. 5

    Step 5 – Send Slack alert for each changed product

    Add a Slack node connected to the Code node. Set Operation to Send Message, choose your alert channel (e.g. #pricing-alerts), and set Message Text to *Cost Change Detected!*\nProduct: {{ $json.productName }}\nOld Cost: ${{ $json.oldCost }}\nNew Cost: ${{ $json.newCost }}. Connect your Slack workspace via OAuth in n8n Credentials. The node will fire once per changed product.

Frequently asked questions

What if Zendrop does not have a public API?

Zendrop offers an API for its paid plans. If your plan does not include API access, you can export your product CSV manually and upload it to Google Sheets instead, then replace the HTTP Request node with a Google Sheets read node pointing to that import tab.

How do I avoid duplicate Slack alerts?

The Google Sheets node stores the last-known cost after each run. The Code node only flags a product when its current cost differs from the stored value, so once the sheet is updated you will not receive the same alert again until the cost changes a second time.

Can I alert on both price increases and decreases?

Yes. The Code node compares old and new costs numerically, so it catches movement in either direction. If you want separate messages for increases versus decreases, add an IF node after the Code node and branch into two Slack nodes with different message text, such as a warning emoji for increases and a celebration emoji for decreases.

About this recipe. Recipes on FlowRecipesHub are written for business owners, not developers, and are tested before publishing — how recipes get made. Some ingredient links are affiliate links that cost you nothing — full disclosure.