Hilfe · Inhalte & Design · Formulare & Spam-Schutz

Formulare und Spam-Schutz

Kontaktformular, Anfragen auf der Produktseite, Rückrufservice und eigene Formulare: Dieser Leitfaden zeigt, wo Sie die Formulare einschalten, wohin Anfragen gehen, wann daraus ein Ticket wird und wie Sie Spam mit reCAPTCHA, Login-Pflicht und Limits eindämmen.

Auf einen Blick

  • Shop-Formulare: Kontaktformular, „Anfrage“ und „Preisvorschlag“ auf der Produktseite, „Angebot anfordern“, „Anfrage zum Warenkorb“ und den Rückrufservice schalten Sie einzeln ein und aus.
  • Empfänger: Das Kontaktformular schickt an die gewählte Abteilung, die übrigen Formulare an eigene Adressen oder an die E-Mailadresse des Shopbetreibers.
  • Ticket statt E-Mail: Kontakt-, Produkt- und Preisanfragen angemeldeter Kunden werden auf Wunsch Tickets. Anfragen von Gästen kommen als E-Mail.
  • Eigene Formulare: unter CMS → Formulare anlegen und mit dem xoContentEditor in CMS-Seiten oder Kategorien einbinden.
  • Spam: reCAPTCHA v3 einrichten, Login-Pflicht und Tageslimit nutzen, nicht genutzte Formulare abschalten.

In diesem Leitfaden


Die Formulare im Überblick

Der Shop bringt diese Formulare mit. Jedes hat einen eigenen Schalter, eigene Empfänger und eine eigene Mailvorlage.

FormularIm ShopEinschalten unter
KontaktformularSeite „Kontakt“Einstellungen → Allgemein → Grundeinstellungen → Kontaktformular: Status (neue Shops: an)
Anfrage zum ArtikelKnopf „Anfrage“ auf der ProduktseiteEinstellungen → Design → Produktdetailansicht → Produktanfrage „Fragen zum Artikel“ an/aus (neue Shops: an)
PreisvorschlagKnopf „Preisvorschlag“ auf der ProduktseiteEinstellungen → Design → Produktdetailansicht → Preisvorschlag an/aus (neue Shops: aus)
Angebot anfordernKnopf „Angebot anfordern“ auf der ProduktseiteEinstellungen → Design → Produktdetailansicht → Angebot-anfordern Button (neue Shops: aus)
Anfrage zum WarenkorbKnopf „Anfrage zum Warenkorb“ unter der Artikelliste im WarenkorbEinstellungen → Checkout → Warenkorb → Anfrage zum Warenkorb Button einblenden (neue Shops: aus)
RückrufserviceBox „Kostenloser Rückruf“Box unter CMS → Boxenmanager, Einstellungen unter Einstellungen → Design → CallBack
Eigene FormulareCMS-Seiten und KategorienCMS → Formulare

Weitere Formulare beschreiben eigene Leitfäden: die Newsletter-Anmeldung unter Newsletter, das Widerrufsformular unter Widerrufsbutton, den Verfügbarkeitsalarm unter Produktbenachrichtigung und das Ticketformular im Kundenkonto unter Tickets & Aufgaben.


Kontaktformular einrichten

Das Kontaktformular ist die Seite „Kontakt“. Kunden wählen eine Abteilung, schreiben ihr Anliegen und geben eine E-Mail-Adresse oder Telefonnummer an.

Kontaktseite im Shop als Gast: links der Kasten Kontaktinformationen mit der Adresse des Musterladens, rechts der Hinweis zum Ticket nach dem Login, die Abteilungs-Knöpfe Allgemeine Fragen (gewählt) und Bestellungen, die ausgefüllten Felder Name, E-Mailadresse, Telefonnummer und Anfrage, der nicht gesetzte Datenschutz-Schalter und der gesperrte Knopf Weiter

Die Kontaktseite mit zwei Abteilungen: Solange der Datenschutz-Haken fehlt, bleibt der Knopf „Weiter“ gesperrt. Zum Vergrößern anklicken.

Abteilungen und Empfänger

Unter Einstellungen → Allgemein → Grundeinstellungen → Daten für Kontaktseite legen Sie je Zeile eine „Abteilung“ mit „E-Mailadresse“ an, zum Beispiel „Allgemeine Fragen“ und „Bestellungen“. Im Shop erscheinen die Abteilungen als Knöpfe, die erste ist vorausgewählt. Die Anfrage geht an die Adresse der gewählten Abteilung.

Mit der Spalte „Sprache“ zeigen Sie eine Abteilung nur in einer Sprache. Zeilen mit „---“ erscheinen in allen Sprachen. Ohne Einträge geht die Anfrage an die „E-Mailadresse des Shopbetreibers“.

Pflichtangaben

Pflicht sind das Anliegen und mindestens eine Kontaktmöglichkeit: E-Mail-Adresse oder Telefonnummer. Der Name ist freiwillig. Das Anliegen muss ein ganzer Satz sein, unsinnige Telefonnummern und Namen weist das Formular zurück.

Soll das Telefon immer Pflicht sein, stellen Sie Einstellungen → Checkout → Kundendetails → Telefonnummer auf mandatory. Diese Einstellung gilt auch für die Registrierung. Angemeldete Kunden sehen die Felder nicht: Name, E-Mail und Telefon kommen aus dem Kundenkonto.

Einstellung Daten für Kontaktseite im Bearbeitungsmodus: Tabelle mit den Spalten Sprache, Abteilung und E-Mailadresse, zwei Zeilen Allgemeine Fragen mit info@example.com und Bestellungen mit bestellung@example.com, beide mit der Sprache ---, darunter der Knopf Neuer Eintrag und die Knöpfe zum Speichern

„Daten für Kontaktseite“: je Zeile eine Abteilung mit Empfängeradresse, die Sprache „---“ zeigt sie in allen Sprachen. Zum Vergrößern anklicken.

Texte und Hinweise im Formular

