Zum Inhalt springen

OBS/Stammdaten/Schnittstellen/Internet-Shop/modified eCommerce/Einrichtung

Aus OBS Wiki

Einrichtung

Mit der Schnittstelle zu modified eCommerce pflegen Sie Ihren eigenen Online-Shop direkt aus OBS: Kategorien, Artikel, Preise und Kunden überträgt OBS in den Shop, Bestellungen kommen als Aufträge zurück. Diese Seite zeigt, was Sie für einen neuen Shop brauchen und wie Sie die Schnittstelle in OBS einrichten. Die Schritte gelten für modified eCommerce 1.x, modified eCommerce 2.x und modified eCommerce 3.x. Wo sich die Versionen unterscheiden, ist das gekennzeichnet.

HINWEIS: modified eCommerce 1.x wird für neue Shops nicht mehr eingerichtet. Für neue Shops stimmt Ihr OBS-Betreuer die passende Version mit Ihnen ab.
HINWEIS: modified eCommerce 3.x befindet sich in der Erprobung. Die Funktionen stehen nur für Schnittstellen zur Verfügung, die der OBS-Support dafür freigeschaltet hat.
Auf einen Blick
  • Shop. Die Shop-Software mit dem OBS-Modul läuft auf einem Webserver mit Datenbank. Für die Installation braucht der OBS-Support Ihre Zugangsdaten.
  • Schnittstelle. In Stammdaten → Schnittstellen → Internet-Shop legen Sie eine Schnittstelle vom Typ modified eCommerce 1.x, modified eCommerce 2.x oder modified eCommerce 3.x an.
  • Konfiguration. Shop-Adresse und Zugangsdaten eintragen, mit F9 die Verbindung testen. Bei 3.x sind die Zugangsdaten Kennung und Schlüssel eines REST-API-Zugangs aus dem Shop.
  • Automatiken. Bestellungen einlesen und Preise übertragen lassen Sie automatisch laufen.

Voraussetzungen

  • Das Modul Internet-Shop ist freigeschaltet: Der Programmparameter 633 Internet-Shop vorhanden ist aktiviert.
  • Jede Shop-Schnittstelle wird einzeln abgerechnet. Für eine neue Schnittstelle ist eine Vertragsänderung nötig. Sprechen Sie dazu Ihren OBS-Betreuer an.
  • Sie arbeiten mit Preislisten (kostenpflichtiges Modul). Eigene, vom Standardpreis abweichende Preise überträgt OBS nur mit diesem Modul in den Shop. Die Preisfindung im Shop ist an die Preislisten von OBS angepasst. Preiseinstellungen im Adminbereich des Shops, z.B. Staffelpreise oder Preisaufschläge über Artikeloptionen, wirken deshalb nicht.
  • Für den Shop brauchen Sie:
    • eine Domain (Internetadresse), unter der der Shop erreichbar sein soll,
    • einen Webserver oder Webspace. Das kann ein eigener Server oder ein geteiltes System sein. Das Dateiverzeichnis der Domain muss per FTP erreichbar sein,
    • eine MySQL-Datenbank mit einem Benutzerkonto mit Lese- und Schreibrechten, idealerweise mit einer Administrationsseite wie phpMyAdmin.
  • Im Shop gibt es ein Benutzerkonto mit Administrationsrechten. Bei 1.x und 2.x meldet sich OBS über ein solches Konto am Shop an.
  • Bei 3.x meldet sich OBS stattdessen mit einem REST-API-Zugang an, den Sie im Adminbereich des Shops anlegen, siehe REST-API-Zugang.

Arbeiten Sie bereits mit einem Dienstleister, der Ihre Homepage betreut, kann er Domain, Webspace und Datenbank für Sie einrichten. Webspace können Sie auf Wunsch auch über Bergau beziehen. Sprechen Sie dazu Ihren OBS-Betreuer an.

Systemvoraussetzungen der Shopsoftware

Der Webserver muss für modified eCommerce 2.x und modified eCommerce 3.x Folgendes bereitstellen:

