BigCommerce Bağlayıcısı
BigCommerce Bağlayıcısı
BigCommerce mağazanızı eksiksiz e-ticaret veri senkronizasyonu için Tajo üzerinden Brevo’ya bağlayın. Hedefli pazarlama kampanyaları, terk edilmiş sepet kurtarma ve satın alma sonrası otomasyon için müşterileri, siparişleri, ürünleri ve sepet olaylarını senkronize edin.
Genel Bakış
| Özellik | Değer |
|---|---|
| Platform | BigCommerce |
| Kategori | E-ticaret |
| Kurulum Karmaşıklığı | Orta |
| Resmi Entegrasyon | Hayır |
| Senkronize Edilen Veri | Müşteriler, Siparişler, Ürünler, Sepetler |
| Mevcut Yetenekler | 10 |
Özellikler
- Müşteri senkronizasyonu - Brevo kişilerine gerçek zamanlı müşteri verisi senkronizasyonu
- Sipariş takibi - Satın alma sonrası pazarlama akışları için sipariş yaşam döngüsü olayları
- Ürün kataloğu senkronizasyonu - E-posta önerileri ve dinamik içerik için ürünleri senkronize edin
- Sepet terki - Otomatik e-postalarla terk edilmiş sepetleri takip edin ve kurtarın
- Çoklu mağaza ön yüzü desteği - Birden fazla BigCommerce mağaza ön yüzünü bağlayın
- Webhook tabanlı güncellemeler - BigCommerce webhook’ları aracılığıyla gerçek zamanlı veri güncellemeleri
- Özel alanlar - BigCommerce özel alanlarını Brevo kişi özniteliklerine eşleyin
- Envanter takibi - Stoğa geri döndüğünde bildirimler için stok seviyelerini senkronize edin
Ön Koşullar
Başlamadan önce sahip olmanız gerekenler:
- Mağaza Sahibi veya Yönetici erişimine sahip bir BigCommerce mağazası
- Uygun OAuth kapsamlarına sahip bir BigCommerce API hesabı
- Mağaza Karmanız (mağaza URL’nizde veya API kimlik bilgilerinizde bulunur)
- API erişimi olan bir Brevo hesabı
- API kimlik bilgilerine sahip bir Tajo hesabı
Kimlik Doğrulama
API Hesap Kimlik Bilgileri
BigCommerce, OAuth tabanlı API hesapları kullanır. BigCommerce kontrol panelinizde Ayarlar > API > API Hesapları bölümünden bir tane oluşturun.
Şunları alacaksınız:
- Client ID - Uygulama tanımlayıcınız
- Client Secret - Uygulama gizli anahtarınız (güvenli bir şekilde saklayın)
- Access Token - API kimlik doğrulaması için kullanılır
- Store Hash - Benzersiz mağaza tanımlayıcınız
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"Gerekli OAuth Kapsamları
| Kapsam | Erişim | Amaç |
|---|---|---|
store_v2_customers | Read | Müşteri verisi senkronizasyonu |
store_v2_orders | Read | Sipariş olay takibi |
store_v2_products | Read | Ürün kataloğu senkronizasyonu |
store_cart | Read | Sepet terki takibi |
store_v2_information | Read | Mağaza yapılandırması |
store_v2_content | Read | Mağaza ön yüzü içeriği |
Yapılandırma
Temel Kurulum
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: 42Müşteri Alan Eşleme
BigCommerce müşteri alanlarını Brevo özniteliklerine eşleyin:
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 Yapılandırması
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 Uç Noktaları
| Yöntem | Uç Nokta | Açıklama |
|---|---|---|
GET | /v3/customers | Müşterileri listele |
POST | /v3/customers | Müşteri oluştur |
PUT | /v3/customers | Müşterileri güncelle |
GET | /v2/orders | Siparişleri listele |
GET | /v2/orders/{id} | Sipariş detaylarını al |
GET | /v3/catalog/products | Ürünleri listele |
GET | /v3/catalog/products/{id} | Ürün detaylarını al |
GET | /v3/catalog/products/{id}/variants | Ürün varyantlarını listele |
GET | /v3/carts | Sepetleri listele |
GET | /v3/abandoned-carts | Terk edilmiş sepetleri listele |
POST | /v3/hooks | Webhook oluştur |
GET | /v3/catalog/categories | Kategorileri listele |
Kod Örnekleri
BigCommerce Bağlayıcısını Başlat
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});Müşterileri Getir ve Senkronize Et
// 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 }Webhook Olaylarını İşle
// 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');});Ürün Kataloğunu Senkronize Et
// 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// }Hız Limitleri
| Plan | Limit | Detaylar |
|---|---|---|
| Standard | 150 istek/30 saniye | Mağaza başına |
| Plus | 300 istek/30 saniye | Mağaza başına |
| Pro | 450 istek/30 saniye | Mağaza başına |
| Enterprise | Sınırsız | Özel limitler |
Ek limitler:
| Kaynak | Limit |
|---|---|
| Webhook’lar | Mağaza başına 100 |
| Sayfa başına | Maksimum 250 kayıt |
| Eşzamanlı istekler | Plana bağlı |
Hız Limit Başlıkları
API kullanımınızı limitler içinde yönetmek için X-Rate-Limit-Requests-Left ve X-Rate-Limit-Time-Reset-Ms başlıklarını izleyin.
Sorun Giderme
| Sorun | Neden | Çözüm |
|---|---|---|
401 Unauthorized | Geçersiz erişim belirteci | BigCommerce yöneticisinden API kimlik bilgilerini yeniden oluşturun |
403 Forbidden | Eksik OAuth kapsamı | API hesap kapsamlarını kontrol edin ve gerekli izinleri ekleyin |
| Webhook’lar tetiklenmiyor | Webhook limitine ulaşıldı | Webhook sayısını kontrol edin (maks. 100) ve kullanılmayanları kaldırın |
| Sepet olayları eksik | Mağaza ön yüzü betikleri yüklenmedi | BigCommerce mağaza ön yüzündeki takip betiğini doğrulayın |
| Ürünler senkronize değil | Katalog önbelleği | Manuel senkronizasyonu tetikleyin veya webhook güncellemelerini bekleyin |
429 Too Many Requests | Hız limiti aşıldı | Hız limit başlığı izleme ile istek kuyruğa alma uygulayın |
| Müşteri grupları eksik | V2 ve V3 API | Müşteri grupları V2 API’sini kullanır; uç nokta sürümünü kontrol edin |
En İyi Uygulamalar
- Mümkün olduğunda V3 API kullanın - V3 API daha iyi sayfalama, filtreleme ve JSON yanıtları sunar
- Hız limit başlıklarını izleyin - Limitlere takılmamak için
X-Rate-Limit-Requests-Leftdeğerini takip edin - Gerçek zamanlı senkronizasyon için webhook’ları kaydedin - Müşteri ve sipariş güncellemeleri için poll yerine webhook kullanın
- Müşteri güncellemelerini gruplandırın - Büyük veri senkronizasyonları için V3 toplu müşteri uç noktalarını kullanın
- Ürün senkronizasyonuna varyantları dahil edin - Doğru envanter takibi için ürün varyantlarını senkronize edin
- Terk edilmiş sepet webhook’larını kurun - Sepet kurtarma e-posta otomasyonu için kritik
- Sayfalama kullanın - Liste uç noktalarını her zaman sayfalandırın; sayfa başına maks. 250 kayıt
Güvenlik
- OAuth belirteç kimlik doğrulaması - Güvenli belirteç tabanlı API erişimi
- Kapsamlandırılmış izinler - API hesapları belirli veri kapsamlarıyla sınırlandırılır
- Yalnızca HTTPS - Tüm API iletişimi TLS aracılığıyla şifrelenir
- Webhook doğrulama - Mağaza karması kullanarak webhook kaynağını doğrulayın
- PCI DSS uyumlu - BigCommerce ödeme verilerini güvenli şekilde işler
- SOC 2 Type II - BigCommerce platformu SOC 2 sertifikalıdır