Ein eigenes Feld für einen Hinweistext hat das Kontaktformular nicht. Sie haben drei Wege:

  • Texte ändern: Unter Tools → xoLanguage wählen Sie „Framework“ Frontend und „Sektion“ store-contact. Dort ändern Sie etwa die Überschrift „Kontaktanfrage“, „Kontaktinformationen“ oder den Hinweis „Zur Kontaktaufnahme müssen Sie …“, den nur Gäste sehen. Tragen Sie Ihren Text als „eigener Wert“ ein, dann bleibt er bei Updates erhalten.
  • Kasten „Kontaktinformationen“: Er zeigt Einstellungen → Allgemein → Grundeinstellungen → Shopadresse und Kontaktdaten. Diese Angaben stehen auch im Fuß Ihrer Mails, siehe CMS-Manager & E-Mails.
  • Zusatzfeld mit Hinweis: Mit dem Formular-Builder ergänzen Sie das Kontaktformular um eigene Felder, jedes mit eigenem „Hinweistext“, siehe Shop-Formulare erweitern.

Kontaktformular abschalten

Stellen Sie Einstellungen → Allgemein → Grundeinstellungen → Kontaktformular: Status auf false. Wer die Seite aufruft, landet dann auf der Startseite. Entfernen Sie danach die Links auf die Kontaktseite, etwa im Footer, siehe CMS-Manager & E-Mails. Oft reicht statt des Abschaltens die Login-Pflicht, siehe Login erforderlich.


Anfragen auf der Produktseite und im Warenkorb

Vier Formulare beziehen sich auf Artikel. Alle öffnen sich als Fenster über der Seite. Die Anfrage nennt den Artikel, bei der Warenkorbanfrage alle Artikel im Warenkorb.

Anfrage zum Artikel

Der Knopf „Anfrage“ öffnet das Fenster „Produktanfrage“. Der Kunde schreibt seine Frage und gibt als Gast Name, E-Mail und Telefon an. Gewählte Merkmale schickt der Shop mit. Ein- und ausschalten mit Einstellungen → Design → Produktdetailansicht → Produktanfrage „Fragen zum Artikel“ an/aus.

Dasselbe Fenster öffnen „Preis auf Anfrage“ (siehe Preise & Kundengruppen) und Artikel mit dem Schalter „Click-to-Call Produkt“, die sich nur per Anfrage kaufen lassen. Nutzen Sie eine dieser Funktionen, lassen Sie die Produktanfrage eingeschaltet, sonst kommt die Anfrage nicht an.

Preisvorschlag

Mit „Preisvorschlag“ nennt der Kunde einen Preis, zu dem er den Artikel kaufen würde. Eingeschaltet wird er mit Einstellungen → Design → Produktdetailansicht → Preisvorschlag an/aus. Der Knopf erscheint nur bei Artikeln mit sichtbarem Preis. Für einzelne Artikel schalten Sie ihn im Artikel mit „Sperren für Preisvorschlag“ ab.

Angebot anfordern

Aus der Anfrage entsteht ein Angebot: eine Bestellung im Angebotsstatus, die Sie im Reiter „Angebote“ der Bestellübersicht bearbeiten, siehe Bestellungen. Auch Gäste ohne Kundenkonto können anfragen.

  • „Angebot-anfordern Button“: Position unter dem Warenkorb-Knopf, unter den Produktoptionen oder bei den übrigen Aktionen.
  • „Angebotsstatus-IDs“: mindestens ein Bestellstatus. Ohne ihn erscheint der Knopf nicht.
  • „Angebot-Formular: Aktive Felder“: welche Angaben das Formular abfragt. Die E-Mail-Adresse ist immer dabei.
  • „Versende Angebots-Mails“ (Kunde, Shopbetreiber) und „Angebots-Mail mit PDF“.

Anfrage zum Warenkorb

Mit Einstellungen → Checkout → Warenkorb → Anfrage zum Warenkorb Button einblenden erscheint im Warenkorb unter der Artikelliste ein Knopf. Der Kunde stellt damit eine Frage zu seinem ganzen Warenkorb. Die Mail „Warenkorbanfrage“ enthält alle Artikel aus dem Warenkorb. Warenkorbanfragen kommen immer als E-Mail, nie als Ticket.

Die Einstellungen für „Angebot anfordern“ stehen alle unter Einstellungen → Design → Produktdetailansicht. Wohin die Anfragen gehen, zeigt Empfänger und Mails.


Rückrufservice

Über den Rückrufservice bittet ein Kunde um einen Anruf: mit Name, Telefonnummer, E-Mail-Adresse, Wunschtag, Zeitfenster und Anliegen.

  1. Unter CMS → Boxenmanager die Box „Kostenloser Rückruf“ aktivieren. Sie verlinkt die Rückrufseite.
  2. Unter Einstellungen → Design → CallBack → E-Mailabteilungen CALLBACK (Rückruf) die Abteilungen mit E-Mail-Adresse eintragen. Ohne Eintrag geht die Anfrage an die E-Mailadresse des Shopbetreibers.
  3. Unter „Geschäftszeiten für CALLBACK (Rückruf)“ einen Hinweis hinterlegen, etwa Ihre Telefonzeiten. Er erscheint auf der Rückrufseite.
  4. Wochentage und Zeitfenster festlegen: „Rückruf: auswählbare Wochentage“, „Rückruf: Zeitfenster“ mit eigenen Uhrzeiten und eigener Reihenfolge sowie „Rückruf: Auswahl „Uhrzeit egal“ anbieten“. Mindestens ein Wochentag muss auswählbar bleiben.ab 4.9.10

Rückrufanfragen kommen als Mail „Rückrufanfrage“, nicht als Ticket.


Wohin Anfragen gehen

Jedes Formular hat eigene Empfänger. Ist keine eigene Adresse eingetragen, geht die Anfrage an die „E-Mailadresse des Shopbetreibers“ unter Einstellungen → Schnittstellen → E-Mail-Marketing / CRM → E-Mailoptionen.