Komponente Voraussetzung
PHP ab Version 5.6
Datenbank MySQL
Grafikbibliothek GDlib 2 oder neuer
PDF-Bibliothek PDFlib
HINWEIS: PHP 5.6 genügt technisch. Aus Sicherheitsgründen empfehlen wir eine aktuelle PHP-Version, die noch mit Sicherheitsupdates versorgt wird.
ACHTUNG: Version 1.x (Shop-Version 1.06) läuft nicht mit PHP 7. Der Webserver muss dafür eine passende PHP-Version bereitstellen.

Installation und Admin-Konten

Die Shopsoftware mit dem OBS-Modul installiert der OBS-Support für Sie. Das Konto mit Administrationsrechten, das bei der Installation entsteht, nutzt der OBS-Support. Weitere Konten mit Administrationsrechten richten wir nach Absprache ein. Mindestens ein Konto mit Administrationsrechten steht Ihnen selbst zur Verfügung.

Inhalte für den Shop

Planen Sie außerdem die Inhalte Ihres Shops:

  • Rechtliche Texte: Datenschutzerklärung, AGB, Impressum, Widerrufsbelehrung mit Formular, Lieferbedingungen und Lieferzeiten.
  • Bilder und Logos: z.B. Firmenlogo, Hintergrundbilder und Banner. Denken Sie an das Favicon, das kleine Bild im Browser-Tab. Firmenlogos sind oft nicht für diese Größe ausgelegt.
  • Kategorien und Artikel: Überlegen Sie, wie Sie Ihre Artikel im Shop gliedern. Texte und Bilder stellen teilweise Ihre Lieferanten bereit. Je nach Lieferant müssen Sie sie gesondert beantragen, und es können Bearbeitungs- oder Lizenzgebühren anfallen.
ACHTUNG: Welche rechtlichen Texte Sie brauchen, hängt von Ihren Waren und Dienstleistungen ab. Lassen Sie sich im Zweifel von einem Anwalt beraten.
HINWEIS: Bei der Datenpflege unterstützt Sie der OBS-Support. Für den Inhalt der Texte und für Verstöße gegen Urheber- oder Lizenzrechte übernimmt er keine Haftung.

Vorgehen

Shop vorbereiten

  1. Lassen Sie Domain, Webspace und Datenbank einrichten.
  2. Geben Sie dem OBS-Support die Zugangsdaten für FTP und Datenbank. Er installiert die Shop-Software mit dem OBS-Modul.
  3. Halten Sie die Zugangsdaten für OBS bereit:
    • modified eCommerce 1.x und 2.x: E-Mail-Adresse und Passwort des Shop-Benutzerkontos mit Administrationsrechten.
    • modified eCommerce 3.x: Kennung und Schlüssel eines REST-API-Zugangs. Wie Sie ihn im Adminbereich des Shops anlegen, steht unter REST-API-Zugang.

OBS spricht den Shop über das OBS-Modul an: bei 1.x und 2.x unter https://<Ihre-Shop-Adresse>/obs/obs.php, bei 3.x über die REST-API unter https://<Ihre-Shop-Adresse>/obs/rest-api/v1/. In OBS tragen Sie nur die Adresse der Shop-Hauptseite ein, den Rest ergänzt OBS.

Schnittstelle in OBS anlegen

  1. Öffnen Sie Stammdaten → Schnittstellen → Internet-Shop und drücken Sie Einfg.
  2. Übernehmen Sie in Nummer die vorgeschlagene dreistellige Nummer oder tragen Sie eine freie Nummer ein.
  3. Wählen Sie in Schnittstelle modified eCommerce 1.x, modified eCommerce 2.x oder modified eCommerce 3.x, passend zur Version Ihres Shops.
  4. Tragen Sie eine Bezeichnung ein, z.B. den Namen des Shops.
  5. Speichern Sie mit F2.

Beim Speichern legt OBS die Konfiguration mit den Standardwerten und das Verzeichnis data\shop\<Nummer> der Schnittstelle an. Außerdem ordnet OBS der Schnittstelle alle Preislisten zu, deren Preislistentyp für Shops zulässig ist.

