Integrationen

Odoo verbinden

Verbinde deine Odoo-Instanz mit einem Benutzer-API-Key, bilde Leads, Opportunities, Kontakte, Sales Orders und bezahlte Rechnungen auf deine Conversions ab und schreibe LeadJourney-Daten zurück nach Odoo.

Wenn du Odoo verbindest, werden Datensatz-Events (neue Leads und Opportunities, Stage-Änderungen, Kontakte, Sales Orders, bezahlte Rechnungen) zu LeadJourney-Conversions, zugeordnet der Kampagne, Ad Set und Anzeige, die sie verdient haben. Odoo bietet kein OAuth für Drittanbieter-Apps, deshalb verbindest du dich mit einem Benutzer-API-Key. Gemappte Events laufen durch dieselbe Postback-Pipeline wie deine Offline-Conversions und übernehmen so jeden Ad-Postback, den du bereits eingerichtet hast. Weil LeadJourney jeden Datensatz neu aus Odoo liest, kannst du jedes Feld darauf mappen. Die Verbindung funktioniert auch in die andere Richtung: Du kannst aus LeadJourney-Events Odoo-Datensätze anlegen oder aktualisieren.

Bevor du startest

Halte das bereit, damit die Verbindung von Anfang bis Ende funktioniert:

  • Einen aktiven LeadJourney-Workspace und die URL deiner Odoo-Instanz. Odoo Online und selbst gehostete Instanzen funktionieren beide.
  • Einen Odoo-Benutzer, der CRM, Kontakte, Verkauf und Rechnungen lesen darf. Der API-Key übernimmt die Rechte dieses Benutzers. Gib ihm zusätzlich Settings-Zugriff, wenn LeadJourney die Automation Rules und das Click-ID-Feld für dich anlegen soll.
  • Tracking ist live, damit Klicks erfasst sind, bevor Datensätze ankommen. Siehe Tracking-Script installieren.
  • Mindestens einen Conversion-Typ zum Mappen (z. B. WonClient). Richte diese zuerst im Events Manager ein.

Wo du es findest

Öffne Settings → Apps oder gehe zu app.leadjourney.io/settings?slug=apps. Klick auf die Odoo-Karte, um die Integration zu öffnen. Solange du nicht verbunden bist, siehst du eine „Connect your Odoo instance“-Karte; nach dem Verbinden zeigt derselbe Screen deine Datenbank, den Setup-Status in Odoo, deine Trigger und den Bereich Send to Odoo.

Schritt für Schritt

Einen API-Key in Odoo erstellen

Klick in Odoo auf deinen Avatar → PreferencesAccount SecurityNew API Key. Gib ihm einen Namen und kopiere den Key sofort: Odoo zeigt ihn nur ein einziges Mal.

Verbindungsdaten eintragen

Fülle die vier Felder auf der Connect your Odoo instance-Karte aus:

  1. Instance URL: die Adresse, unter der du dich einloggst, z. B. https://your-company.odoo.com.
  2. Database: bei Odoo Online der Teil vor .odoo.com (LeadJourney füllt ihn aus der URL vor). Bei selbst gehosteten Instanzen die Datenbank, die du beim Login auswählst.
  3. Login (email): der Odoo-Benutzer, dem der API-Key gehört.
  4. API Key: der Key, den du gerade erstellt hast.

Klick auf Connect. LeadJourney prüft alle vier Werte per Anmeldung an deiner Instanz, bevor gespeichert wird, und du siehst eine „Odoo connected“-Bestätigung. Stimmt etwas nicht, erscheint der Fehler direkt im Formular, sodass du ihn an Ort und Stelle korrigieren kannst.

Das Odoo-Setup prüfen