FormularAls E-Mail anAls Ticket
Kontaktformulargewählte Abteilung aus „Daten für Kontaktseite“Ticket, Benachrichtigung an die Adresse der Abteilung
Anfrage zum Artikel„abweichende E-Mailadresse (Produktanfrage und Warenkorbanfrage)“Ticket, Benachrichtigung an dieselbe Adresse
Preisvorschlag„abweichende E-Mailadresse (Preisvorschlag)“Ticket, Benachrichtigung an dieselbe Adresse
Anfrage zum Warenkorb„abweichende E-Mailadresse (Produktanfrage und Warenkorbanfrage)“kein Ticket
Rückrufservicegewählte Abteilung aus „E-Mailabteilungen CALLBACK (Rückruf)“kein Ticket
Angebot anfordernKopie an den Shopbetreiber, wenn „Versende Angebots-Mails“ ihn enthältwird ein Angebot in den Bestellungen
Eigene Formulare„Empfänger-E-Mail (bei Ziel E-Mail)“ im FormularZiel „Ticket erstellen“ oder „Ticket + E-Mail“

Die beiden „abweichenden“ Adressen stehen ebenfalls in den E-Mailoptionen. Fehlt bei einem Ticket die eigene Adresse, geht die Benachrichtigung an „Infomail Tickets“ unter Einstellungen → Allgemein → Tickets & Aufgaben.

Direkt antworten

Die Mail an Sie trägt Name und E-Mail-Adresse des Kunden als Antwortadresse. Mit „Antworten“ in Ihrem Mailprogramm schreiben Sie ihm direkt.

Bestätigung an den Kunden

Kommt eine Anfrage als E-Mail bei Ihnen an, erhält der Kunde die Mail „Anfragebestätigung“ mit Ihrer Datenschutzerklärung als PDF. Wird sie ein Ticket, sieht er im Shop die Ticketnummer und verfolgt das Ticket in seinem Kundenkonto.

Mailtexte

Die Vorlagen „Kontaktanfrage“, „Produktanfrage“, „Preisanfrage“, „Warenkorbanfrage“, „Rückrufanfrage“, „Anfragebestätigung“ und „Angebots-Mail“ ändern Sie unter CMS → Mails & Marketing / Automatisierungen, siehe CMS-Manager & E-Mails.


Ticket statt E-Mail

Kontakt-, Produkt- und Preisanfragen landen auf Wunsch im Ticketsystem. Dort bearbeitet Ihr Team sie mit Zuständigkeit, Status und Verlauf.

Einstellungsgruppe Tickets & Aufgaben, Zeilen 1 bis 13 mit Ticketsystem an/aus, Produktanfragen als Ticket, Produktanfrage: Login erforderlich, Preisanfragen als Ticket, Preisanfrage: Login erforderlich, Kontaktanfragen als Ticket und Kontaktformular: Login erforderlich, alle auf true; nach einer gestrichelten Linie die Zeilen 31 bis 33 mit Infomail Tickets (tickets@example.com) und Maximale Ticketanzahl pro Tag 10

Ticket-Zustellung, Login-Pflicht und Tageslimit stehen in der Gruppe „Tickets & Aufgaben“, die gestrichelte Linie markiert ausgelassene Zeilen. Zum Vergrößern anklicken.

  1. Einstellungen → Allgemein → Tickets & Aufgaben → Ticketsystem an/aus auf true.
  2. In derselben Gruppe „Kontaktanfragen als Ticket“, „Produktanfragen als Ticket“ bzw. „Preisanfragen als Ticket“ auf true. In neuen Shops sind alle drei an.
  3. Ein Ticket entsteht nur für angemeldete Kunden. Anfragen von Gästen kommen weiter als E-Mail. Gäste sehen dazu im Formular den Hinweis, dass ihre Anfrage nach dem Login als Ticket erfasst wird.

Login erforderlich

Mit „Kontaktformular: Login erforderlich“, „Produktanfrage: Login erforderlich“ und „Preisanfrage: Login erforderlich“ lassen Sie nur angemeldete Kunden schreiben. Gäste sehen einen Hinweis mit Link zur Anmeldung, das Formular ist für sie gesperrt. In neuen Shops sind alle drei an.

Die Login-Pflicht des Kontaktformulars gilt immer, auch wenn Kontaktanfragen als E-Mail ankommen. Die Login-Pflicht für Produkt- und Preisanfragen wirkt nur, wenn das Ticketsystem und „Produktanfragen als Ticket“ bzw. „Preisanfragen als Ticket“ eingeschaltet sind.

Benachrichtigung an Ihr Team

Bei jedem neuen Ticket aus einem dieser Formulare schickt der Shop eine Mail mit Link ins Ticket, an die Adresse aus Empfänger und Mails. Die Vorlage heißt „Neue Supportticketanfrage“.

Tageslimit

„Maximale Ticketanzahl pro Tag“ begrenzt, wie viele Tickets eine E-Mail-Adresse in 24 Stunden anlegen darf. Neue Shops haben 10, ein leeres Feld hebt die Grenze auf. Wer die Grenze erreicht, bekommt einen Hinweis statt eines Tickets.

Wie Sie Tickets bearbeiten, Zuständige festlegen und antworten, beschreibt der Leitfaden Tickets & Aufgaben.


Eingegangene Anfragen finden

Wo eine Anfrage steht, hängt davon ab, ob sie als E-Mail, als Ticket oder über ein eigenes Formular ankam.

AnfrageHier finden Sie sie
Als Ticket angelegtTools → Tickets & Aufgaben → Tickets & Aufgaben
Als E-Mail verschickt, auch alle Warenkorb- und Rückrufanfragenim Postfach der Empfängeradresse. Eine eigene Liste dieser Mails führt der Shop nicht.
Eigene FormulareCMS → Formulare, Reiter „Posteingang“, egal welches Ziel das Formular hat
Zusatzfelder der Shop-Formulareebenfalls im Posteingang, zusätzlich zu Ticket oder Mail
AngebotsanfragenBestellübersicht, Reiter „Angebote“
EinwilligungenTools → Datenschutzmanagement, nur der Nachweis ohne Inhalt der Anfrage