HINWEIS: Nummer und Schnittstelle können Sie später nicht mehr ändern.

Konfiguration eintragen

  1. Markieren Sie die neue Schnittstelle, drücken Sie F10 und wählen Sie X Konfiguration.
  2. Tragen Sie in Allgemein.Shop.URL die Adresse der Shop-Hauptseite ein, z.B. https://<Ihre-Shop-Adresse>.
    • modified eCommerce 2.x und 3.x: Die Adresse muss mit https:// oder http:// beginnen. Bei 3.x tragen Sie die Adresse mit https:// ein.
    • modified eCommerce 1.x: Fehlt die Angabe, verwendet OBS https://.
  3. modified eCommerce 1.x und 2.x: Tragen Sie in Allgemein.Shop.Login.Benutzer die E-Mail-Adresse und in Allgemein.Shop.Login.Passwort das Passwort des Shop-Benutzerkontos mit Administrationsrechten ein. Das Passwort darf höchstens 120 Zeichen lang sein. Bei 3.x tragen Sie stattdessen den REST-API-Zugang ein, siehe REST-API-Zugang eintragen.
  4. Prüfen Sie, dass Allgemein.Aktiv auf J steht.
  5. Tragen Sie in Allgemein.Schnittstelle.Sachbearbeiter den Sachbearbeiter ein, der Nachrichten und Aufgaben aus der Schnittstelle erhalten soll.

Alle weiteren Einstellungen beschreibt Konfiguration. Für die Zugangsdaten brauchen Sie Level 5 für die Shop-Schnittstellen.

REST-API-Zugang eintragen (nur 3.x)

Bei modified eCommerce 3.x meldet sich OBS mit einem REST-API-Zugang am Shop an. Legen Sie den Zugang vorher im Adminbereich des Shops an, siehe REST-API-Zugang.

  1. Tragen Sie in der Konfiguration in Allgemein.Shop.Api.Id die Kennung des Zugangs ein.
  2. Tragen Sie in Allgemein.Shop.Api.Key den Schlüssel des Zugangs ein. Der Shop zeigt den Schlüssel nur beim Anlegen des Zugangs an.
  3. Lassen Sie Allgemein.Shop.Api.ZertifikatPruefen auf J. Dann prüft OBS das Zertifikat des Shops bei jeder Verbindung.
ACHTUNG: Schalten Sie die Zertifikatsprüfung nur für Testsysteme mit selbst signiertem Zertifikat ab. OBS sendet den Schlüssel bei jeder Anfrage mit. Ohne Prüfung des Zertifikats ist nicht sichergestellt, dass er beim richtigen Shop ankommt. Ändern dürfen die Einstellung nur Benutzer mit Level 9 für die Shop-Schnittstellen.

Verbindung testen

Drücken Sie in der Konfiguration F9 (F9 Test). Bei Erfolg meldet OBS „Verbindung erfolgreich.“ und zeigt die Version des Shops:

Version Anzeige Bedeutung
modified eCommerce 1.x Version Version des OBS-Moduls im Shop.
modified eCommerce 2.x Basis-Version modified und API-Version Version der Shop-Software und Version des OBS-Moduls im Shop.
modified eCommerce 3.x Basis-Version modified, API-Version und REST-API-Version Version der Shop-Software, Version des OBS-Moduls im Shop und Version der REST-API.

Erscheint „Verbindung konnte nicht aufgebaut werden.“, lesen Sie unter Wenn es nicht klappt weiter.

Zuordnungen einrichten

Drücken Sie in der Konfiguration F8 und ordnen Sie im OBS-Shop-Zuordnungsmenü die Werte des Shops Ihren OBS-Stammdaten zu:

  • B Bestellstatus – Status der Bestellungen, damit OBS ihn im Shop fortschreibt, siehe Bestellstatus.
  • S Spediteure – Spediteure, siehe Spediteure.
  • A Anreden (2.x und 3.x) – Anreden, die der Shop anbietet, siehe Anreden.

Daten in den Shop übertragen

