Odoo API-Integrationsleitfaden: Verbinden Sie Odoo mit jedem System
Odoo arbeitet selten isoliert. Unternehmen benötigen eine Verbindung zu E-Commerce-Plattformen, Zahlungsabwicklern, Versanddienstleistern, Marketingtools und benutzerdefinierten Anwendungen. Die externe Odoo-API bietet zwei Protokolle – XML-RPC und JSON-RPC – die es jedem System ermöglichen, Datensätze in Odoo programmgesteuert zu lesen, zu erstellen, zu aktualisieren und zu löschen.
Authentifizierung
API-Schlüsselauthentifizierung
Generieren Sie einen API-Schlüssel in Odoo: Navigieren Sie zu Ihrem Benutzerprofil, dann zu Kontosicherheit und dann zu API-Schlüsseln. Erstellen Sie einen Schlüssel mit einer beschreibenden Bezeichnung. Verwenden Sie diesen Schlüssel anstelle Ihres Passworts für die API-Authentifizierung – er kann unabhängig widerrufen werden, ohne Ihre Anmeldedaten zu ändern.
Verbindungsparameter
Für jeden API-Aufruf sind Folgendes erforderlich: die Odoo-Server-URL, der Datenbankname, Ihr Benutzername (Anmelde-E-Mail-Adresse) und der API-Schlüssel. Bewahren Sie diese sicher auf – kodieren Sie die Anmeldeinformationen niemals fest in den Quellcode.
XML-RPC-Protokoll
Verbindungsaufbau
XML-RPC verwendet zwei Endpunkte: /xmlrpc/2/common für die Authentifizierung und /xmlrpc/2/object für Datenoperationen. Authentifizieren Sie sich zunächst, um eine Benutzer-ID zu erhalten, und verwenden Sie diese ID dann für nachfolgende Aufrufe.
CRUD-Operationen
Suchen und Lesen: Datensätze mit Domänenfiltern abfragen (ähnlich wie SQL-WHERE-Klauseln). Domains verwenden Tupel: [('state', '=', 'sale'), ('amount_total', '>', 1000)] findet bestätigte Kundenaufträge über 1.000 $.
Erstellen: Übergeben Sie ein Wörterbuch mit Feldwerten. Die API gibt die neue Datensatz-ID zurück. Erforderliche Felder müssen enthalten sein, sonst schlägt der Aufruf mit einem Validierungsfehler fehl.
Schreiben: Vorhandene Datensätze aktualisieren, indem die Datensatz-IDs und ein Wörterbuch geänderter Werte übergeben werden. Schließen Sie nur Felder ein, die Sie ändern möchten.
Verknüpfung aufheben: Datensätze nach ID löschen. Gehen Sie mit Vorsicht vor – einige Datensätze können nicht gelöscht werden, wenn sie abhängige Datensätze haben.
JSON-RPC-Protokoll
Warum JSON-RPC
JSON-RPC wird im Allgemeinen für moderne Integrationen bevorzugt: Es verwendet JSON (entwicklerfreundlicher als XML), funktioniert besser mit JavaScript-/TypeScript-Anwendungen und bietet eine etwas bessere Leistung für große Nutzlasten.
Anforderungsformat
JSON-RPC-Aufrufe gehen an einen einzelnen Endpunkt: /jsonrpc. Jede Anfrage enthält den Dienstnamen, die Methode und die Argumente in einem standardmäßigen JSON-RPC 2.0-Umschlag.
Gemeinsame Integrationsmuster
E-Commerce-Auftragssynchronisierung
Synchronisieren Sie Bestellungen von Shopify oder WooCommerce mit Odoo:
- Achten Sie auf Bestell-Webhooks von der E-Commerce-Plattform
- Kundendaten den Odoo-Partnerdatensätzen zuordnen (erstellen oder vorhandene abgleichen)
- Erstellen Sie einen Verkaufsauftrag mit Einzelposten, die Odoo-Produkten zugeordnet sind
- Bestätigen Sie die Bestellung, um Fulfillment-Workflows auszulösen
- Synchronisieren Sie die Tracking-Informationen wieder mit der E-Commerce-Plattform
Zahlungsprozessor-Integration
Verbinden Sie Stripe, PayPal oder andere Prozessoren:
- Erhalten Sie Webhooks zur Zahlungsbestätigung
- Ordnen Sie Zahlungen den Odoo-Rechnungen anhand der Referenznummer zu
- Registrieren Sie die Zahlung im Odoo Accounting
- Automatischer Abgleich mit Kontoauszügen
CRM-Synchronisierung
Halten Sie Odoo CRM mit externen Marketingtools synchron:
- Neue Leads von Marketingplattformen erzeugen Odoo-Leads
- Lead-Scoring-Updates erfolgen bidirektional
- Gewonnene Opportunities lösen Folgekampagnen im Marketingtool aus
- Kontaktinformationen bleiben systemübergreifend synchronisiert
Fehlerbehandlung
Häufige Fehler
- Zugriff verweigert: Ungültige Anmeldeinformationen oder unzureichende Berechtigungen
- Validierungsfehler: Erforderliche Felder fehlen oder ungültige Werte
- Datensatz nicht gefunden: Verweist auf eine ID, die nicht existiert
- Gleichzeitige Aktualisierung: Ein anderer Benutzer hat den Datensatz gleichzeitig geändert
Best Practices
- Retry-Logik implementieren mit exponentiellem Backoff für vorübergehende Fehler
- Daten vor dem Senden validieren, um Fehler frühzeitig zu erkennen
- Alle API-Aufrufe protokollieren für Debugging- und Prüfzwecke
- Ratenbegrenzungen verarbeiten – Batch-Vorgänge statt Einzelaufrufe
- Verwenden Sie idempotente Operationen, um fehlgeschlagene Aufrufe sicher erneut zu versuchen
Leistungsoptimierung
- Batch-Lesevorgänge: Verwenden Sie
search_readanstelle separatersearch+read-Aufrufe - Felder begrenzen: Fordern Sie nur die Felder an, die Sie benötigen, nicht alle Felder im Modell
- Paginierung: Verwenden Sie
limitundoffsetfür große Ergebnismengen - Caching: Sich langsam ändernde Daten (Produktkataloge, Währungskurse) lokal zwischenspeichern
Webhook-Muster
Odoo verfügt nicht in allen Versionen über native ausgehende Webhooks. Gängige Ansätze:
- Automatisierte Aktionen: Serveraktionen, die bei Datensatzänderungen ausgelöst werden und externe URLs aufrufen
- Benutzerdefinierte Controller: Erstellen Sie ein Odoo-Modul, das Webhook-Endpunkte für externe Systeme verfügbar macht
- Abfrage: Externe Systeme fragen Odoo in regelmäßigen Abständen nach Änderungen ab (einfacher, aber weniger in Echtzeit)
Sicherheitsüberlegungen
- API-Schlüssel verwenden anstelle von Passwörtern
- Restrict API access by IP address at the network level
- Verwenden Sie HTTPS für die gesamte API-Kommunikation
- Implementieren Sie die richtigen Zugriffsrechte – API-Benutzer sollten über die erforderlichen Mindestberechtigungen verfügen
- API-Schlüssel regelmäßig rotieren und kompromittierte Schlüssel sofort widerrufen
Unser Odoo-Integrationsdienst erstellt Integrationen in Produktionsqualität mit ordnungsgemäßer Fehlerbehandlung, Überwachung und Sicherheit.
Häufig gestellte Fragen
Welches Protokoll sollte ich verwenden – XML-RPC oder JSON-RPC?
JSON-RPC für neue Projekte. Es ist entwicklerfreundlicher, funktioniert besser mit modernen Tools und ist die Richtung, in die Odoo geht. XML-RPC für ältere Systeme oder Sprachen mit besserer XML-RPC-Bibliotheksunterstützung.
Gibt es eine REST-API?
Odoo 17+ enthält neben den RPC-Endpunkten eine REST-API. Es folgt den Standard-REST-Konventionen mit JSON-Payloads und ist für Webanwendungen im Allgemeinen einfacher zu verwenden.
Wie gehe ich mit großen Datenmigrationen um?
Verwenden Sie für das anfängliche Laden von Daten die CSV-Importfunktion oder schreiben Sie ein Migrationsskript, das Datensätze in Stapeln (100–500 Datensätze pro Stapel) mit Fehlerbehandlung für jeden Stapel erstellt.
Kann ich die API mit benutzerdefinierten Endpunkten erweitern?
Ja. Erstellen Sie benutzerdefinierte Odoo-Module mit Controller-Klassen, die zusätzliche HTTP-Endpunkte für spezielle Vorgänge verfügbar machen, die nicht von der Standard-API abgedeckt werden.
Geschrieben von
ECOSIRE Research and Development Team
Entwicklung von Enterprise-Digitalprodukten bei ECOSIRE. Einblicke in Odoo-Integrationen, E-Commerce-Automatisierung und KI-gestützte Geschäftslösungen.
Verwandte Artikel
Allegro Marketplace-Integration mit Odoo: Polens führender E-Commerce-Plattform
Vollständiger Leitfaden zur Integration des Allegro-Marktplatzes mit Odoo ERP, der die Einrichtung der REST-API, Allegro Smart, Gebote und Versand für den polnischen E-Commerce umfasst.
Automatisierung der Kreditorenbuchhaltung mit Odoo: Von der Rechnung bis zur Zahlung
Automatisieren Sie die Kreditorenbuchhaltung in Odoo von der Rechnungserfassung über den Genehmigungsworkflow bis zur Zahlungsausführung. Reduzieren Sie die Bearbeitungskosten und vermeiden Sie Strafen für verspätete Zahlungen.
So wählen Sie im Jahr 2026 das richtige CRM für Ihr Unternehmen aus
Ein vollständiger Leitfaden zur Auswahl der richtigen CRM-Plattform im Jahr 2026, der Odoo CRM, Salesforce, HubSpot, GoHighLevel und Zoho in Bezug auf Funktionen, Preise, Skalierbarkeit und Branchentauglichkeit vergleicht.