Der Posteingang der Formulare

Unter CMS → Formulare wechseln Sie oben zwischen „Verwaltung“ und „Posteingang“. Der Posteingang zählt ungelesene Einsendungen und filtert nach „Alle“ und „Ungelesen“. Eine Zeile klappt auf und zeigt unter „Übermittelte Daten“ alle Angaben. Dazu gibt es „In Ticket öffnen“, wenn aus der Einsendung ein Ticket wurde, sowie „Als gelesen markieren“ und „Löschen“.

Formular-Verwaltung, Reiter Posteingang: 2 ungelesen, Filter Alle (3) und Ungelesen (2), Suchfeld und drei Einsendungen; die oberste von Erika Musterfrau zum Formular musteranfrage mit Ziel Ticket + E-Mail und Ticket 28001 ist aufgeklappt und zeigt unter Übermittelte Daten Name, E-Mail, Telefon, Menge und Nachricht sowie die Knöpfe In Ticket öffnen, Als gelesen markieren und Löschen

Der Posteingang sammelt jede Einsendung eigener Formulare, aufgeklappt mit allen Angaben und dem Weg ins Ticket. Zum Vergrößern anklicken.

Wer den Posteingang sehen darf

  • Formulare anlegen, ändern und löschen sowie Einsendungen löschen darf, wer die Einstellungen bearbeiten darf.
  • Posteingang und hochgeladene Dateien lassen sich einer eigenen Benutzergruppe freigeben: Unter Einstellungen → Administratoren → Benutzergruppen genügt das Leserecht für „Formulare“. So bearbeitet etwa eine Urlaubsvertretung die Anfragen, ohne Zugriff auf die übrigen Einstellungen.ab 4.10

Eigene Formulare mit dem Formular-Builder

Unter CMS → Formulare bauen Sie Formulare ohne Programmierung, etwa für Musterbestellungen, Terminwünsche oder Rückfragen zu Sonderanfertigungen. Eine Live-Vorschau zeigt das Formular, während Sie es bauen.

  1. Unter CMS → Formulare im Reiter „Verwaltung“ auf „Neues Formular“ klicken.
  2. Im Reiter „Einstellungen“ den „Formular-Key“ vergeben, etwa musteranfrage: nur Kleinbuchstaben, Ziffern und Unterstrich. Er lässt sich nach dem Anlegen nicht mehr ändern. Die Keys contact, product_inquiry, price_inquiry und ticket sind für die Erweiterung der Shop-Formulare reserviert.
  3. Das „Ziel“ wählen (Tabelle unten) und bei E-Mail die „Empfänger-E-Mail (bei Ziel E-Mail)“ eintragen.
  4. Je Sprache „Titel“, „Einleitungstext“, „Erfolgsmeldung“ und „Betreff (E-Mail/Ticket)“ füllen. Die Sprache schalten Sie oben um.
  5. Im Reiter „Felder“ mit „Feld“ Felder hinzufügen. Für jedes Feld setzen Sie Feldtyp, „Beschriftung“, „Hinweistext“, „Platzhalter im Feld“ und „Pflichtfeld“. Die Reihenfolge ändern Sie per Ziehen.
  6. Oben „Aktiv“ einschalten und mit „Speichern und Schließen“ oder „Aktualisieren“ speichern. Ein inaktives Formular zeigt der Shop nicht an. Der Schalter „CSRF“ daneben (ab Werk an) prüft beim Absenden einen Sicherheitsschlüssel aus der Sitzung des Besuchers; lassen Sie ihn eingeschaltet.
Formular-Builder für die Musteranfrage, Reiter Felder: links die Feldliste Name, E-Mail, Telefon, Menge und Nachricht, in der Mitte die Einstellungen des Felds E-Mail mit Feld-Key, Feldtyp E-Mail, Pflichtfeld, Beschriftung, Hinweistext, Eigene Fehlermeldung, Min. und Max. Zeichen und Platzhalter im Feld, rechts die Live-Vorschau des Formulars

Im Reiter „Felder“ wählen Sie links ein Feld, stellen es in der Mitte ein und sehen rechts sofort die Vorschau. Zum Vergrößern anklicken.

Feldtypen

FeldtypWofür
„Text“, „Textbereich“einzeilige bzw. mehrzeilige Eingabe, mit „Min. Zeichen“ und „Max. Zeichen“
„E-Mail“, „Telefon“Kontaktdaten. Das Feld „E-Mail“ prüft die Schreibweise.
„Zahlen“Mengen und Maße, mit „Minimum“, „Maximum“ und „Schrittweite“
„Dropdownauswahl“, „Mehrfachauswahl (Radio)“Auswahl aus Optionen. Jede Option hat einen Wert und je Sprache eine Beschriftung, eine lässt sich als „Standard“ vorwählen. Im „Textmodus“ tragen Sie viele Optionen zeilenweise ein.
„Schalter“Ja/Nein, als Pflichtfeld etwa für eine Bestätigung. Der „Hinweistext“ steht neben dem Schalter.
„Datum“Datum aus dem Kalender. Zuverlässig ab 4.10, in älteren Ständen nehmen Sie ein Textfeld.
„Farbe“Farbauswahl
„Datei-Upload“Dateien hochladen lassen, siehe Datei-Upload.ab 4.10

Bei Pflichtfeldern legen Sie unter „Eigene Fehlermeldung“ den Text fest, den der Kunde bei fehlender Eingabe sieht. Eigene Texte für jede Regel, etwa zu kurz oder zu groß, gibt es auch bei freiwilligen Feldern.ab 4.10

Das Ziel einer Einsendung