Odoo hat keinen Webhook, den LeadJourney abonnieren kann. Deshalb legt LeadJourney nach dem Verbinden an, was es in deinem Odoo braucht. Das Panel Odoo setup zeigt, was angekommen ist:

  • Automation rules created in Odoo: eine Regel pro Datensatztyp, jeweils auf die Webhook-URL deines Accounts ausgerichtet. Die abgedeckten Modelle (z. B. crm.lead) stehen darunter.
  • Click-id field created in Odoo: ein Textfeld namens x_lj_click_id auf CRM Lead und Contact.

Zeigt einer der beiden eine Warnung, klick im Header auf Re-sync. Das legt Regeln und Feld neu an und ist jederzeit gefahrlos, weil abgeglichen statt dupliziert wird. Bleiben die Regeln leer, braucht dein Odoo-Benutzer Settings-Zugriff oder die App Automation Rules ist nicht installiert.

Einen Trigger hinzufügen

Klick im Triggers-Panel („Each trigger maps an Odoo event to one of your conversions.“) auf Add trigger. Im Dialog New Odoo trigger:

  1. App: Odoo (bereits ausgewählt).
  2. LeadJourney Event: der Conversion-Typ, den dieses Odoo-Event aufzeichnen soll.
  3. Trigger: wähle ein Odoo-Event aus dem Raster (mit Search triggers… eingrenzen). Jede Karte zeigt das Odoo-Modell, auf dem eine Automation Rule nötig ist.
  4. Attribute changed (nur bei Events, die das unterstützen): nur feuern, wenn sich ein bestimmtes Feld ändert, z. B. die Stage. Mit Target value legst du einen Wert fest (Felder mit festen Optionen wie Pipeline-Stages oder Zahlungsstatus bekommen ein Dropdown), oder du lässt Any value stehen.

Klick auf Continue.

Daten empfangen und das Mapping bestätigen

Der Dialog öffnet einen Flow mit drei Tabs:

  • Receive Data: klick auf Find latest data, um die 3 neuesten Datensätze für das Event zu laden. Erscheint nichts, lege einen in Odoo an und versuche es erneut, dann wähle einen Datensatz aus.
  • Configure Mapping: ordne den Datensatz Email, Name, Phone, click_id, Revenue und Currency zu. Jede Zeile kann mehrere Pfade kombinieren (mit Leerzeichen verbunden) oder mit static:value einen festen Wert übernehmen. Über Add custom field kommen First name, Last name oder ein neues Workspace-Feld dazu.
  • Filtering (optional): füge Bedingungen hinzu und sieh für den gewählten Datensatz PASS oder FAIL sowie, ob „Your trigger would have fired“.

Klick auf Save & Continue, um abzuschließen, oder auf Save and continue later, um einen Entwurf zu speichern.

Wie Odoo-Datensätze mit der richtigen Kampagne verknüpft werden

Schreib die Click-ID des Besuchers in deinem Website-Formular in x_lj_click_id, dann werden Conversions dem exakten Anzeigenklick zugeordnet. LeadJourney schlägt dieses Feld im Tab Configure Mapping automatisch für die click_id-Zeile vor. Ohne Click-ID ordnet LeadJourney Conversions trotzdem über email oder phone den Leads zu; das Feld macht den Match nur exakt.

Eine Automation Rule von Hand einrichten

Du baust die Regel lieber selbst? Öffne im Setup-Panel Set a rule up by hand instead und kopiere die Webhook-URL. Aktiviere in Odoo den Developer Mode, öffne Settings → Technical → Automation Rules, lege auf dem Modell eine Regel mit dem Trigger On create and edit an, füge die Aktion Send Webhook Notification hinzu und füge die URL in ihr Feld URL ein. Welche Felder du ankreuzt, ist egal, weil LeadJourney den Datensatz neu liest. Die URL enthält den geheimen Token deines Accounts, behandle sie also wie ein Passwort.

Deine Trigger verwalten

