Die OXID eShop B2B Edition integriert GraphQL für umfassende Funktionalität

oxid eshop b2b

OXID eShop Enterprise B2B Edition

Die OXID eShop Enterprise B2B Edition bietet eine umfassende Suite von Funktionen, die speziell auf die Bedürfnisse von B2B-Unternehmen zugeschnitten sind. Diese Edition umfasst elf Module, die unter anderem Selbstverwaltung, Genehmigungsverfahren, Budgetverwaltung, Schnell-, Sammel- und Terminbestellungen, kundenindividuelle Preise und Angebote sowie Serviceleistungen im Warenkorb unterstützen. Die detaillierte Dokumentation dieser Module ist für registrierte Benutzer zugänglich und bietet eine tiefgehende Einführung in alle verfügbaren Funktionen.

Einführung in die OXID GraphQL-Schnittstelle

Die OXID GraphQL-Schnittstelle stellt eine moderne Methode zur Datenabfrage und -manipulation bereit. Sie basiert auf zwei Hauptmodulen:

GraphQL Base-Modul

Das GraphQL Base-Modul bildet das Rückgrat der Schnittstelle und stellt den Endpunkt zur Verfügung. Es definiert das OXID GraphQL-Schema, das festlegt, welche Objekttypen und Felder anfragbar sind. Für die Authentifizierung und Autorisierung nutzt das System JSON Web Tokens (JWT), die in jeder Anfrage im Autorisierungs-Header enthalten sein müssen.

GraphQL Storefront-Modul

Dieses Modul erweitert das Basis-Schema um essentielle Frontend-Funktionalitäten des OXID eShops. Dazu gehören die Verwaltung von Kundenkonten, der Produktkatalog und der Checkout-Prozess. Eine ausführliche Dokumentation dieser Module steht online zur Verfügung und bietet umfassende Informationen zur Implementierung und Nutzung.

Funktionsweise der OXID GraphQL-Schnittstelle

  • Einziger Endpunkt: Alle Queries und Mutations werden an einen zentralen Endpunkt gesendet.
  • Einsehbares Schema: Das Schema der Schnittstelle ist öffentlich einsehbar und beschreibt alle verfügbaren Queries, Mutations, Datentypen und Felder.
  • Erweiterbarkeit: Das Schema kann durch zusätzliche Module flexibel erweitert werden.

Systemvoraussetzungen

Die Nutzung der OXID eShop B2B Edition 6.5.x (rev.: 5.0.0) erfordert die Installation und Aktivierung der Module OXID GraphQL Base und OXID GraphQL Storefront. Diese sind notwendig, um die erweiterten B2B-Funktionalitäten über GraphQL zu nutzen.

B2B Frontend und OXID GraphQL

Die OXID B2B Edition erlaubt es, Funktionalitäten sowohl über das traditionelle Frontend als auch über die GraphQL-Schnittstelle zu steuern. Dies bietet maximale Flexibilität, da Änderungen in beiden Systemen vorgenommen und synchron ausgelesen werden können. Ein gutes Beispiel hierfür ist das Genehmigungsverfahren.

Genehmigungsverfahren im Detail

Das Genehmigungsverfahren ermöglicht es, eine Hierarchie von Benutzern zu erstellen. Ein Chefeinkäufer hat die Möglichkeit, anderen Einkäufern Rechte zuzuweisen. Diese Einkäufer können Bestellungen nur nach Genehmigung durch den Chefeinkäufer abschließen. Diese Funktion kann sowohl über das Frontend als auch die GraphQL-Schnittstelle aktiviert und verwaltet werden.

Beispiel: Genehmigung eines Warenkorbs im Frontend

  1. Aktivierung: Der Chefeinkäufer aktiviert das Genehmigungsverfahren.
  2. Warenkorb befüllen: Der Einkäufer stellt einen Warenkorb zusammen, kann jedoch nicht direkt bestellen.
  3. Warten auf Genehmigung: Der Einkäufer wartet auf die Genehmigung durch den Chefeinkäufer.
  4. Abschluss: Nach der Freigabe durch den Chefeinkäufer kann der Einkäufer die Bestellung abschließen.

Genehmigung eines Warenkorbs über die GraphQL-Schnittstelle

Die Aktivierung und Verwaltung des Genehmigungsverfahrens kann auch vollständig über GraphQL erfolgen:

Aktivierung des Genehmigungsverfahrens:

mutation B2BApprovalProcedureActivate {
  B2BApprovalProcedureActivate(customerId: "buyingagent")
}

Abfrage des Warenkorbs:

query singlebasket {
  basket(basketId: "05c9c30fc5e653630fde8803a23d0766") {
    id
    B2BName
    B2BApprovalStatus
    items {
      amount
      product {
        title
      }
    }
  }
}

Freigabe durch den Chefeinkäufer:

mutation approve {
  B2BApprovalProcedureApprove (basketId: "05c9c30fc5e653630fde8803a23d0766") {
    id
    B2BName
    B2BApprovalStatus
  }
}

Nach der Freigabe kann die Bestellung sowohl über das Frontend als auch über die GraphQL-Schnittstelle abgeschlossen werden.

Fragen und Antworten

Was bietet die OXID eShop B2B Edition?

Die B2B Edition bietet elf Module mit Funktionen für Selbstverwaltung, Genehmigungsverfahren, Budgetverwaltung, Schnell-, Sammel- und Terminbestellungen sowie kundenindividuelle Preise und Angebote.

Wie funktioniert die Authentifizierung in der GraphQL-Schnittstelle?

Die Authentifizierung erfolgt über JSON Web Tokens (JWT), die in jeder Anfrage enthalten sein müssen, um die Identität des Benutzers zu bestätigen.

Kann ich die B2B-Funktionen sowohl im Frontend als auch über die GraphQL-Schnittstelle nutzen?

Ja, die Funktionen sind flexibel nutzbar und Änderungen können in beiden Systemen vorgenommen und synchronisiert werden.


Unser Experte
Matthias Eggert ist seit über 14 Jahren im Online Marketing tätig und seit 6 Jahren Head of Online Marketing bei DIXENO . DIXENO ist an den Standorten Arnsberg, Paderborn, Hamburg und Berlin vertreten und verfügt über mehr als 50 Mitarbeiter. Neben seiner Tätigkeit als Head of Online Marketing ist Matthias Gründer von onlinemarketingberatung.de – Cruising Media. Sein Fokus liegt auf allen SEO relevanten Themen und er unterstützt Kunden von der Konzeption der richtigen Strategie, über die technische Umsetzung, bis zur detaillierten Analyse.