ZielWas passiert
„Nur sammeln (Posteingang)“Die Einsendung steht nur im Posteingang, niemand bekommt eine Mail.
„E-Mail versenden“Mail an die „Empfänger-E-Mail“. Ist sie leer, an die E-Mailadresse des Shopbetreibers.
„Ticket erstellen“Ticket im Ticketsystem, ohne Mail an Ihr Team. Vorgabe für neue Formulare.
„Ticket + E-Mail“Ticket und zusätzlich eine Mail an die Empfänger-E-Mail.

Jede Einsendung steht außerdem im Posteingang. Als Betreff dient „Betreff (E-Mail/Ticket)“, sonst der Titel des Formulars.

Formular-Builder, Reiter Einstellungen: Formular-Key musteranfrage (nach dem Anlegen nicht mehr änderbar), Ziel Ticket + E-Mail, Empfänger-E-Mail anfragen@example.com, darunter die deutschen Texte Titel, Einleitungstext, Erfolgsmeldung und Betreff (E-Mail/Ticket), rechts die Live-Vorschau

Im Reiter „Einstellungen“ legen Sie Key, Ziel, Empfänger und je Sprache die Texte des Formulars fest. Zum Vergrößern anklicken.

Damit Antworten beim Kunden ankommen: Legen Sie genau ein Feld vom Typ „E-Mail“ an. Seine Adresse wird Antwortadresse der Mail und Kundenadresse des Tickets. Bei mehreren E-Mail-Feldern nimmt der Shop das mit dem Feld-Key email. Ein Textfeld, dessen Feld-Key name enthält, liefert den Namen. Fehlt das E-Mail-Feld, steht Ihre eigene Adresse als Absender.

Formulare einbinden

Ein eigenes Formular erscheint im Shop, sobald Sie es in eine Seite einbinden. Die Shop-Formulare ergänzen Sie dagegen direkt um eigene Felder.

In eine CMS-Seite oder Kategorie

Schalten Sie im Inhalt der Seite den xoContentEditor ein, fügen Sie den Baustein „Formular / eingebettetes Formular“ hinzu und wählen Sie unter „Formular auswählen“ Ihr Formular. Das geht in CMS-Seiten (CMS → CMS-Manager) und in der Kategoriebeschreibung (Produkte → Kategorien / Produkte), siehe xoContentEditor.XONIC Premium: Content Editor

  • Binden Sie ein Formular nur einmal je Seite ein.
  • Kopieren Sie den Baustein nicht als HTML in ein normales Textfeld. Beim Speichern entfernt der Shop das nötige Skript, und das Formular bleibt bei „Formular wird geladen …“ stehen.
  • Die Auswahl zeigt nur aktive, eigenständige Formulare.

Shop-Formulare erweitern

In der Übersicht unter CMS → Formulare steht das Band „Integrationen“ mit „Kontaktformular“, „Produktanfrage“, „Preisanfrage“ und „Ticket-Formular“. Mit „Anlegen“ fügen Sie dem jeweiligen Shop-Formular eigene Felder hinzu, etwa eine Kundennummer oder eine Chargennummer.

Die Felder erscheinen im Shop-Formular. Versand, Ticket und Schutz gegen Spam übernimmt das Shop-Formular, deshalb ist das Ziel fest auf „Nur sammeln (Posteingang)“ gestellt. Die Angaben stehen im Ticket bzw. in der Mail und zusätzlich im Posteingang. Ausnahme: Beim Kontaktformular stehen die Zusatzfelder nur im Ticket und im Posteingang, nicht in der Mail.

Nach dem Update auf 4.10: Bevor Sie für ein eingebettetes Formular reCAPTCHA einschalten, speichern Sie die Seiten mit dem Formular-Baustein einmal neu. Alle Seiten auf einmal erneuern Sie unter CMS → Vorlagen-Manager (xoContentEditor), Reiter „Migration“, mit „Alle Inhalte neu rendern“.ab 4.10

Dateien hochladen lassen

Mit dem Feldtyp „Datei-Upload“ schicken Kunden Zeichnungen, Fotos oder Dokumente mit, etwa zu einer Sonderanfertigung.ab 4.10

Erlaubte Formate

Unter „Erlaubte Formate“ haken Sie Gruppen an. Mindestens eine Gruppe bleibt gewählt, neue Felder starten mit CAD-Zeichnungen und Dokumenten.

  • „CAD-Zeichnungen“: dxf, dwg, step, stp, iges, igs, stl
  • „Dokumente“: pdf, txt, csv, doc, docx, xls, xlsx
  • „Bilder“: jpg, jpeg, png, gif, webp
  • „Archive“: zip, 7z. Ab Werk aus, weil der Shop den Inhalt eines Archivs nicht prüfen kann.

Größe und Anzahl

Je Feld legen Sie „Max. Größe (MB)“ und „Max. Dateien“ fest, bis zu 10 Dateien. Für den ganzen Shop gilt Einstellungen → Datenschutz → Allgemein → Formular-Upload: maximale Dateigröße (MB), ab Werk 10.

Die Grenzen des Servers gelten zusätzlich. Sind sie kleiner, wirkt der kleinere Wert. Kann der Shop eine Datei nicht ablegen, bekommt der Kunde eine Fehlermeldung statt einer Bestätigung.

Zustellung als Link

Mail und Ticket enthalten einen Link auf jede Datei. Er öffnet die Datei im Backend, nur nach Anmeldung und mit Recht für die Formulare. Sind Sie nicht angemeldet, öffnet der Link nach der Anmeldung direkt die Datei. Im Ticket bleiben die Dateien Links, sie werden keine Ticket-Anhänge.

Zusätzlich als Anhang

„Dateien zusätzlich als Anhang senden“ steht unter „Empfänger-E-Mail“, wenn das Ziel „E-Mail versenden“ oder „Ticket + E-Mail“ ist und das Formular ein Datei-Feld hat. Ab Werk aus. Gedacht für Empfänger ohne Backend-Zugang. Die Mail geht nur an Sie, nie an den Kunden.

