Productivity · n8n

Get Daily Zendrop Fulfillment Success Rate Alerts in MS Teams

Automatically pull your Zendrop order fulfillment stats every day and post a clear success rate summary directly into a Microsoft Teams channel. Keep your entire team informed without logging into Zendrop manually.

difficulty Intermediatesetup 40 minresult A daily MS Teams message showing total orders, fulfilled orders, and fulfillment success rate percentage pulled from the Zendrop API.
  1. 1

    Schedule the daily trigger

    Add a Schedule Trigger node. Set Trigger Interval to Days and Days Between Triggers to 1. Set the trigger time to something like 8:00 AM so your team sees the report at the start of their day.

  2. 2

    Fetch fulfillment data from Zendrop

    Add an HTTP Request node connected to the Schedule Trigger. Set Method to GET and URL to https://app.zendrop.com/api/v1/orders (or your Zendrop API orders endpoint). Under Authentication, choose Header Auth and add your Zendrop API key as Authorization: Bearer YOUR_API_KEY. Add query parameters status set to fulfilled and created_at_min set to yesterday's date using the expression {{ new Date(Date.now() - 86400000).toISOString().split('T')[0] }}. Store the credential details in the node Notes field.

  3. 3

    Calculate the fulfillment success rate

    Add a Set node. Create three fields: totalOrders using expression {{ $json.total_count }}, fulfilledOrders using expression {{ $json.fulfilled_count }}, and successRate using expression {{ Math.round(($json.fulfilled_count / $json.total_count) * 100) }}. If Zendrop returns an array, adjust the expressions to reference the correct response shape from the previous node.

  4. 4

    Format the Teams message

    Add a second Set node. Create a single field called teamsMessage with the value: Daily Fulfillment Report Total Orders: {{ $json.totalOrders }} Fulfilled Orders: {{ $json.fulfilledOrders }} Success Rate: {{ $json.successRate }}% Powered by Zendrop + n8n. This shapes the message text before sending.

  5. 5

    Post the report to Microsoft Teams

    Add a Microsoft Teams node. Set Operation to Create Message and select your target Channel. Set Message to {{ $json.teamsMessage }}. Connect your Microsoft 365 credentials using OAuth2. In the node Notes, record which Teams channel and tenant you are targeting. Connect this node to the second Set node to complete the workflow.

Frequently asked questions

What if Zendrop does not have a public API endpoint for orders?

Check your Zendrop account under Settings or Developer options for your personal API key and available endpoints. If a direct orders API is not available on your plan, consider exporting a CSV report and triggering the workflow via an email attachment or Google Sheets integration instead.

Can I change the Teams channel the message is posted to?

Yes. In the Microsoft Teams node, you can select any channel your connected Microsoft 365 account has access to. Simply change the Team and Channel fields in the node configuration to point to a different channel at any time.

How do I change the report from daily to weekly?

Open the Schedule Trigger node and change the `Trigger Interval` from `Days` to `Weeks`. Also update the `created_at_min` date expression in the HTTP Request node to subtract 7 days instead of 1 by changing `86400000` to `604800000` so you capture the full week of orders.

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.