See llms.txt for all machine-readable content.

Back to Templates

Fulfil WooCommerce orders with CJ Dropshipping and 17TRACK tracking

Quick overview

Turns every paid WooCommerce order into a paid CJ Dropshipping order, checks your real margin before money leaves your account, and keeps the customer informed until the parcel arrives. for
WooCommerce store owners who dropship with CJ Dropshipping and want hands-off fulfilment without losing money on freight-heavy orders.

How it works

  1. Triggers when a WooCommerce order is updated, on a 2-hour schedule to poll CJ shipment status, or when 17TRACK sends a tracking webhook event.
  2. For new WooCommerce orders in the configured status, it deduplicates against an n8n Data Table, maps line items to CJ variants (SKU or _cj_vid meta), and logs orders that need attention when products are unmapped.
  3. Creates the order in CJ Dropshipping, then runs CJ’s checkout steps to retrieve the exact payable amount and converts the WooCommerce order total to USD using the Frankfurter FX API (with a configured fallback rate).
  4. Applies the profit guard rules to either auto-pay CJ from your balance, request owner approval by email (approve to pay, decline to put the WooCommerce order on hold), or alert/log when CJ blocks checkout.
  5. Every 2 hours, polls CJ Dropshipping in batches for orders marked as paid, detects tracking numbers or cancellations, registers new tracking numbers with the 17TRACK API, saves tracking metadata back to WooCommerce, and notifies the customer with an order note.
  6. Receives 17TRACK webhook updates, validates a shared token, updates tracking stage in the Data Table, posts customer-facing notes for out-for-delivery/pickup, completes the WooCommerce order on delivery, and emails you on delivery exceptions.

Setup

  1. Create an n8n Data Table (for example cj_order_tracking) with the workflow’s required columns and select it in all Data Table steps.
  2. Add credentials for WooCommerce (REST API read/write), CJ Dropshipping (HTTP Custom Auth to fetch access tokens), 17TRACK (HTTP Header Auth API key), and an SMTP/Email account for alerts and approval emails.
  3. Update the Config values (store URL, shop and email addresses, target WooCommerce status, margin and auto-pay limits, IOSS settings, and webhook token) and set cjSandbox appropriately for testing vs production.
  4. In 17TRACK, configure a v2.2 webhook pointing to the workflow’s 17TRACK webhook URL and append ?token= with your configured webhookToken.
  5. Ensure WooCommerce products can be mapped to CJ variants by setting SKUs to match CJ variant SKUs or by adding _cj_vid line-item metadata, then activate the workflow.

Requirements

  • WooCommerce store with REST API access
  • CJ Dropshipping account with API key and balance
  • 17TRACK API account (free tier works for testing)
  • Woo product SKUs matching CJ variant SKUs, or _cj_vid meta on line items