Alle Anhänge einer Einsendung zusammen dürfen Einstellungen → Datenschutz → Allgemein → Formular-Mail: maximale Größe der Anhänge (MB) nicht überschreiten, ab Werk 7. Größere Dateien bleiben Link. Lehnt Ihr Mailserver die Mail ab, schickt der Shop sie ohne Anhang mit einem Hinweis noch einmal. Erhöhen Sie den Wert erst, wenn Ihr Mailserver größere Mails annimmt.

Hochgeladene Dateien kommen von Fremden und werden nicht auf Schadsoftware geprüft. Öffnen Sie nur, was Sie erwarten.

Löschfrist

Nach Einstellungen → Datenschutz → Allgemein → Formular-Upload: Aufbewahrung (Tage), ab Werk 365, löscht der Shop hochgeladene Dateien bei einer Anmeldung im Backend. 0 schaltet das ab. Die Einsendung im Posteingang und der Einwilligungsnachweis bleiben. Löschen Sie eine Einsendung im Posteingang, löscht der Shop ihre Dateien mit.


Datenschutz-Haken und Einwilligungsnachweis

Ob Kunden einer Verarbeitung ihrer Angaben zustimmen müssen, legt Einstellungen → Datenschutz → Allgemein → Datenschutzeinwilligungen für allgemeine Formulare für alle Shop-Formulare gemeinsam fest.

WertIm FormularNachweis
opt-in (neue Shops)Ein Haken, den der Kunde setzen muss. Bis dahin ist der Absende-Knopf gesperrt.ja, Bestätigungs-Typ „Checkbox“
adviseEin Hinweis, dass der Kunde mit dem Absenden zustimmtja, Bestätigungs-Typ „Hinweis“
falsekein Hinweisnein

Die Einstellung gilt für Kontaktformular, Anfrage zum Artikel, Preisvorschlag, Angebot anfordern, Anfrage zum Warenkorb, Rückrufservice, Ticketformular und die Newsletter-Seite. Der Hinweistext verlinkt Ihre Datenschutzerklärung.

Der Nachweis

Vor dem Versand schreibt der Shop einen Eintrag unter Tools → Datenschutzmanagement: Art der Anfrage, etwa „Kontaktanfrage (E-Mail)“, Bestätigungs-Typ, Datum, IP-Adresse und Löschdatum nach zehn Jahren. Die E-Mail-Adresse speichert er nicht im Klartext, sondern als Prüfwert. Suchen Sie deshalb nach der vollständigen Adresse. Der Inhalt der Anfrage steht dort nicht.

Eigene Formulare

Eigene Formulare setzen den Datenschutz-Haken nach derselben Einstellung selbst und schreiben einen Nachweis „Formular-Einsendung (Formular-Builder)“. Ein bisher selbst angelegter Schalter für die Einwilligung ist dann überflüssig.ab 4.10

In älteren Ständen legen Sie dafür ein Feld „Schalter“ als Pflichtfeld an und schreiben die Einwilligung in den „Hinweistext“. Einen Nachweis im Datenschutzmanagement erzeugt dieser Schalter nicht.

Für die Weitergabe der E-Mail-Adresse an Versanddienstleister im Checkout gibt es eine eigene Einstellung, „Datenschutzeinwilligung Versand: Modus“. Mit inherit folgt sie der allgemeinen Einstellung, mit mandatory muss der Kunde Ja oder Nein wählen. Sie wirkt nur für die Versanddienstleister aus „Datenschutzeinwilligungen für Versanddienstleister“.


Spam eindämmen

Formular-Spam kommt meist von Programmen, die Formulare massenhaft ausfüllen. Gehen Sie die Maßnahmen von oben nach unten durch: Die ersten wirken am stärksten.

Was ab Werk wirkt

Die Shop-Formulare prüfen bei jedem Absenden, ob die Anfrage aus einer gültigen Sitzung kommt, ob ein für Menschen unsichtbares Feld ausgefüllt wurde und ob das Formular zu schnell abgeschickt wurde oder zu lange offen war. Diese Prüfung ist immer an, eine Einstellung dafür gibt es nicht. Ein Bilderrätsel zum Abtippen nutzt der Shop nicht.

  1. reCAPTCHA v3 einrichten. Google bewertet unsichtbar, ob ein Mensch absendet. Es schützt Kontaktformular, Rückrufservice, Anfrage zum Artikel, Preisvorschlag, Angebot anfordern, Anfrage zum Warenkorb, Newsletter, Verfügbarkeitsalarm, „Passwort vergessen“ und das Widerrufsformular. Anleitung unter reCAPTCHA v3.
  2. Nur angemeldete Kunden zulassen. Mit „Kontaktformular: Login erforderlich“ und den Login-Schaltern für Produkt- und Preisanfragen schreiben nur Kunden mit Konto, siehe Login erforderlich. Das hält Spam am sichersten ab. Gäste erreichen Sie dann über die E-Mail-Adresse in Ihrem Impressum.
  3. Tageslimit setzen. „Maximale Ticketanzahl pro Tag“ begrenzt Anfragen, die als Ticket ankommen.
  4. Nicht genutzte Formulare abschalten. Jedes Formular, das Sie nicht brauchen, ist ein Einfallstor weniger. Die Schalter stehen unter Die Formulare im Überblick.
  5. Spam-Filter des Angebotsformulars anlassen. „Angebot-Formular: Spam-Inhaltsfilter“ unter Einstellungen → Design → Produktdetailansicht lehnt typische Werbetexte in Namens-, Firmen- und Ortsfeldern ab. Ab Werk an.
  6. Eigene Formulare schützen. Im Formular-Builder steht im Reiter „Einstellungen“ der Bereich „Missbrauchsschutz“ mit „Köderfeld“ (ab Werk an), „reCAPTCHA v3“ (aus), „Mindest-Ausfüllzeit (Sekunden)“ (3) und „Einsendungen je IP und Stunde“ (10). Bei Erweiterungen der Shop-Formulare fehlt der Bereich, dort schützt das Shop-Formular.ab 4.10

