Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Mittels SSO-Schnittstelle kann eine automatisierte Anmeldung und Registrierung von Benutzern vorgenommen werden. In der Regel wird die Schnittstelle dazu verwendet, dass die Daten von einem Kundensystem (z. B. durch ein CMS- oder CRM-System, Intranet oder Procurementplattform) aufbereitet werden. Über einen Link mit speziell verschlüsselten Query String wird die PRINT LOUNGE aufgerufen.

...

Für shopname wird der Shopname angegeben der in der Administration der Print - Lounge (Verwaltung - Kunden - bearbeiten→ Kunden → bearbeiten) eingestellt wurde. Bitte konfigurieren Sie in der Administration Ihres Shops die SSO-Schnittstelle (Verwaltung - Kunden - bearbeiten - SSO-Verwaltung → Kunden → bearbeiten → SSO-Schnittstelle) und verwenden Sie die dort ein gestellte Passphrase eingestellte Passphrase um die Daten zu verschlüsseln.

Dabei muss ENCODED_KEY_VALUE_PAIRS mit den verschlüsselten Daten ersetzt werden. Sofern die Daten erfolgreich verarbeitet wurden, wird der Benutzer am System angemeldet und kann die Printlounge Print Lounge regulär nutzen.
 

Die übermittelten Daten müssen mittels der eingestellten Verschlüsselungsverfahren (unter Verwaltung - Shops → SSO- SSO Schnittstelle - Verschlüsselungsverfahren) verschlüsselt sein

...

Folgende Daten können übermittelt werden:


 
BezeichnungTyp / WertBemerkungVersion
request_time *Datum und Uhrzeit (ISO 8601)Zeitpunkt des Aufrufs (Standardgültigkeit des Requests 500s - 8 min)since 4.3.23

customer_user_name *

50 Zeichen (A-Z0-9_-.@)

Benutzen Sie eindeutige Zuordnungen wie UserIds, E-Mails oder Benutzernamen
 

customer_user_budgetgruppe__id

Integer

Wird keine Benutzergruppe übergeben, wird der Benutzer in einer definierten Standardbenutzergruppe angelegt. Gleiches gilt, wenn das System anhand der ID keine gültige Benutzergruppe ermitteln kann.
 

group_customer_number

Wird der Name der Benutzergruppe übergeben, wird geprüft ob inder Gruppe die Kundennummer mit exakt diesem Wert existiert. Falls nicht wird der Benutzer der Standardgruppe zugeordnet. Bei einer Übereinstimmung wird der Benutzer in die jeweilige Gruppe zugewiesen.

ACHTUNG: Funktioniert nur wenn unter "Shops->bearbeiten→ SSO Schnittstelle" die Option "Benutzergruppen anhand Kundennummer ermitteln" aktiviert wurde.


group_name50 Zeichen (Utf8)

Wird der Name der Benutzergruppe übergeben, wird geprüft ob die Gruppe mit exakt diesem Namen existiert. Falls nicht wird die Gruppe neu angelegt. Der Benutzer wird dieser Gruppe zugewiesen.

ACHTUNG: Funktioniert nur wenn unter "Shops->bearbeiten" die Option "Benutzergruppen automatisch anlegen" aktiviert wurde.

since 6.34.0

customer_longname

50 Zeichen (Utf8)

  


customer_firstname

50 Zeichen (Utf8)



customer_lastname

50 Zeichen (Utf8)



customer_user_businessunit

50 Zeichen (Utf8)

  


customer_user_purchaser

50 Zeichen (Utf8)

  



customer_user_company1

200 Zeichen (Utf8)

 

 


customer_user_company2

200 Zeichen (Utf8)

  



customer_user_company3

200 Zeichen (Utf8)

  


customer_user_street

200 Zeichen (Utf8)

  


customer_user_zip

10 Zeichen (Utf8)

  


customer_user_town

200 Zeichen (Utf8)

  



customer_user_country

200 Zeichen (Utf8)

Veraltet, nutzen Sie customer_user_countrycode
 

