Vraag vroegtijdige toegang aan

Vul je voornaam en je zakelijke e-mailadres in. We sturen je een link om je aanvraag voor toegang tot Tajo te bevestigen.

WooCommerce-connector

Connectorstatus: In ontwikkeling In aanbouw. Nog niet geverifieerd.

Illustratie · voorbeelddata

Voorbeeld van synchronisatie

Eén record controleren

Bron

WooCommerce

Connectorstatus: In ontwikkeling

Bestemming

Je andere tool

Connectorstatus: Eigen tool

BronveldDoelveldVoorbeeldwaarde
record.id source_id record_1042
record.updated_at updated_at 2026-10-18T08:00:00Z
record.value value sample_value
  1. Opstellen
  2. Eén record controleren
  3. Deze versie goedkeuren

Statussen gelden per connector en garanderen niet dat deze synchronisatie klaar is. De velden zijn illustratief. Controleer het echte schema en de rechten voordat een synchronisatie draait.

Verbind je WooCommerce-winkel met Brevo via Tajo voor volledige synchronisatie van e-commercedata. Gebruik de WooCommerce REST API om klanten, bestellingen, producten en couponsdata te synchroniseren voor gerichte marketingcampagnes en geautomatiseerde workflows.

Overzicht

EigenschapWaarde
PlatformWooCommerce (WordPress)
CategorieE-commerce
SetupcomplexiteitGemiddeld
Officiële integratieNee
Gesynchroniseerde dataKlanten, Bestellingen, Producten, Coupons
Beschikbare skills10

Functies

  • Klantsynchronisatie - Realtime klantdatasynchronisatie naar Brevo-contacten
  • Ordertracking - Volledige tracking van order-lifecycle-events voor post-purchase-flows
  • Productcatalogus-sync - Synchroniseer producten en variaties voor e-mailaanbevelingen
  • Couponsbeheer - Synchroniseer couponcodes voor promotiecampagnes
  • Webhook-ondersteuning - Realtime-updates via WooCommerce-webhooks
  • Winkelwagenherstel - Volg en herstel verlaten winkelwagens
  • Multi-site-ondersteuning - Verbind WordPress-multisite WooCommerce-installaties
  • Custom meta-velden - Koppel WooCommerce custom meta aan Brevo-attributen

Vereisten

Voordat je begint, zorg dat je beschikt over:

  1. Een WordPress-site met de WooCommerce-plug-in geïnstalleerd en geactiveerd
  2. WooCommerce REST API ingeschakeld (Settings > Advanced > REST API)
  3. Aangemaakte API Consumer Key en Consumer Secret
  4. Je site moet HTTPS gebruiken voor API-authenticatie
  5. Een Brevo-account met API-toegang
  6. Een Tajo-account met API-inloggegevens

Authenticatie

REST API-sleutels

WooCommerce gebruikt paren van Consumer Key en Consumer Secret voor authenticatie. Maak deze aan onder WooCommerce > Settings > Advanced > REST API.

OAuth 1.0a (HTTPS-sites)

Terminal window
curl https://yourstore.com/wp-json/wc/v3/orders \
-u "consumer_key:consumer_secret"

Querystring-authenticatie (HTTPS)

Terminal window
curl "https://yourstore.com/wp-json/wc/v3/orders?consumer_key=ck_xxx&consumer_secret=cs_xxx"

Rechtenniveaus

RechtToegang
ReadAlleen resources bekijken
WriteResources aanmaken en bewerken
Read/WriteVolledige CRUD-toegang

Configuratie

Basisopzet

connectors:
woocommerce:
enabled: true
store_url: "https://yourstore.com"
consumer_key: "ck_your_consumer_key"
consumer_secret: "cs_your_consumer_secret"
api_version: "wc/v3"
verify_ssl: true
# Data sync options
sync:
customers: true
orders: true
products: true
coupons: true
# Brevo list assignment
lists:
all_customers: 50
buyers: 51
abandoned_cart: 52

Klantveldmapping

Koppel WooCommerce-klantvelden aan Brevo-attributen:

customer_mapping:
email: email
first_name: FIRSTNAME
last_name: LASTNAME
billing.phone: SMS
billing.company: COMPANY
billing.city: CITY
billing.state: STATE
billing.country: COUNTRY
billing.postcode: ZIP
# E-commerce metrics (computed)
orders_count: ORDER_COUNT
total_spent: TOTAL_SPENT
date_created: SIGNUP_DATE
# Meta fields
meta_data.loyalty_points: LOYALTY_POINTS
meta_data.preferred_category: PREF_CATEGORY

Webhook-configuratie

Registreer webhooks onder WooCommerce > Settings > Advanced > Webhooks:

webhooks:
- topic: "customer.created"
event: "customer_created"
- topic: "customer.updated"
event: "customer_updated"
- topic: "order.created"
event: "order_placed"
- topic: "order.updated"
event: "order_updated"
- topic: "order.completed"
event: "order_fulfilled"
- topic: "order.refunded"
event: "order_refunded"
- topic: "coupon.created"
event: "coupon_created"
- topic: "product.created"
event: "product_added"
- topic: "product.updated"
event: "product_updated"

API-endpoints

MethodeEndpointBeschrijving
GET/wc/v3/customersKlanten opvragen
POST/wc/v3/customersKlant aanmaken
GET/wc/v3/customers/{id}Klant ophalen
PUT/wc/v3/customers/{id}Klant bijwerken
GET/wc/v3/ordersBestellingen opvragen
POST/wc/v3/ordersBestelling aanmaken
GET/wc/v3/orders/{id}Bestelling ophalen
GET/wc/v3/productsProducten opvragen
GET/wc/v3/products/{id}Product ophalen
GET/wc/v3/products/{id}/variationsProductvariaties opvragen
GET/wc/v3/couponsCoupons opvragen
GET/wc/v3/reports/salesVerkooprapporten ophalen
GET/wc/v3/reports/top_sellersTopverkopers ophalen
POST/wc/v3/webhooksWebhook aanmaken

