Σύνδεσμος WooCommerce

Σύνδεσμος WooCommerce

Συνδέστε το κατάστημα WooCommerce με το Brevo μέσω Tajo για πλήρη συγχρονισμό δεδομένων ηλεκτρονικού εμπορίου. Αξιοποιήστε το WooCommerce REST API για συγχρονισμό πελατών, παραγγελιών, προϊόντων και δεδομένων κουπονιών για στοχευμένες καμπάνιες marketing και αυτοματοποιημένες ροές εργασίας.

Επισκόπηση

ΙδιότηταΤιμή
ΠλατφόρμαWooCommerce (WordPress)
ΚατηγορίαΗλεκτρονικό Εμπόριο
Πολυπλοκότητα ΡύθμισηςΜεσαία
Επίσημη ΕνσωμάτωσηΌχι
Δεδομένα που ΣυγχρονίζονταιΠελάτες, Παραγγελίες, Προϊόντα, Κουπόνια
Διαθέσιμες Δεξιότητες10

Χαρακτηριστικά

  • Συγχρονισμός πελατών - Συγχρονισμός δεδομένων πελάτη σε πραγματικό χρόνο στις επαφές Brevo
  • Παρακολούθηση παραγγελιών - Πλήρης παρακολούθηση εκδηλώσεων κύκλου ζωής παραγγελίας για ροές μετά-αγοράς
  • Συγχρονισμός καταλόγου προϊόντων - Συγχρονισμός προϊόντων και παραλλαγών για συστάσεις email
  • Διαχείριση κουπονιών - Συγχρονισμός κωδικών κουπονιών για προωθητικές καμπάνιες
  • Υποστήριξη webhook - Ενημερώσεις σε πραγματικό χρόνο μέσω webhooks WooCommerce
  • Εγκατάλειψη καλαθιού - Παρακολούθηση και ανάκτηση εγκαταλελειμμένων καλαθιών
  • Υποστήριξη πολλαπλών τοποθεσιών - Σύνδεση εγκαταστάσεων WooCommerce WordPress multisite
  • Προσαρμοσμένα meta πεδία - Αντιστοίχηση προσαρμοσμένων meta WooCommerce σε χαρακτηριστικά Brevo

Προαπαιτούμενα

Πριν ξεκινήσετε, βεβαιωθείτε ότι διαθέτετε:

  1. Τοποθεσία WordPress με εγκατεστημένο και ενεργοποιημένο plugin WooCommerce
  2. Ενεργοποιημένο WooCommerce REST API (Ρυθμίσεις > Προχωρημένες > REST API)
  3. Δημιουργημένα API Consumer Key και Consumer Secret
  4. Η τοποθεσία σας πρέπει να χρησιμοποιεί HTTPS για πιστοποίηση API
  5. Λογαριασμό Brevo με πρόσβαση API
  6. Λογαριασμό Tajo με διαπιστευτήρια API

Πιστοποίηση

Κλειδιά REST API

Το WooCommerce χρησιμοποιεί ζεύγη Consumer Key και Consumer Secret για πιστοποίηση. Δημιουργήστε τα στο WooCommerce > Ρυθμίσεις > Προχωρημένες > REST API.

OAuth 1.0a (τοποθεσίες HTTPS)

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

Πιστοποίηση με Query String (HTTPS)

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

Επίπεδα Δικαιωμάτων

ΔικαίωμαΠρόσβαση
ΑνάγνωσηΠροβολή πόρων μόνο
ΕγγραφήΔημιουργία και επεξεργασία πόρων
Ανάγνωση/ΕγγραφήΠλήρης πρόσβαση CRUD

Διαμόρφωση

Βασική Ρύθμιση

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

Αντιστοίχιση Πεδίων Πελάτη

Αντιστοίχηση πεδίων πελάτη WooCommerce σε χαρακτηριστικά Brevo:

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

Εγγράψτε webhooks στο WooCommerce > Ρυθμίσεις > Προχωρημένες > 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"

Endpoints API

ΜέθοδοςEndpointΠεριγραφή
GET/wc/v3/customersΛίστα πελατών
POST/wc/v3/customersΔημιουργία πελάτη
GET/wc/v3/customers/{id}Λήψη πελάτη
PUT/wc/v3/customers/{id}Ενημέρωση πελάτη
GET/wc/v3/ordersΛίστα παραγγελιών
POST/wc/v3/ordersΔημιουργία παραγγελίας
GET/wc/v3/orders/{id}Λήψη παραγγελίας
GET/wc/v3/productsΛίστα προϊόντων
GET/wc/v3/products/{id}Λήψη προϊόντος
GET/wc/v3/products/{id}/variationsΛίστα παραλλαγών προϊόντος
GET/wc/v3/couponsΛίστα κουπονιών
GET/wc/v3/reports/salesΛήψη αναφορών πωλήσεων
GET/wc/v3/reports/top_sellersΛήψη κορυφαίων πωλητών
POST/wc/v3/webhooksΔημιουργία webhook

Παραδείγματα Κώδικα

Αρχικοποίηση Συνδέσμου WooCommerce

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
});