Jeder Trigger erscheint als Zeile (Odoo-Event → Conversion-Typ) mit einem Active- / Paused-Pill, einer Zusammenfassung der gemappten Felder und Filter und einem Hinweis wie Needs an Odoo automation rule on crm.lead.

  • Pause / Resume: stoppe einen Trigger über den Schalter vorübergehend, ohne ihn zu löschen.
  • Edit: Event, Mapping, Filter oder Ziel-Conversion ändern.
  • Delete: tippe delete zur Bestätigung. Die anderen Trigger laufen weiter.

Daten zurück an Odoo senden

Der Bereich Send to Odoo schreibt LeadJourney-Klicks, -Conversions und -Leads nach Odoo. Klick auf + Add destination und lege fest:

  1. CREATE THIS ODOO RECORD: Contact (res.partner) oder Lead / Opportunity (crm.lead).
  2. WHEN THIS HAPPENS: das LeadJourney-Event. Bei Conversions kannst du über CONVERSION TYPE eingrenzen oder Any conversion type stehen lassen.
  3. WRITE MODE: Create (immer ein neuer Datensatz), Update (nur einen vorhandenen Treffer aktualisieren, sonst überspringen) oder Upsert (Treffer aktualisieren oder neu anlegen).
  4. MATCHING FIELD (Update und Upsert): das Odoo-Feld, über das der vorhandene Datensatz gefunden wird. Es wird automatisch ins Mapping übernommen.
  5. MAP FIELDS: links das Odoo-Feld, rechts die LeadJourney-Werte. Klick auf Find latest data, um echte Beispielwerte zu sehen, oder tippe einen festen Wert ein.

Klick auf Create destination. Die Tabelle Sync history listet jede Zustellung mit Status (Success, Failed, Skipped); fehlgeschlagene oder übersprungene kannst du mit Retry erneut senden. Das Löschen einer Destination ändert nichts an Datensätzen, die schon in Odoo liegen.

Erneut verbinden

Wird der API-Key widerrufen oder sein Benutzer archiviert, wechselt der Header auf Needs reconnect und ein Banner meldet „Odoo rejected the credentials“. Erstelle unter Preferences → Account Security einen neuen Key, klick auf Reconnect und sende das Verbindungsformular erneut ab. Meldet das Banner „Odoo is unreachable“, hat deine Instanz nicht geantwortet; bis sie wieder erreichbar ist, können eingehende Events nicht gelesen und keine Conversions erfasst werden.

Trennen (Disconnect)

Um Odoo zu entfernen, klick im Header auf Disconnect und tippe disconnect zur Bestätigung.

Disconnect löscht deine Trigger

Das Trennen entfernt die Odoo-Verbindung dauerhaft und löscht jeden Trigger. Odoo-Events fließen sofort nicht mehr in deine Conversions. Du kannst später erneut verbinden, aber deine Trigger-Konfiguration wird nicht wiederhergestellt. Die Automation Rules in Odoo werden nicht für dich entfernt: Lösche sie unter Settings → Technical → Automation Rules oder lass sie stehen, ihre Zustellungen werden dann einfach ignoriert.

Fehlerbehebung

Keine Datensätze bei „Find latest data“?

In Odoo gibt es noch keinen passenden Datensatz, oder deine Bedingung und Filter schließen ihn aus. Lege einen passenden Datensatz an und klick erneut auf Find latest data. Zeigt der Dialog eine Meldung, warum nichts geladen wurde, folge ihr.

Ein Trigger feuert nie?

Prüfe den Automation-Rule-Hinweis in der Zeile und stelle sicher, dass diese Regel in Odoo existiert. Klick auf Re-sync, um fehlende Regeln neu anzulegen, und prüfe, dass der Trigger Active ist.

Click-id field zeigt „Not created“?

Deinem Odoo-Benutzer fehlt der Settings-Zugriff. Lege selbst ein Textfeld namens x_lj_click_id auf CRM Lead und Contact an, oder verbinde dich erneut mit einem Benutzer mit Settings-Zugriff und klick auf Re-sync.

Häufige Fragen

Verwandte Artikel