customer_user_countrycodeLändercode (ISO 3166)
 

since 4.2.10

customer_user_costcenter

200 Zeichen (Utf8)

  



customer_user_telefon

200 Zeichen (Utf8)

  



customer_user_telefax

200 Zeichen (Utf8)

  


customer_user_email

100 Zeichen (Utf8)

 

 


user_groups_binary_url200 Zeichen (Utf8)URL für Logo (Bild) einer Benutzergruppe
 

user_groups_binary_description50 Zeichen (Utf8)Beschreibung für Logo (Bild) einer Benutzergruppe
 

customer_user_internet

100 Zeichen (Utf8)

 

 


customer_user_mobil

50 Zeichen (Utf8)

  



customer_user_kundennummer

100 Zeichen (Utf8)

  


customer_user_level

Integer

  


freigabeportal_zeigen

53: Ja
54: Nein (Standard)

  


customer_user_aussendienst

200 Zeichen (Utf8)

  



customer_funktion

200 Zeichen (Utf8)

  


sprache

de: Deutsch (Standard)
en: Englisch

(veraltet)

  


customfield1

200 Zeichen (Utf8)

  


customfield2

200 Zeichen (Utf8)

  



customfield3

200 Zeichen (Utf8)

 

 


customfield4

200 Zeichen (Utf8)

  


customfield5

200 Zeichen (Utf8)

 

 


customer_user_level

57: A - Benutzer (Standard) 
58: B - Supervisor
59: C - Verwaltung
60: X - Interessenten

  



delivery_address_editable

0: Ja

1: Nein, ohne E-Mail

2: Nein

Legt fest, ob die Lieferadresse im Warenkorb editierbar ist.



dest_page

wg: Eine Warengruppenseite
pers: Eine Personalisierungsseite
article_detail: Detailseite für Artikel
reorder: Nachbestellung 

  qty


dest_id

Die ID des Eintrags (Warengruppe oder Artikel)

  


quantity

Die Anzahl aus der Preisstaffel (Wird keine Anzahl übermittel, ermittelt das System die kleinste Preisstaffel für den jeweiligen Artikel)

 

 


skip_cart

53: Ja
54: Nein (Standard)

  



continue_shopping

Zeigt im Warenkorb den Button "Weiter einkaufen".

0: Deaktivieren
1: Aktivieren
2: zum SSO-Übergabepunkt

Achtung: Beim Aktivieren wird die Variable "skip_cart" ignoriert.

  


pers_dataDient der Übermittlung von Personalisierungsdaten (siehe unten)
  


testZum Aktivieren des Testmodus kann der Parameter „test = true“
übergeben
übergeben werden. Anstelle der Weiterleitung findet eine Bildschirmausgabe der
übergebenen lang
übergebenen Daten statt.
  


lang
  • Language ID: Zu finden unter: Shops → Bearbeiten → Spracheinstellungen
  • de_DE
  • oder en_EN, wenn die Option "Mehrsprachiges Bestellportal" unter Verwaltung → Einstellung → Allgemein nicht aktiviert ist.


dynamic_listsListeneinträge über die SSO-Schnittstelle als JSON-String übergeben. (Mehr dazu erfahren Sie unter dem Punkt "Dynamische Listeneinträge")

view_settings

Typ/Wert: Array

  • cookie_notice = 1: Anzeigen 0: Ausblenden
  • color_bar = 1: Anzeigen 0: Ausblenden
  • top_header = 1: Anzeigen 0: Ausblenden
  • header = 1: Anzeigen 0: Ausblenden
  • nav = 1: Anzeigen 0: Ausblenden
  • footer = 1: Anzeigen 0: Ausblenden
  • iframe_autoheight = 1: aktivieren 0: deaktivieren


Hinweis: OCI muss aktiviert sein und die Einstellung "Verwendung in IFrame?" muss deaktiviert sein. Nur kompatibel mit dem Premiumtemplate.