Schließen Sie die Konfiguration. Im Shop-Menü (F10) übertragen Sie dann die Daten in den Shop:

  1. Legen Sie die Kategorien an und ordnen Sie ihnen Artikel zu: E Kategorien verwalten.
  2. Übertragen Sie die Preise: A Preise aktualisieren.
  3. Übertragen Sie Ihre Kunden als Shop-Benutzer: C Personen übertragen.

Automatiken einrichten

Wie Sie Automatiken anlegen, steht unter Automatiken. Für modified eCommerce richten Sie mindestens ein:

  • ShopGetBestellungen – liest neue Bestellungen als Aufträge ein.
  • ShopSetPreise – überträgt die Preise in den Shop.

Je nach Bedarf kommen hinzu:

  • ShopSetBestand (Lagerbestände), ShopModTracking (Bearbeitungsstand und Sendungsverfolgung) und ExecShopJob (Übertragungen im Hintergrund).
  • 2.x und 3.x: ShopExportRechnung, ShopAuchGekauft, ShopAutoFillMerkmale, ShopPruefeArtikelAenderung und ShopArtikelPflegen.
  • nur 2.x: ShopExportPromotion.
  • nur 1.x: XTCArtikelAenderungAutomatik, ShopModArtikelCheck und ShopSetVerfuegbarkeit.

Ergebnis

  • F9 in der Konfiguration meldet „Verbindung erfolgreich.“ und zeigt die Version des Shops, bei 3.x auch die Version der REST-API.
  • Im Shop-Menü (F10) stehen alle Übertragungsfunktionen zur Verfügung, z.B. A Preise aktualisieren und U Bestellungen einlesen. Bei einer inaktiven Schnittstelle fehlen sie.
  • In den automatischen Vorgängen stehen die Automatiken der Schnittstelle.
  • Neue Bestellungen aus dem Shop erscheinen nach dem nächsten Lauf von ShopGetBestellungen als Aufträge in OBS.

Wenn es nicht klappt

Hinweise zur Ursache stehen im Protokoll der Schnittstelle (Shop-Menü Z Protokoll). Einträge mit Level 9 sehen nur Benutzer mit Level 9 für die Shop-Schnittstellen.

Bei modified eCommerce 3.x stehen die Fehler der REST-API mit Level 9 im Protokoll. Sie enthalten den HTTP-Status, einen sechsstelligen Fehlercode und eine Request-Id. Unter der Request-Id findet der OBS-Support die Anfrage auch in den Protokollen des Shops. Nennen Sie sie, wenn Sie sich an den OBS-Support wenden.

Meldung Ursache
„Verbindung konnte nicht aufgebaut werden.“ (F9 in der Konfiguration) Mögliche Ursachen:
  • Allgemein.Aktiv steht auf N.
  • Allgemein.Shop.URL ist leer.
  • modified eCommerce 1.x und 2.x: Allgemein.Shop.Login.Benutzer oder Allgemein.Shop.Login.Passwort ist leer.
  • modified eCommerce 3.x: Allgemein.Shop.Api.Id oder Allgemein.Shop.Api.Key ist leer.
  • modified eCommerce 2.x und 3.x: Die Adresse in Allgemein.Shop.URL beginnt nicht mit https:// oder http://.
  • Der Shop ist nicht erreichbar, oder die Zugangsdaten stimmen nicht.
  • Die Versionen von OBS und Shop passen nicht zusammen, siehe unten.

Bei 3.x steht die genaue Ursache im Protokoll, siehe die Meldungen „REST-API …“ unten.

