WooCommerce

Connect & Ingest data from WooCommerce

WooCommerce is an open-source e-commerce platform built on WordPress. The Sling WooCommerce connector extracts data from the WooCommerce REST API v3, supporting products, orders, customers, coupons, and more.

circle-check

Setup

The following credentials and inputs are accepted:

Secrets:

  • consumer_key (required) -> Your WooCommerce REST API Consumer Key

  • consumer_secret (required) -> Your WooCommerce REST API Consumer Secret

  • store_url (required) -> Your WooCommerce store URL (e.g., https://mystore.com)

Inputs:

  • anchor_date (optional) -> The starting date for historical data extraction (default: 1 year ago). Format: YYYY-MM-DD

Getting Your API Credentials

  1. Log in to your WordPress admin dashboard

  2. Go to WooCommerce > Settings > Advanced > REST API

  3. Click Add key

  4. Enter a description (e.g., "Sling Integration")

  5. Set Permissions to Read

  6. Click Generate API key

  7. Copy the Consumer key and Consumer secret

circle-exclamation

Using sling conns

Environment Variable

See here to learn more about the .env.sling file.

Sling Env File YAML

See here to learn more about the sling env.yaml file.

With anchor date for historical data:

Replication

Here's an example replication configuration to sync WooCommerce data to a PostgreSQL database:

Full refresh example for reference data:

Endpoints

Products

Endpoint
Description
Incremental

products

All products in the store

Yes

product_variations

Variations for variable products

No (child)

product_categories

Product categories

No

product_tags

Product tags

No

product_attributes

Product attributes (e.g., Color, Size)

No

product_reviews

Customer reviews on products

Yes

product_shipping_classes

Shipping classes for products

No

Orders

Endpoint
Description
Incremental

orders

All orders

Yes

order_notes

Notes on each order

No (child)

order_refunds

Refunds for each order

No (child)

Customers & Coupons

Endpoint
Description
Incremental

customers

Registered customers

No

coupons

Discount coupons

Yes

Tax & Shipping

Endpoint
Description
Incremental

tax_rates

Tax rates

No

tax_classes

Tax classes

No

shipping_zones

Shipping zones

No

shipping_methods

Available shipping methods

No

payment_gateways

Payment gateway configurations

No

To discover available endpoints:

Incremental Sync

The WooCommerce connector uses modified_after for incremental sync on supported endpoints:

  • First run: Fetches all records from anchor_date (default: 1 year ago) to present

  • Subsequent runs: Only fetches records modified after the last sync timestamp

Incremental endpoints track the date_modified_gmt field (or date_created_gmt for reviews) to determine the sync boundary.

Child Endpoints

The product_variations, order_notes, and order_refunds endpoints are child endpoints that iterate over parent IDs from the products and orders streams. They automatically fetch data for all parent records returned in the current sync.

Rate Limiting

The WooCommerce REST API rate limits depend on your hosting provider. The connector uses conservative defaults:

  • 5 requests per second

  • 3 concurrent requests

These settings work well for most hosting environments. If you experience rate limiting, consider reducing the concurrency in your replication configuration.

Common Use Cases

Sync All E-commerce Data

Sync Product Catalog

Sync Orders with Details

If you are facing issues connecting, please reach out to us at [email protected]envelope, on discordarrow-up-right or open a Github Issue herearrow-up-right.

Last updated

Was this helpful?