Finance & Ops · n8n

Automatically Log Zendrop Daily Product Costs to Google Sheets

Every day, this workflow pulls product cost data from Zendrop via its API and appends the results to a Google Sheet for easy tracking and reporting. E-commerce managers get a running cost log without any manual data entry.

difficulty Intermediatesetup 45 minresult A Google Sheet that automatically receives a new row each day with your Zendrop product costs, giving you a clean audit trail for margin analysis.
  1. 1

    Schedule the workflow to run daily

    Add a Schedule Trigger node. Set the Rule to run once per day at a time that suits your reporting cadence, such as 6:00 AM. This node fires the workflow automatically so you never have to trigger it manually.

  2. 2

    Fetch product costs from Zendrop

    Add an HTTP Request node connected to the Schedule Trigger. Set Method to GET and URL to https://api.zendrop.com/api/v1/products. In the Headers section add Authorization with the value Bearer YOUR_ZENDROP_API_KEY. Store your API key in n8n credentials and reference it here. The node returns a JSON array of products including cost fields.

  3. 3

    Extract and flatten key cost fields

    Add a Set node after the HTTP Request. Create fields for productId mapped to {{ $json.id }}, productName mapped to {{ $json.name }}, cost mapped to {{ $json.cost }}, retailPrice mapped to {{ $json.retail_price }}, and date mapped to {{ $now.toISODate() }}. This produces one clean record per product that is easy to write to a spreadsheet.

  4. 4

    Append each row to Google Sheets

    Add a Google Sheets node set to operation Append Row. Connect your Google account in the credentials section. Set Spreadsheet ID to the ID of your target sheet (found in its URL) and Sheet Name to the tab you want to write to, such as Daily Costs. Map the columns to the fields you defined in the Set node: Date, Product ID, Product Name, Cost, and Retail Price. Each product becomes a new row in the sheet.

Frequently asked questions

What if Zendrop does not expose a products API endpoint?

Check Zendrop's current API documentation in your account dashboard under Developer Settings. If the endpoint path differs, update the URL in the HTTP Request node accordingly. Some plans may require contacting Zendrop support to enable API access.

How do I avoid duplicate rows if the workflow runs twice in one day?

Add an `IF` node between the Set and Google Sheets nodes that checks whether today's date already exists in the sheet using a Google Sheets Read operation. Only continue to the Append step if no matching date row is found. Alternatively, schedule the workflow to run only once daily to minimize this risk.

Can I track cost changes over time with this setup?

Yes. Because each run appends new rows with a date stamp, you will build a historical log of costs automatically. You can then use Google Sheets charts or pivot tables to visualize cost trends per product over days, weeks, or months.

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.