„Passwort vergessen“

Das Formular ist ab Werk gebremst: Wiederholte Anfragen in kurzer Zeit beantwortet der Shop nicht mit einer neuen Mail. Die Antwort im Shop ist immer gleich, ob die Adresse ein Konto hat oder nicht. Mit reCAPTCHA prüft der Shop zusätzlich.

Spam über ein eingebettetes Formular

Ab 4.10 schalten Sie dafür den Missbrauchsschutz des Formulars ein. In älteren Ständen stellen Sie das Formular vorübergehend auf inaktiv oder sprechen uns an.

Anfragen, die ein Mensch von Hand schreibt, hält keine technische Prüfung auf. Gegen sie helfen die Login-Pflicht und das Tageslimit.

reCAPTCHA v3 einrichten

reCAPTCHA v3 ist ein Dienst von Google. Es zeigt kein Häkchen und kein Rätsel, sondern bewertet jedes Absenden mit einem Wert zwischen 0.0 (wahrscheinlich ein Programm) und 1.0 (wahrscheinlich ein Mensch).

  1. Bei Google unter google.com/recaptcha einen Schlüssel für reCAPTCHA v3 anlegen. Tragen Sie alle Domains ein, unter denen Ihr Shop erreichbar ist.
  2. Unter Einstellungen → Schnittstellen → Spam-Schutz → Google Recaptcha den „Google Recaptcha V3 SiteKey (Website-Schlüssel)“ und den „Google Recaptcha V3 SecretKey (Geheimer Schlüssel)“ eintragen. Erst wenn beide Felder gefüllt sind, prüft der Shop mit reCAPTCHA.
  3. „Mindest-Score der reCAPTCHA-Prüfung (0.0 bis 1.0)“ auf 0.5 lassen. Liegt die Bewertung darunter, lehnt der Shop das Absenden ab.ab 4.9.47
  4. Testen: Schicken Sie das Kontaktformular ab. reCAPTCHA prüft Gäste und angemeldete Kunden gleich, Sie können also auch mit Ihrem Kundenkonto testen.
Einstellungsgruppe Google Recaptcha unter Schnittstellen, Spam-Schutz: Informationstext, SiteKey und SecretKey mit Beispielwerten, Mindest-Score der reCAPTCHA-Prüfung 0.5 und daneben der geöffnete Hilfetext zum Mindest-Score

reCAPTCHA v3: Website-Schlüssel und geheimen Schlüssel eintragen, den Mindest-Score auf 0.5 lassen. Zum Vergrößern anklicken.

Wenn echte Kunden abgewiesen werden

Kunden sehen dann „Die reCAPTCHA-Überprüfung ist fehlgeschlagen. Bitte versuchen Sie es erneut.“ Prüfen Sie:

  • Schlüsseltyp: Ein Schlüssel für reCAPTCHA v2 („Ich bin kein Roboter“) funktioniert nicht. Legen Sie einen neuen für v3 an.
  • Neuer Schlüssel: Google lernt am Verkehr Ihres Shops. Ein frischer Schlüssel bewertet anfangs eher streng.
  • Formulare aus Mails: Wer ein Formular direkt über einen Link öffnet, etwa das Widerrufsformular aus der Bestellmail, bekommt oft niedrige Werte. Eine hohe Schwelle weist gerade diese Kunden ab.
  • Schwelle: Senken Sie den Mindest-Score schrittweise, etwa auf 0.4 oder 0.3.
  • Protokoll: Der Shop protokolliert jede abgewiesene Prüfung mit Grund und Wert. Unser Support liest daraus ab, ob Schlüssel oder Schwelle die Ursache ist.ab 4.9.47

Datenschutz

Nennen Sie reCAPTCHA in Ihrer Datenschutzerklärung. Ob Sie dafür zusätzlich eine Einwilligung einholen, klären Sie mit Ihrer Datenschutzberatung.

Der Shop lädt reCAPTCHA erst, wenn ein Besucher ein geschütztes Formular benutzt, also hineinklickt, darin tippt oder es absendet. Beim bloßen Aufruf der Seite lädt er es nicht.ab 4.9.144


Häufige Fragen

Wie schütze ich das Kontaktformular vor Spam?

Richten Sie zuerst reCAPTCHA v3 ein, siehe reCAPTCHA v3. Hilft das nicht genug, stellen Sie unter Einstellungen → Allgemein → Tickets & Aufgaben „Kontaktformular: Login erforderlich“ auf true. Dann schreiben nur angemeldete Kunden. Alle Maßnahmen in der richtigen Reihenfolge stehen unter Spam eindämmen.

Wie schütze ich Produktanfragen vor Spam?

Auch hier wirkt reCAPTCHA v3. Wollen Sie nur Anfragen angemeldeter Kunden, schalten Sie unter Einstellungen → Allgemein → Tickets & Aufgaben das Ticketsystem, „Produktanfragen als Ticket“ und „Produktanfrage: Login erforderlich“ ein. Für den Preisvorschlag gelten die entsprechenden Schalter „Preisanfragen als Ticket“ und „Preisanfrage: Login erforderlich“. Brauchen Sie den Preisvorschlag nicht, schalten Sie ihn ab.

Gibt es ein Captcha, das Kunden abtippen müssen?

Nein. Der Shop nutzt reCAPTCHA v3 von Google. Es arbeitet unsichtbar, ohne Häkchen und ohne Bilderrätsel. Dazu kommt die Prüfung, die ab Werk in allen Shop-Formularen läuft, siehe Spam eindämmen.

Wie richte ich reCAPTCHA v3 richtig ein?

Bei Google einen Schlüssel für reCAPTCHA v3 mit allen Domains Ihres Shops anlegen, Website-Schlüssel und geheimen Schlüssel unter Einstellungen → Schnittstellen → Spam-Schutz → Google Recaptcha eintragen und den Mindest-Score auf 0.5 lassen. Ein Schlüssel für reCAPTCHA v2 funktioniert nicht. Details unter reCAPTCHA v3.

