---
title: "WooCommerce Connector"
description: "Popoln vodnik za integracijo WooCommerce za sinhronizacijo strank, naročil, izdelkov in dogodkov košarice z Brevo prek Tajo."
url: https://tajo.io/sl/docs/connectors/ecommerce/woocommerce/
markdown: https://tajo.io/sl/docs/connectors/ecommerce/woocommerce.md
lang: sl-SI
robots: noindex
---

Zaprosite za zgodnji dostop

Vnesite svoje ime in službeni e-poštni naslov. Poslali vam bomo povezavo za potrditev zahteve za dostop do Taja.

# WooCommerce Connector

Stanje konektorja: V razvoju V izdelavi. Še ni preverjeno.

| Izvorno polje | Ciljno polje | Vzorčna vrednost |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Poveži svojo WooCommerce trgovino z Brevo prek Tajo za popolno sinhronizacijo podatkov e-trgovine. Izkoristi WooCommerce REST API za sinhronizacijo strank, naročil, izdelkov in kuponov za ciljne marketinške kampanje in avtomatizirane delovne tokove.

## Pregled

| Lastnost | Vrednost |
| --- | --- |
| **Platforma** | WooCommerce (WordPress) |
| **Kategorija** | E-commerce |
| **Zahtevnost nastavitve** | Srednja |
| **Uradna integracija** | Ne |
| **Sinhronizirani podatki** | Stranke, naročila, izdelki, kuponi |
| **Razpoložljivi Skills** | 10 |

## Funkcionalnosti

- **Sinhronizacija strank** – sinhronizacija podatkov strank v stike Brevo v realnem času
- **Sledenje naročilom** – popolno sledenje življenjskemu ciklu naročila za tokove po nakupu
- **Sinhronizacija kataloga izdelkov** – sinhronizacija izdelkov in variacij za priporočila v e-mailih
- **Upravljanje kuponov** – sinhronizacija kuponskih kod za promocijske kampanje
- **Podpora za webhooke** – posodobitve v realnem času prek WooCommerce webhookov
- **Opuščanje košarice** – sledi in obnovi zapuščene košarice
- **Podpora za več spletnih mest** – poveži namestitve WordPress multisite WooCommerce
- **Meta polja po meri** – preslikaj WooCommerce meta polja po meri v atribute Brevo

## Predpogoji

Preden začneš, se prepričaj, da imaš:

1. WordPress stran z nameščenim in aktiviranim vtičnikom WooCommerce
2. Omogočen WooCommerce REST API (Settings > Advanced > REST API)
3. Generirani API Consumer Key in Consumer Secret
4. Tvoja stran mora uporabljati HTTPS za API avtentikacijo
5. Brevo račun z dostopom do API
6. Tajo račun z API poverilnicami

## Avtentikacija

### REST API ključi

WooCommerce uporablja pare Consumer Key in Consumer Secret za avtentikacijo. Generiraj jih v WooCommerce > Settings > Advanced > REST API.

#### OAuth 1.0a (HTTPS strani)

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

#### Avtentikacija prek poizvedbenega niza (HTTPS)

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

### Ravni dovoljenj

| Dovoljenje | Dostop |
| --- | --- |
| **Read** | Samo pregled virov |
| **Write** | Ustvarjanje in urejanje virov |
| **Read/Write** | Poln CRUD dostop |

## Konfiguracija

### Osnovna nastavitev

```yaml
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
```

### Preslikava polj strank

Preslikaj polja strank WooCommerce v atribute Brevo:

```yaml
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
```

### Konfiguracija webhookov

Registriraj webhooke v WooCommerce > Settings > Advanced > Webhooks:

```yaml
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 končne točke

| Metoda | Končna točka | Opis |
| --- | --- | --- |
| `GET` | `/wc/v3/customers` | Seznam strank |
| `POST` | `/wc/v3/customers` | Ustvari stranko |
| `GET` | `/wc/v3/customers/{id}` | Pridobi stranko |
| `PUT` | `/wc/v3/customers/{id}` | Posodobi stranko |
| `GET` | `/wc/v3/orders` | Seznam naročil |
| `POST` | `/wc/v3/orders` | Ustvari naročilo |
| `GET` | `/wc/v3/orders/{id}` | Pridobi naročilo |
| `GET` | `/wc/v3/products` | Seznam izdelkov |
| `GET` | `/wc/v3/products/{id}` | Pridobi izdelek |
| `GET` | `/wc/v3/products/{id}/variations` | Seznam variacij izdelka |
| `GET` | `/wc/v3/coupons` | Seznam kuponov |
| `GET` | `/wc/v3/reports/sales` | Pridobi prodajna poročila |
| `GET` | `/wc/v3/reports/top_sellers` | Pridobi najboljše prodajalce |
| `POST` | `/wc/v3/webhooks` | Ustvari webhook |

## Primeri kode

### Inicializacija WooCommerce konektorja

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

### Pridobivanje in sinhronizacija strank

```javascript
// 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'];
```

### Obravnava dogodkov webhook

```javascript
// 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');
});
```

### Paketne operacije

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

## Omejitve zahtevkov

WooCommerce sam ne uveljavlja API omejitev, lahko pa jih omeji WordPress strežnik in gostitelj:

| Dejavnik | Tipična omejitev | Podrobnosti |
| --- | --- | --- |
| **Deljeno gostovanje** | 50–100 zahtevkov/min | Odvisno od gostitelja |
| **Upravljano WP gostovanje** | 200–500 zahtevkov/min | WP Engine, Kinsta itd. |
| **Lastno gostovanje** | Ni trde omejitve | Omejeno z viri strežnika |
| **Na stran** | Največ 100 zapisov | Privzeto 10 |
| **Paketne operacije** | 100 elementov/paket | Ustvari, posodobi ali izbriši |

Zmogljivost strežnika

Velike trgovine WooCommerce lahko imajo počasne API odzive. Uporabi paginacijo, omeji polja s parametrom `_fields` in načrtuj množične sinhronizacije izven konic.

## Odpravljanje težav

| Težava | Vzrok | Rešitev |
| --- | --- | --- |
| `401 Unauthorized` | Neveljavni API ključi | Regeneriraj Consumer Key/Secret v nastavitvah WooCommerce |
| `403 Forbidden` | Nezadostna dovoljenja | Nastavi API ključ na Read/Write dostop |
| Napake SSL certifikata | Neveljaven SSL na strani | Zagotovi veljaven SSL certifikat; nastavi `verify_ssl: false` samo za testiranje |
| Webhooki se ne sprožijo | Onemogočen WordPress cron | Omogoči WP-Cron ali nastavi cron na ravni strežnika |
| Počasni API odzivi | Velika baza podatkov | Optimiziraj WordPress bazo, uporabi parameter `_fields` |
| Manjkajo polja po meri | Meta podatki niso izpostavljeni | Uporabi polje `meta_data` za dostop do meta po meri |
| Težave s paginacijo | Privzeta velikost strani | Eksplicitno nastavi parameter `per_page` (največ 100) |

## Najboljše prakse

1. **Uporabljaj webhooke za sinhronizacijo v realnem času** – nastavi WooCommerce webhooke namesto poizvedovanja API
2. **Preveri podpise webhookov** – vedno potrdi glavo `X-WC-Webhook-Signature`
3. **Paginaj vse zahteve seznamov** – uporabi parametra `page` in `per_page`; preveri glavo `X-WP-TotalPages`
4. **Uporabi parameter `_fields`** – zahtevaj samo potrebna polja za manjše odgovore in boljšo zmogljivost
5. **Paketne operacije** – uporabi paketne končne točke za množično ustvarjanje/posodabljanje/brisanje (do 100 elementov)
6. **Načrtuj velike sinhronizacije** – začetne polne sinhronizacije izvajaj izven konic, da preprečiš obremenitev strežnika
7. **Omogoči HTTPS** – WooCommerce API za OAuth avtentikacijo zahteva HTTPS

## Varnost

- **OAuth 1.0a** – varna avtentikacija prek parov Consumer Key/Secret
- **HMAC podpisi webhook** – preverjanje SHA-256 podpisov za prihajajoče webhooke
- **HTTPS obvezen** – API zahteva TLS šifriranje za avtentikacijo
- **Obsegana dovoljenja** – API ključi so lahko nastavljeni na Read, Write ali Read/Write
- **Varnost WordPress** – koristi varnostne posodobitve jedra WordPress
- **PCI premisleki** – plačilne podatke obravnavajo plačilni prehodi WooCommerce, niso izpostavljeni prek API

## Povezani viri

- [Shopify Connector](https://tajo.io/sl/docs/connectors/ecommerce/shopify)
- [BigCommerce Connector](https://tajo.io/sl/docs/connectors/ecommerce/bigcommerce)
- [Customer Sync Skill](https://tajo.io/sl/docs/skills/data-sync/customer-sync)
- [Abandoned Cart Skill](https://tajo.io/sl/docs/skills/email-marketing/abandoned-cart)