Λήψη και Συγχρονισμός Πελατών

// 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

// 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

// 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]
});

Όρια Ρυθμού

Το WooCommerce δεν επιβάλλει από μόνο του όρια ρυθμού API, αλλά ο υποκείμενος server WordPress και ο πάροχος hosting μπορεί να επιβάλλουν όρια:

ΠαράγονταςΤυπικό ΌριοΛεπτομέρειες
Shared hosting50-100 αιτ./λεπτόΠοικίλει ανά host
Managed WP hosting200-500 αιτ./λεπτόWP Engine, Kinsta, κ.λπ.
Self-hostedΧωρίς αυστηρό όριοΠεριορίζεται από πόρους server
Ανά σελίδαΜέγ. 100 εγγραφέςΠροεπιλογή είναι 10
Λειτουργίες batch100 στοιχεία/batchΔημιουργία, ενημέρωση ή διαγραφή

Απόδοση Server

Μεγάλα καταστήματα WooCommerce μπορεί να εμφανίζουν αργές αποκρίσεις API. Χρησιμοποιήστε σελιδοποίηση, περιορίστε πεδία με παράμετρο _fields και προγραμματίστε μαζικούς συγχρονισμούς κατά τις ώρες χαμηλής κίνησης.

Αντιμετώπιση Προβλημάτων

ΠρόβλημαΑιτίαΛύση
401 UnauthorizedΜη έγκυρα κλειδιά APIΑναγεννήστε Consumer Key/Secret στις ρυθμίσεις WooCommerce
403 ForbiddenΑνεπαρκή δικαιώματαΟρίστε κλειδί API σε πρόσβαση Ανάγνωση/Εγγραφή
Σφάλματα πιστοποιητικού SSLΜη έγκυρο SSL στην τοποθεσίαΒεβαιωθείτε για έγκυρο πιστοποιητικό SSL· ορίστε verify_ssl: false μόνο για δοκιμή
Τα webhooks δεν ενεργοποιούνταιΑπενεργοποιημένο WordPress cronΕνεργοποιήστε WP-Cron ή ρυθμίστε cron επιπέδου server
Αργές αποκρίσεις APIΜεγάλη βάση δεδομένωνΒελτιστοποιήστε βάση δεδομένων WordPress, χρησιμοποιήστε παράμετρο _fields
Λείπουν προσαρμοσμένα πεδίαΤα meta δεδομένα δεν εκτίθενταιΧρησιμοποιήστε πεδίο meta_data για πρόσβαση σε προσαρμοσμένα meta
Προβλήματα σελιδοποίησηςΠροεπιλεγμένο μέγεθος σελίδαςΟρίστε ρητά παράμετρο per_page (μέγ. 100)

Βέλτιστες Πρακτικές

  1. Χρησιμοποιήστε webhooks για συγχρονισμό σε πραγματικό χρόνο - Ρυθμίστε webhooks WooCommerce αντί polling API
  2. Επικυρώστε υπογραφές webhook - Να επαληθεύετε πάντα το header X-WC-Webhook-Signature
  3. Σελιδοποιήστε όλα τα αιτήματα λίστας - Χρησιμοποιήστε παραμέτρους page και per_page· ελέγξτε header X-WP-TotalPages
  4. Χρησιμοποιήστε παράμετρο _fields - Ζητήστε μόνο τα απαραίτητα πεδία για μείωση μεγέθους απόκρισης και βελτίωση απόδοσης
  5. Λειτουργίες batch - Χρησιμοποιήστε batch endpoints για λειτουργίες μαζικής δημιουργίας/ενημέρωσης/διαγραφής (έως 100 στοιχεία)
  6. Προγραμματίστε μεγάλους συγχρονισμούς - Εκτελέστε αρχικούς πλήρεις συγχρονισμούς κατά τις ώρες χαμηλής κίνησης για αποφυγή πίεσης server
  7. Ενεργοποιήστε HTTPS - Το WooCommerce API απαιτεί HTTPS για πιστοποίηση OAuth

Ασφάλεια

  • OAuth 1.0a - Ασφαλής πιστοποίηση μέσω ζευγών Consumer Key/Secret
  • Υπογραφές webhook HMAC - Επικύρωση υπογραφής SHA-256 για εισερχόμενα webhooks
  • Απαιτείται HTTPS - Το API απαιτεί κρυπτογράφηση TLS για πιστοποίηση
  • Εύρος δικαιωμάτων - Τα κλειδιά API μπορούν να οριστούν σε Ανάγνωση, Εγγραφή ή Ανάγνωση/Εγγραφή
  • Ασφάλεια WordPress - Επωφελείται από ενημερώσεις ασφαλείας πυρήνα WordPress
  • Εκτιμήσεις PCI - Τα δεδομένα πληρωμής χειρίζονται από gateways πληρωμής WooCommerce, δεν εκτίθενται μέσω API

Σχετικοί Πόροι

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

AI Βοηθός

Γεια! Ρωτήστε με οτιδήποτε για την τεκμηρίωση.

Ξεκινήστε δωρεάν με το Brevo