Wie deaktiviere ich das Kontaktformular?

Mit Einstellungen → Allgemein → Grundeinstellungen → „Kontaktformular: Status“ = false. Wer die Kontaktseite aufruft, landet auf der Startseite. Entfernen Sie danach die Links auf die Kontaktseite, etwa im Footer. Wegen Spam reicht oft die Login-Pflicht, siehe Login erforderlich.

Wo stelle ich ein, an wen das Kontaktformular schickt?

Unter Einstellungen → Allgemein → Grundeinstellungen → „Daten für Kontaktseite“. Jede Zeile ist eine Abteilung mit eigener E-Mail-Adresse, wahlweise nur für eine Sprache. Ohne Einträge geht die Anfrage an die E-Mailadresse des Shopbetreibers.

Wie hinterlege ich einen Hinweistext im Kontaktformular?

Ein eigenes Feld dafür gibt es nicht. Ändern Sie die Texte des Formulars unter Tools → xoLanguage („Framework“ Frontend, „Sektion“ store-contact) als „eigener Wert“, oder ergänzen Sie das Kontaktformular unter CMS → Formulare um ein Feld mit „Hinweistext“. Der Kasten „Kontaktinformationen“ zeigt Ihre Shopadresse und Kontaktdaten aus den Grundeinstellungen. Details unter Kontaktformular.

Wohin wird die Produktanfrage gesendet?

Als E-Mail an „abweichende E-Mailadresse (Produktanfrage und Warenkorbanfrage)“ unter Einstellungen → Schnittstellen → E-Mail-Marketing / CRM → E-Mailoptionen. Ist sie leer, an die E-Mailadresse des Shopbetreibers. Wird die Anfrage ein Ticket, steht sie unter Tools → Tickets & Aufgaben, und die Benachrichtigung geht an dieselbe Adresse, ersatzweise an „Infomail Tickets“.

Wie stelle ich ein, ob Produktanfragen als Mail oder als Ticket ankommen?

Unter Einstellungen → Allgemein → Tickets & Aufgaben mit „Produktanfragen als Ticket“. Dazu muss „Ticketsystem an/aus“ eingeschaltet sein. Ein Ticket entsteht nur für angemeldete Kunden, Anfragen von Gästen kommen weiter als Mail. Für Kontaktformular und Preisvorschlag gibt es die gleichen Schalter.

Warum kommt eine Anfrage als Mail, obwohl „als Ticket“ eingestellt ist?

Weil der Kunde nicht angemeldet war. Tickets entstehen nur für Kunden mit Konto. Sollen alle Anfragen Tickets werden, schalten Sie zusätzlich die Login-Pflicht für das Formular ein.

Wo sehe ich Kontakt- und Warenkorbanfragen im Shop?

Kontaktanfragen, die als Ticket ankommen, stehen unter Tools → Tickets & Aufgaben. Alles, was als E-Mail verschickt wird, finden Sie im Postfach der Empfängeradresse. Warenkorbanfragen kommen immer als E-Mail, eine Liste im Backend gibt es dafür nicht. Einsendungen eigener Formulare stehen unter CMS → Formulare im Reiter „Posteingang“.

Ein Kunde meldet, dass das Formular nicht abgeht. Was prüfe ich?

Erscheint ein Hinweis zur Anmeldung, ist die Login-Pflicht an. Bei der Meldung zur reCAPTCHA-Überprüfung lesen Sie reCAPTCHA v3. Bleibt das Formular ohne Meldung stehen, lassen Sie den Kunden die Seite neu laden und erneut absenden. Hilft nichts davon, sprechen Sie uns an: Wir sehen in den Protokollen, warum das Absenden abgelehnt wurde.

Das automatische Ausfüllen des Browsers löst den Spam-Schutz nicht mehr aus. In älteren Ständen konnte es echte Kunden ohne Meldung abweisen.ab 4.9.144

Warum fehlen die Zusatzfelder des Kontaktformulars in der Mail?

Beim Kontaktformular übernimmt nur das Ticket die Zusatzfelder aus dem Formular-Builder. Kommt die Anfrage als Mail, finden Sie die Zusatzfelder unter CMS → Formulare im Reiter „Posteingang“. Bei Produktanfrage und Preisvorschlag stehen sie auch in der Mail.

Kann ich ein Formular bauen, in dem Kunden Dateien hochladen?

Ja, mit dem Feldtyp „Datei-Upload“ im Formular-Builder. Sie bestimmen erlaubte Formate, Größe und Anzahl. Die Dateien kommen als Link, auf Wunsch zusätzlich als Mailanhang, siehe Datei-Upload.ab 4.10

Bekommt der Kunde eine Bestätigung seiner Anfrage?

Kommt die Anfrage als Mail bei Ihnen an, bekommt der Kunde die Mail „Anfragebestätigung“ mit Ihrer Datenschutzerklärung als PDF. Wird sie ein Ticket, sieht er im Shop die Ticketnummer und findet das Ticket in seinem Kundenkonto. Eigene Formulare zeigen die „Erfolgsmeldung“ aus dem Formular-Builder.

Wie lange bleiben hochgeladene Dateien gespeichert?

So lange, wie Einstellungen → Datenschutz → Allgemein → „Formular-Upload: Aufbewahrung (Tage)“ vorgibt, ab Werk 365 Tage. Danach löscht der Shop die Dateien bei der nächsten Anmeldung im Backend. 0 schaltet das Löschen ab.ab 4.10

Weiterführende Leitfäden

Wir helfen beim Schutz Ihrer Formulare

Wir richten reCAPTCHA mit Ihnen ein, werten die Protokolle aus, wenn Kunden abgewiesen werden, und bauen mit Ihnen Formulare für Ihre Anfragen.

Jetzt Support kontaktieren