Codevoorbeelden

WooCommerce-connector initialiseren

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connect WooCommerce store
await tajo.connectors.connect('woocommerce', {
storeUrl: 'https://yourstore.com',
consumerKey: process.env.WC_CONSUMER_KEY,
consumerSecret: process.env.WC_CONSUMER_SECRET
});

Klanten ophalen en synchroniseren

// Fetch customers using WooCommerce REST API
const WooCommerce = require('@woocommerce/woocommerce-rest-api').default;
const api = new WooCommerce({
url: 'https://yourstore.com',
consumerKey: process.env.WC_CONSUMER_KEY,
consumerSecret: process.env.WC_CONSUMER_SECRET,
version: 'wc/v3'
});
// List customers with pagination
const response = await api.get('customers', {
per_page: 100,
page: 1,
orderby: 'registered_date',
order: 'desc'
});
const customers = response.data;
// [{ id, email, first_name, last_name, billing, shipping, ... }]
// Pagination info from headers
const totalPages = response.headers['x-wp-totalpages'];
const totalItems = response.headers['x-wp-total'];

Webhook-events afhandelen

// WooCommerce webhook handler
app.post('/webhooks/woocommerce', async (req, res) => {
const topic = req.headers['x-wc-webhook-topic'];
const signature = req.headers['x-wc-webhook-signature'];
// Verify webhook signature
const expectedSignature = crypto
.createHmac('sha256', WEBHOOK_SECRET)
.update(JSON.stringify(req.body))
.digest('base64');
if (signature !== expectedSignature) {
return res.status(401).send('Invalid signature');
}
// Forward to Tajo
await tajo.connectors.handleWebhook('woocommerce', {
topic,
payload: req.body
});
res.status(200).send('OK');
});

Batch-operaties

// Batch create, update, and delete products
const batchResponse = await api.post('products/batch', {
create: [
{ name: 'New Product', type: 'simple', regular_price: '19.99' }
],
update: [
{ id: 123, regular_price: '24.99' }
],
delete: [456]
});

Ratelimits

WooCommerce legt zelf geen API-ratelimits op, maar de onderliggende WordPress-server en hostingprovider kunnen wel limieten afdwingen:

FactorTypische limietDetails
Shared hosting50-100 req/minVarieert per host
Managed WP hosting200-500 req/minWP Engine, Kinsta, enz.
Self-hostedGeen harde limietBeperkt door serverresources
Per pagina100 records maxStandaard is 10
Batch-operaties100 items/batchAanmaken, bijwerken of verwijderen

Serverprestaties

Grote WooCommerce-winkels kunnen trage API-responses ervaren. Gebruik paginatie, beperk velden met de _fields-parameter en plan bulksyncs buiten piekuren.

Probleemoplossing

ProbleemOorzaakOplossing
401 UnauthorizedOngeldige API-sleutelsGenereer Consumer Key/Secret opnieuw in WooCommerce-instellingen
403 ForbiddenOnvoldoende rechtenStel de API-sleutel in op Read/Write-toegang
SSL-certificaatfoutenOngeldige SSL op siteZorg voor een geldig SSL-certificaat; zet verify_ssl: false alleen voor testen
Webhooks werken nietWordPress-cron uitgeschakeldSchakel WP-Cron in of stel server-cron in
Trage API-responsesGrote databaseOptimaliseer de WordPress-database, gebruik _fields-parameter
Custom velden ontbrekenMeta-data niet blootgesteldGebruik het meta_data-veld om custom meta op te halen
PaginatieproblemenStandaard-paginagrootteStel per_page-parameter expliciet in (max 100)

Best practices

  1. Gebruik webhooks voor realtime-sync - Configureer WooCommerce-webhooks in plaats van polling op de API
  2. Verifieer webhook-signatures - Valideer altijd de X-WC-Webhook-Signature-header
  3. Pagineer alle list-requests - Gebruik page- en per_page-parameters; controleer de X-WP-TotalPages-header
  4. Gebruik de _fields-parameter - Vraag alleen benodigde velden op om responsegrootte te verkleinen en prestaties te verbeteren
  5. Batch-operaties - Gebruik batch-endpoints voor bulk-create/update/delete (tot 100 items)
  6. Plan grote syncs - Draai initiële full syncs buiten piekuren om serverbelasting te voorkomen
  7. Activeer HTTPS - De WooCommerce API vereist HTTPS voor OAuth-authenticatie

Beveiliging

  • OAuth 1.0a - Veilige authenticatie via Consumer Key/Secret-paren
  • HMAC webhook-signatures - SHA-256-signatureverificatie voor inkomende webhooks
  • HTTPS vereist - API vereist TLS-encryptie voor authenticatie
  • Rechtenscoping - API-sleutels kunnen worden ingesteld op Read, Write of Read/Write
  • WordPress-beveiliging - Profiteert van WordPress-core-beveiligingsupdates
  • PCI-overwegingen - Betaaldata wordt verwerkt door WooCommerce-payment gateways en niet via de API blootgesteld

Gerelateerde resources

Vraag vroegtijdige toegang aan

Vul je voornaam en je zakelijke e-mailadres in. We sturen je een link om je aanvraag voor toegang tot Tajo te bevestigen.

AI-assistent

Hallo! Stel me vragen over de documentatie.

Deze pagina als Markdown: woocommerce.md

Markdown laden…
Openen in Claude Openen in ChatGPT