email_address_for_cost_releaseE-Mail-Adresse für Kostenfreigabe (ab Version 6.0.0)

external_order_number

Externe Bestellnummer

Über diesen Parameter kann eine Bestellnummer aus einem externen System übergeben werden, welche dann beim Auslösen einer Bestellung innerhalb der PRINT LOUNGE in der neuen Bestellung als "Externe Bestellnummer" hinterlegt wird.


return_url200 ZeichenWird hier eine URL angegeben, so wird auf der Finish ein Button angezeigt, der zu dieser URL führt
settingsArray

Dieses Array kann alle Benutzer-Settings als key-value-Paar enthalten, welche gesetzt werden sollen.


redirect_url200 Zeichen (Utf8)Hier kann eine URL (z.B. "/makepage.php?searchStr=test&p=search") 
 
eingetragen werden.

Findet ein erfolgreicher Login statt, wird der User direkt zu der angegebenen URL geleitet.

* Pflichtfelder

 Nach Nach der Anmeldung am System stehen alle Funktionen wie gewohnt zur Verfügung, als ob der Benutzer sich regulär angemeldet hätte. Optional kann die reguläre Anmeldung mit Benutzernamen und Kennwort deaktiviert werden, so dass sodass Benutzer nur noch über die Schnittstelle ins System gelangen können.  

Bestellung stornieren

Folgende Daten müssen übermittelt werden:

BezeichnungTyp / WertBemerkungVersion
request_time *Datum und Uhrzeit (ISO 8601)Zeitpunkt des Aufrufs (Standardgültigkeit des Requests 500s - 8 min)since 4.3.23

dest_page

cancel_order

 

 


dest_id

Der Bestellcode

  
 



Benutzerfelder nicht überschreibbar

Image Added

Die Einstellung befindet sich unter Shops → bearbeiten → SSO-Schnittstelle → Benutzerfelder nicht überschreibbar.

Alle Benutzerfelder die in diesem Auswahlfeld ausgewählt sind, können nicht über die SSO-Schnittstelle überschrieben werden.
Auch wenn ein Wert für eines der Felder übergeben wird, wird der alte Wert beibehalten.

Dynamische Listeneinträge

Mit dieser Funktion können die Listeneinträge über die SSO-Schnittstelle in JSON-Format übergeben werden.

Diese Funktion kann unter Feldspezialoptionen aktiviert werden:

Image Added

Info
titleHinweis

Die Erweiterung unterstützt ausschließlich eindimensionale Listen, weitere Felder werden von der Listenfunktion nicht beeinflusst.


JSON-String-Beispiel:


Codeblock
languagexml
firstline1
titleJSON-String Beispiel
linenumberstrue
{
  "FELD_ANREDE": {
    "default_value": "w",
    "options": [
      {
        "name": "Frau",
        "value": "w"
      },
      {
        "name": "Herr",
        "value": "h"
      }
    ]
  },
  "FELD_TELEFON_LAENDERVORWAHL": {
    "default_value": "0049",
    "options": [
      {
        "name": "(+49 Deutschland)",
        "value": "0049"
      },
      {
        "name": "(+43 Österreich)",
        "value": "0043"
      }
    ]
  }
}




Übermittlung von Personalisierungsdaten

Zur direkten Personalisierung eines Artikels kann der Parameter „pers = true“ und „dest_page = pers“ angegeben werden. Wird der Parameter weggelassen wird der Benutzer zu zur angegebenen Zielseite weitergeleitet. Zusätzlich Zusätzlich kann man Personalisierungsdaten übergebenübergeben. Dazu wird der Paramater „pers_data“ angegeben. Die Datenübergabe Datenübergabe kann auf zwei Wegen erfolgen:

  1. „pers_data“ wird als Array übergebenübergeben. Hierbei wird als Key der Variablen-Name Variablenname aus der Druckvorlage übergeben übergeben und als Value ein gewünschter gewünschter Wert.
  2. „pers_data“ wird als Integer übergebenübergeben. Hierbei handelt es sich um die „Id“ eines für für die Vorlage gespeicherten Datensatzes. Wird ein Datensatz erfolgreich ermittelt, werden diese Daten automatisch geladen.



 