Protokoll: „Request Error (404): …“ (1.x und 2.x) Unter <Ihre-Shop-Adresse>/obs/obs.php gibt es kein OBS-Modul. Prüfen Sie Allgemein.Shop.URL: Dort steht nur die Adresse der Shop-Hauptseite, ohne obs/obs.php. Stimmt die Adresse, wenden Sie sich an den OBS-Support.
Protokoll: „Request Error (500): …“ (1.x und 2.x) Auf dem Webserver ist ein Fehler aufgetreten. Tritt er nur bei großen Übertragungen auf, nimmt der Webserver möglicherweise nicht so viele Daten je Anfrage an. Die Höchstmenge je Anfrage legt Allgemein.Shop.Srv.Daten.Max fest. Ändern dürfen sie nur Benutzer mit Level 9.
Protokoll: „REST-API HTTP 401 Fehler 401900: Anmeldung fehlgeschlagen“ (nur 3.x) Der Shop hat die Anmeldung abgelehnt. Mögliche Ursachen:
  • Kennung oder Schlüssel in Allgemein.Shop.Api.Id und Allgemein.Shop.Api.Key stimmen nicht.
  • Der Zugang ist im Shop gesperrt oder abgelaufen.
  • Der Zugang lässt nur bestimmte IP-Adressen zu, und OBS greift von einer anderen Adresse zu.

Prüfen Sie den Zugang im Adminbereich des Shops. Kennen Sie den Schlüssel nicht mehr, legen Sie einen neuen Zugang an, siehe REST-API-Zugang.

Protokoll: „REST-API HTTP 404 Fehler 404999: Antwort ist kein JSON (HTTP 404)“ (nur 3.x) Unter <Ihre-Shop-Adresse>/obs/rest-api/v1/ antwortet keine REST-API. Prüfen Sie Allgemein.Shop.URL: Dort steht nur die Adresse der Shop-Hauptseite. Stimmt die Adresse, ist das OBS-Modul im Shop nicht für 3.x eingerichtet. Wenden Sie sich an den OBS-Support.
Protokoll: „REST-API HTTP 301 …“ oder „REST-API HTTP 302 …“ mit „Umleitung (HTTP …) nach …, Shop-URL prüfen“ (nur 3.x) Der Shop leitet die Anfrage auf eine andere Adresse um, z.B. von http:// auf https://. OBS folgt Umleitungen nicht. Tragen Sie in Allgemein.Shop.URL die Adresse ein, auf die die Meldung verweist.
Protokoll: „REST-API HTTP 500 …“, „… 502 …“, „… 503 …“ oder „… 504 …“ (nur 3.x) Im Shop oder auf dem Webserver ist ein Fehler aufgetreten. Bei vorübergehenden Störungen des Webservers wiederholt OBS die Anfrage bis zu dreimal. Bleibt der Fehler, wenden Sie sich mit der Request-Id aus dem Protokoll an den OBS-Support.
Protokoll: „REST-API ohne Antwort: …“ (nur 3.x) OBS hat keine Antwort vom Shop erhalten. Mögliche Ursachen:
  • Der Shop ist nicht erreichbar, oder die Adresse in Allgemein.Shop.URL stimmt nicht.
  • Das Zertifikat des Shops ist ungültig, z.B. abgelaufen, selbst signiert oder für eine andere Adresse ausgestellt. Lassen Sie das Zertifikat erneuern. Die Zertifikatsprüfung (Allgemein.Shop.Api.ZertifikatPruefen) schalten Sie nur bei Testsystemen ab.
Aufgabe „Shop <Nummer>: Bereiche des REST-API-Zugangs fehlen“ (nur 3.x) Dem REST-API-Zugang fehlen Bereiche für Übertragungen, die OBS nutzt. Die Aufgabe nennt die betroffenen Aktionen und Bereiche. OBS überspringt diese Übertragungen, bis Sie die Bereiche im Adminbereich des Shops vergeben haben, siehe REST-API-Zugang.
Protokoll: „incompatible interface versions! …“ (nur 1.x) Das OBS-Modul im Shop ist älter, als OBS unterstützt. Wenden Sie sich mit den angezeigten Versionsangaben an den OBS-Support. Läuft die Verbindung über eine Automatik, erhält der Shop-Sachbearbeiter die Aufgabe Shop Versionsfehler.
Protokoll: „versions incompatible!“ (2.x und 3.x) Die Version der Schnittstelle in OBS und die API-Version des OBS-Moduls im Shop passen nicht zusammen. Bei 3.x muss außerdem die Version der REST-API im Shop zu OBS passen. OBS meldet den Fehler beim ersten Auftreten automatisch an den OBS-Support.

Siehe auch