Shopify-Connector
Connector-Status: In Arbeit Im Aufbau. Noch nicht verifiziert.
Illustration · Beispieldaten
Sync-Beispiel
Quelle
Shopify
Connector-Status: In Arbeit
Ziel
Ihr anderes Tool
Connector-Status: Eigenes Tool
Feldzuordnung
| Quellfeld | Zielfeld | Beispielwert |
|---|---|---|
record.id | source_id | record_1042 |
record.updated_at | updated_at | 2026-10-18T08:00:00Z |
record.value | value | sample_value |
- Entwerfen
- Einen Datensatz prüfen
- Diese Version freigeben
Der Status gilt für einzelne Connectoren und garantiert nicht, dass dieser Sync bereit ist. Felder zur Veranschaulichung. Prüfen Sie vor dem Sync das tatsächliche Schema und die Berechtigungen.
Verbinde deinen Shopify-Shop mit Brevo für eine vollständige Synchronisation von Kundendaten, Warenkorb-Abandonment-Recovery und automatisierte Marketingkampagnen.
Überblick
| Eigenschaft | Wert |
|---|---|
| Plattform | Shopify |
| Kategorie | E-Commerce |
| Einrichtungsaufwand | Einfach |
| Offizielle Integration | Nein |
| Synchronisierte Daten | Kund:innen, Bestellungen, Produkte, Warenkörbe, Events |
| Verfügbare Skills | 12 |
Funktionen
- Echtzeit-Kundendaten-Synchronisation – Kundendaten werden sofort mit Brevo-Kontakten synchronisiert
- Bestellverfolgung – Bestell-Events für Post-Purchase-Flows
- Produktkatalog-Synchronisation – Produkte stehen für Empfehlungen zur Verfügung
- Warenkorb-Abandonment – Abgebrochene Warenkörbe verfolgen und reaktivieren
- Browse-Verhalten – Tracking von Seitenaufrufen und Produktinteresse
- Multi-Shop-Unterstützung – Verbinde mehrere Shopify-Shops
Voraussetzungen
Bevor du beginnst, stelle sicher, dass du Folgendes hast:
- Einen Shopify-Shop mit Admin-Zugang
- Einen Brevo-Account mit API-Zugang
- Einen Tajo-Account
Installation
Option 1: Shopify App Store (empfohlen)
- Besuche die Tajo-App im Shopify App Store
- Klicke auf „Add app”
- Erteile die angeforderten Berechtigungen
- Verbinde deinen Brevo-Account
Option 2: Manuelle Installation
Schritt 1: Eine Shopify-App erstellen
- Gehe im Shopify-Admin zu Settings → Apps and sales channels
- Klicke auf „Develop apps” → „Create an app”
- Benenne sie „Tajo Integration”
Schritt 2: API-Scopes konfigurieren
Aktiviere diese Scopes:
read_customerswrite_customersread_ordersread_productsread_checkoutswrite_script_tagsSchritt 3: App installieren
# Using Tajo CLItajo connectors install shopify \ --shop-url your-store.myshopify.com \ --api-key $SHOPIFY_API_KEY \ --api-secret $SHOPIFY_API_SECRETSchritt 4: Webhooks konfigurieren
Tajo registriert automatisch folgende Webhooks:
| Webhook | Zweck |
|---|---|
customers/create | Synchronisation neuer Kund:innen |
customers/update | Änderungen an Kundendaten |
customers/delete | Entfernen von Kund:innen |
orders/create | Events bei Bestellaufgabe |
orders/updated | Änderungen des Bestellstatus |
checkouts/create | Warenkorb erstellt |
checkouts/update | Warenkorb aktualisiert |
Konfiguration
Grundlegende Einrichtung
connectors: shopify: enabled: true shop_url: "your-store.myshopify.com" api_version: "2024-01"
# Data sync options sync: customers: true orders: true products: true carts: true inventory: false # Optional
# List assignment lists: all_customers: 5 buyers: 6 abandoned_cart: 7Feld-Mapping
Mappe Shopify-Felder auf Brevo-Kontaktattribute:
Standard-Mappings
| Parameter | Type | Description |
|---|---|---|
email required | string | E-Mail der Kund:in (eindeutiger Identifier) |
first_name optional | string | Mappt auf das FIRSTNAME-Attribut |
last_name optional | string | Mappt auf das LASTNAME-Attribut |
phone optional | string | Mappt auf das SMS-Attribut für WhatsApp/SMS |
accepts_marketing optional | boolean | Steuert den Abonnement-Status |
orders_count optional | integer | Gesamtzahl der Bestellungen |
total_spent optional | number | Lifetime Customer Value |
tags optional | array | Kunden-Tags aus Shopify |
Mapping benutzerdefinierter Attribute
field_mapping: # Standard fields email: email first_name: FIRSTNAME last_name: LASTNAME phone: SMS
# E-commerce metrics orders_count: ORDER_COUNT total_spent: TOTAL_SPENT last_order_date: LAST_ORDER_DATE
# Custom fields customer_type: CUSTOMER_TYPE preferred_language: LANGUAGE loyalty_tier: VIP_TIER
# Computed fields average_order_value: AOV days_since_last_order: RECENCYProdukt-Synchronisation
Synchronisiere Produkte für E-Mail-Empfehlungen:
sync: products: enabled: true include_variants: true include_images: true categories_as_tags: true
# Filter products filter: status: active exclude_tags: ["hidden", "wholesale-only"]Bestandsverfolgung
Aktiviere die Synchronisation der Lagerbestände:
sync: inventory: enabled: true low_stock_threshold: 10 out_of_stock_events: trueEvents
Kunden-Events
| Event | Trigger | Anwendungsfall |
|---|---|---|
customer_created | Neuregistrierung einer Kund:in | Welcome-Serie |
customer_updated | Profiländerungen | Datensynchronisation |
customer_tags_added | Tags zugewiesen | Segment-Updates |
Bestell-Events
| Event | Trigger | Anwendungsfall |
|---|---|---|
order_placed | Checkout abgeschlossen | Bestellbestätigung |
order_fulfilled | Bestellung versandt | Versandbenachrichtigung |
order_cancelled | Bestellung storniert | Stornierungs-E-Mail |
order_refunded | Rückerstattung verarbeitet | Rückerstattungs-Bestätigung |
Warenkorb-Events
| Event | Trigger | Anwendungsfall |
|---|---|---|
cart_created | Artikel in den Warenkorb gelegt | Browse-Tracking |
cart_updated | Warenkorb geändert | Warenkorb-Wert-Tracking |
cart_abandoned | Kein Checkout innerhalb von 30 Min. | Recovery-E-Mails |
Freigeschaltete Skills
Der Shopify-Connector schaltet folgende Skills frei:
| Skill | Beschreibung |
|---|---|
| Customer Sync | Echtzeit-Kundendaten-Synchronisation |
| Order Events | Bestell-Lifecycle-Tracking |
| Abandoned Cart | Warenkorb-Recovery-E-Mails |
| Welcome Series | Onboarding für Neukund:innen |
| Post-Purchase | Bestell-Follow-up |
| Win-Back | Inaktive Kund:innen reaktivieren |
| Browse Abandonment | Follow-up bei Produktinteresse |
| Replenishment | Nachbestell-Erinnerungen |
Code-Beispiele
Connector initialisieren
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Shopify storeawait tajo.connectors.connect('shopify', { shopUrl: 'your-store.myshopify.com', apiKey: process.env.SHOPIFY_API_KEY, apiSecret: process.env.SHOPIFY_API_SECRET});Erst-Synchronisation ausführen
// Full historical syncawait tajo.connectors.sync('shopify', { type: 'full', resources: ['customers', 'orders', 'products'], since: '2023-01-01'});
// Check sync statusconst status = await tajo.connectors.status('shopify');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// customersCount: 15420,// ordersCount: 8234,// productsCount: 342// }Warenkorb-Events tracken
Füge das Tajo-Skript zu deinem Shopify-Theme hinzu:
<!-- Add to theme.liquid before </head> -->{% if customer %}<script> window.tajoConfig = { customerId: "{{ customer.id }}", customerEmail: "{{ customer.email }}", customerName: "{{ customer.first_name }}" };</script>{% endif %}<script src="https://cdn.example.com/shopify.js"></script>Caution
Die Adresse example.com oben ist ein Platzhalter, bis der Tajo-Endpunkt verfügbar ist.
Benutzerdefinierter Webhook-Handler
// Handle Shopify webhooks manuallyapp.post('/webhooks/shopify', async (req, res) => { const hmac = req.get('X-Shopify-Hmac-SHA256');
// Verify webhook signature if (!verifyShopifyWebhook(req.body, hmac)) { return res.status(401).send('Unauthorized'); }
const topic = req.get('X-Shopify-Topic');
// Forward to Tajo await tajo.connectors.handleWebhook('shopify', { topic, payload: req.body });
res.status(200).send('OK');});Monitoring
Dashboard-Metriken
Überwache deine Shopify-Verbindung im Tajo-Dashboard:
- Sync-Status: Echtzeit-Zustand der Verbindung
- Synchronisierte Kund:innen: Gesamtzahl der Kontakte aus Shopify
- Erfasste Bestellungen: Verarbeitete Bestell-Events
- Cart-Recovery: Performance bei abgebrochenen Warenkörben
- Fehlerrate: Fehlgeschlagene Synchronisationsversuche
Webhook-Logs
Zeige den Webhook-Zustellstatus an:
tajo connectors logs shopify --type webhook --last 24hSynchronisationsverlauf
Historische Synchronisations-Operationen prüfen:
tajo connectors history shopify --limit 10Fehlerbehebung
Häufige Probleme
API Rate Limits
Shopify hat API-Rate-Limits von 2 Requests/Sekunde. Nutze Batch-Synchronisation für große historische Importe.
| Problem | Ursache | Lösung |
|---|---|---|
| Webhook nicht empfangen | App-Berechtigungen | App mit korrekten Scopes neu installieren |
| Kund:in nicht synchronisiert | Fehlende E-Mail | Shopify verlangt für Kund:innen eine E-Mail-Adresse |
| Produkte fehlen | Produktstatus | Prüfe, ob das Produkt den Status „active” hat |
| Warenkorb nicht getrackt | Skript nicht geladen | Skript in der theme.liquid prüfen |
Debug-Modus
Ausführliches Logging aktivieren:
connectors: shopify: debug: true log_level: verbose log_webhooks: trueVerbindung testen
tajo connectors test shopify# ✓ API connection successful# ✓ Webhooks registered# ✓ Products accessible# ✓ Customers readable# ✓ Orders readableBest Practices
- Mit einem Test-Shop starten – Nutze zunächst einen Development-Store
- Erst-Synchronisation außerhalb der Stoßzeiten – Große Synchronisationen können langsam sein
- Benutzerdefinierte Attribute mappen – Verlasse dich nicht nur auf Standard-Mappings
- Warenkorb-Tracking aktivieren – Entscheidend für Warenkorb-Abandonment-Recovery
- Webhook-Gesundheit überwachen – Richte Alerts für fehlgeschlagene Zustellungen ein
- Batch-Importe nutzen – Für historische Daten ab 10.000 Datensätzen
Sicherheit
- OAuth 2.0 – Sichere Token-basierte Authentifizierung
- Webhook-Verifizierung – Validierung der HMAC-Signatur
- Verschlüsselte Speicherung – API-Zugangsdaten werden verschlüsselt abgelegt
- Gescopeter Zugriff – Nur minimal erforderliche Berechtigungen