Codeblock
languagephp
firstline1
titleBeispiel zum Verschlüsseln mit PHP
linenumberstrue
$userData["request_time"] = (new DateTime())->format(DateTime::ISO8601); // ab PHP 5.4
$userData["customer_user_name"] = "max@mustermann.de";
$userData["customer_longname"] = "Max Mustermann";
$userData["customer_user_company1"] = "Mustermann GmbH";
 
//Übermittlung von weiteren Personalisierungsdaten
$userData["pers"] = true;
$userData["pers_data"]["Feld1"] = "Wert1";
$userData["pers_data"]["Feld2"] = "Wert2";


$string = http_build_query($userData);

$myPasshrase = "Passphrase";
$myCipher = "AES-256-CBC"; // Die Einstellungen unter "Verwaltung - Shops - SSO Schnittstelle - Verschlüsselungsverfahren" beachten!
 
$iv = substr (hash('sha256', $myPasshrase), 0, 16);
$encoded_string = openssl_encrypt ($string, $myCipher, $myPasshrase, false, $iv);
$encoded_string = urlencode($encoded_string);
 


Referer Prüfung

Im Feld Referer Prüfung kann ein Regex eingegeben werden, mit dem die Anmeldung und Erstellung von Nutzern nur für eine oder mehrere angegebene Domains erlaubt.

Beispiel: www.domain.de zulassen:
/www\.domain\.de/

Beispiel: www.domain.de und www.weiteredomain.de zulassen:
/www\.(domain|weiteredomain)\.de/

Beispiel: *.domain.de zulassen:
/(.*)\.domain|\.de/

Benutzer ohne Benutzernamen mit temporärem Benutzernamen anmelden

Wenn  die Option 'Benutzer ohne Benutzernamen mit temporärem Benutzernamen anmelden' aktiviert ist, die Option 'Unbekannte Benutzer registrieren ' aktiviert ist

und keine ENCODED_KEY_VALUE_PAIRS (?h=) übergeben werden, wird ein temporärer Benutzer mit einem Dummy Benutzernamen angelegt.




Innerhalb der Administration im Bereich Verwaltung

...

→ Kunden → bearbeiten → SSO-Schnittstelle können die oben beschriebenen Informationen abgelegt und die Funktionen aktiviert werden.

Image Added

Benutzer Settings

Dieses Array kann alle Benutzer-Settings als key-value-Paar enthalten, welche gesetzt werden sollen.

...

Codeblock
titleUserBudgetSettings
collapsetrue
$ssoData['settings'] = [
'UserBudgetSettings' => json_encode([
'activateUserDiscount' => true,
'activateUserDiscountDescription' => 'activateUserDiscountDescription',
'activateUserDiscountValue' => true,
'blockPurchaseOrderOnUsedBudget' => true,
'blockPurchaseOrderOnUsedBudgetMessage' => 'blockPurchaseOrderOnUsedBudgetMessage',
'budgetValue' => null,
'clientId' => 1,
'customerUserHandling' => true,
'customerUserId' => 0,
'customerUserSubtractDeliveryCosts' => true,
'minimumOrderValue' => 1,
'shopUserGroupId' => 123456789
]),
'UserBudgetValue' => 100
];


UserBudgetSettingsDatentyp
activateUserDiscountBoolean
activateUserDiscountDescriptionString
activateUserDiscountValueBoolean
blockPurchaseOrderOnUsedBudgetBoolean
blockPurchaseOrderOnUsedBudgetMessageString
budgetValueFloat
clientIdInteger
customerUserHandlingBoolean
customerUserIdInteger
customerUserSubtractDeliveryCostsBoolean
minimumOrderValueFloat
shopUserGroupIdInteger


Die UserBudgetSettings werden in dem SSO-Daten-Array unter dem Key "UserBudgetSettings" als json_encoded String übergeben.