BigCommerce Connector
BigCommerce Connector
Forbind din BigCommerce-butik til Brevo via Tajo for komplet e-handelsdatasynkronisering. Synkronisér kunder, ordrer, produkter og kurvhændelser for at drive målrettede marketingkampagner, genopretning af forladte kurve og automatisering efter køb.
Oversigt
| Egenskab | Værdi |
|---|---|
| Platform | BigCommerce |
| Kategori | E-handel |
| Opsætningskompleksitet | Mellem |
| Officiel integration | Nej |
| Synkroniserede data | Kunder, ordrer, produkter, kurve |
| Tilgængelige skills | 10 |
Funktioner
- Kundesynkronisering - Realtidssynkronisering af kundedata til Brevo-kontakter
- Ordresporing - Ordrelivscyklushændelser til marketing-flows efter køb
- Produktkatalogsynkronisering - Synkronisér produkter til e-mailanbefalinger og dynamisk indhold
- Kurvforladelse - Spor og genopret forladte kurve med automatiserede e-mails
- Multi-storefront-understøttelse - Forbind flere BigCommerce-storefronts
- Webhook-drevne opdateringer - Realtidsdataopdateringer via BigCommerce-webhooks
- Brugerdefinerede felter - Knyt BigCommerce-brugerdefinerede felter til Brevo-kontaktattributter
- Lagersporing - Synkronisér lagerniveauer til notifikationer om lager igen på lager
Forudsætninger
Før du begynder, skal du sikre dig, at du har:
- En BigCommerce-butik med Store Owner- eller Admin-adgang
- En BigCommerce API-konto med passende OAuth-scopes
- Din Store Hash (findes i din butiks-URL eller API-legitimationsoplysninger)
- En Brevo-konto med API-adgang
- En Tajo-konto med API-legitimationsoplysninger
Autentifikation
API-konto-legitimationsoplysninger
BigCommerce bruger OAuth-baserede API-konti. Opret en i dit BigCommerce-kontrolpanel under Settings > API > API Accounts.
Du modtager:
- Client ID - Din app-identifikator
- Client Secret - Din app-secret (opbevar sikkert)
- Access Token - Bruges til API-autentifikation
- Store Hash - Din unikke butiksidentifikator
curl https://api.bigcommerce.com/stores/{store_hash}/v3/catalog/products \ -H "X-Auth-Token: YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -H "Accept: application/json"Påkrævede OAuth-scopes
| Scope | Adgang | Formål |
|---|---|---|
store_v2_customers | Læs | Synkronisering af kundedata |
store_v2_orders | Læs | Tracking af ordrehændelser |
store_v2_products | Læs | Produktkatalogsynkronisering |
store_cart | Læs | Sporing af forladte kurve |
store_v2_information | Læs | Butikskonfiguration |
store_v2_content | Læs | Storefront-indhold |
Konfiguration
Grundlæggende opsætning
connectors: bigcommerce: enabled: true store_hash: "your-store-hash" access_token: "your-access-token" client_id: "your-client-id"
# Data sync options sync: customers: true orders: true products: true carts: true inventory: false
# Brevo list assignment lists: all_customers: 40 buyers: 41 abandoned_cart: 42Kundefeltmapping
Knyt BigCommerce-kundefelter til Brevo-attributter:
customer_mapping: email: email first_name: FIRSTNAME last_name: LASTNAME phone: SMS company: COMPANY
# Address fields addresses[0].city: CITY addresses[0].state: STATE addresses[0].country: COUNTRY addresses[0].zip: ZIP
# E-commerce metrics orders_count: ORDER_COUNT total_spent: TOTAL_SPENT date_created: SIGNUP_DATE
# Customer group customer_group_id: CUSTOMER_GROUPWebhook-konfiguration
webhooks: - scope: "store/customer/created" destination: "customer_created" - scope: "store/customer/updated" destination: "customer_updated" - scope: "store/order/created" destination: "order_placed" - scope: "store/order/updated" destination: "order_updated" - scope: "store/order/statusUpdated" destination: "order_status_changed" - scope: "store/cart/created" destination: "cart_created" - scope: "store/cart/updated" destination: "cart_updated" - scope: "store/cart/abandoned" destination: "cart_abandoned" - scope: "store/inventory/updated" destination: "inventory_changed"API-endpoints
| Metode | Endpoint | Beskrivelse |
|---|---|---|
GET | /v3/customers | Vis kunder |
POST | /v3/customers | Opret kunder |
PUT | /v3/customers | Opdatér kunder |
GET | /v2/orders | Vis ordrer |
GET | /v2/orders/{id} | Hent ordredetaljer |
GET | /v3/catalog/products | Vis produkter |
GET | /v3/catalog/products/{id} | Hent produktdetaljer |
GET | /v3/catalog/products/{id}/variants | Vis produktvarianter |
GET | /v3/carts | Vis kurve |
GET | /v3/abandoned-carts | Vis forladte kurve |
POST | /v3/hooks | Opret en webhook |
GET | /v3/catalog/categories | Vis kategorier |
Kodeeksempler
Initialisér BigCommerce-konnektor
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect BigCommerce storeawait tajo.connectors.connect('bigcommerce', { storeHash: process.env.BC_STORE_HASH, accessToken: process.env.BC_ACCESS_TOKEN, clientId: process.env.BC_CLIENT_ID});Hent og synkronisér kunder
// Fetch customers from BigCommerceconst response = await fetch( `https://api.bigcommerce.com/stores/${STORE_HASH}/v3/customers?limit=250`, { headers: { 'X-Auth-Token': ACCESS_TOKEN, 'Content-Type': 'application/json' } });
const { data, meta } = await response.json();// data: [{ id, email, first_name, last_name, phone, ... }]// meta.pagination: { total, count, per_page, current_page, total_pages }Håndtér webhook-hændelser
// BigCommerce webhook handlerapp.post('/webhooks/bigcommerce', async (req, res) => { const { scope, store_id, data } = req.body;
// Verify the webhook is from your store if (store_id !== process.env.BC_STORE_HASH) { return res.status(401).send('Unauthorized'); }
// Forward to Tajo await tajo.connectors.handleWebhook('bigcommerce', { topic: scope, payload: data });
res.status(200).send('OK');});Synkronisér produktkatalog
// Full product catalog syncawait tajo.connectors.sync('bigcommerce', { type: 'full', resources: ['products'], includeVariants: true, includeImages: true});
// Check sync statusconst status = await tajo.connectors.status('bigcommerce');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// customersCount: 8200,// ordersCount: 4500,// productsCount: 620// }Ratebegrænsninger
| Plan | Grænse | Detaljer |
|---|---|---|
| Standard | 150 forespørgsler/30 sek | Per butik |
| Plus | 300 forespørgsler/30 sek | Per butik |
| Pro | 450 forespørgsler/30 sek | Per butik |
| Enterprise | Ubegrænset | Tilpassede grænser |
Yderligere grænser:
| Ressource | Grænse |
|---|---|
| Webhooks | 100 per butik |
| Per side | 250 poster maks. |
| Samtidige forespørgsler | Afhænger af plan |
Rate limit-headere
Overvåg headerne X-Rate-Limit-Requests-Left og X-Rate-Limit-Time-Reset-Ms for at administrere dit API-forbrug inden for grænserne.
Fejlfinding
| Problem | Årsag | Løsning |
|---|---|---|
401 Unauthorized | Ugyldig access token | Regenerér API-legitimationsoplysninger i BigCommerce-admin |
403 Forbidden | Manglende OAuth-scope | Tjek API-kontoens scopes, og tilføj de påkrævede rettigheder |
| Webhooks aktiveres ikke | Webhook-grænse nået | Tjek webhook-antal (maks. 100), og fjern ubrugte |
| Kurvhændelser mangler | Storefront-scripts ikke indlæst | Verificér trackingscript på BigCommerce-storefront |
| Produkter ude af synkronisering | Katalog-cache | Udløs manuel synkronisering, eller vent på webhook-opdateringer |
429 Too Many Requests | Ratebegrænsning overskredet | Implementér forespørgselskø med overvågning af rate limit-headere |
| Kundegrupper mangler | V2 vs. V3 API | Kundegrupper bruger V2 API’et; tjek endpoint-version |
Best practices
- Brug V3 API, hvor det er muligt - V3 API’et tilbyder bedre paginering, filtrering og JSON-svar
- Overvåg rate limit-headere - Spor
X-Rate-Limit-Requests-Leftfor at undgå at ramme grænserne - Registrér webhooks til realtidssynkronisering - Brug webhooks i stedet for polling til opdateringer af kunder og ordrer
- Batch-opdater kunder - Brug V3-bulk-kundeendpoints til store datasynkroniseringer
- Inkludér varianter i produktsynkronisering - Synkronisér produktvarianter for nøjagtig lagersporing
- Opsæt webhooks for forladte kurve - Kritisk for automatisering af genoprettelse af kurv
- Brug paginering - Paginér altid liste-endpoints; maks. 250 poster per side
Sikkerhed
- OAuth-token-autentifikation - Sikker tokenbaseret API-adgang
- Scoped rettigheder - API-konti er begrænset til specifikke datascopes
- Kun HTTPS - Al API-kommunikation krypteret via TLS
- Webhook-verifikation - Verificér webhook-kilde ved hjælp af store hash
- PCI DSS-compliant - BigCommerce håndterer betalingsdata sikkert
- SOC 2 Type II - BigCommerce-platformen er SOC 2-certificeret