Fahrzeuganfragen (Leads) mit dem Catch CRM von prof4.net verarbeiten

Das Catch CRM von www.prof4.net bietet die Möglichkeit Anfragen, sogenannte Leads, von der Website zu empfangen und zu verarbeiten. Was Sie dafür machen müssen, lesen Sie in diesem Artikel. Mehr über das Lead-Management vom Catch CRM von prof4.net finden Sie hier.

Anpassung des Anfragemail-Templates

Die Anfragen aus der TYPO3-Fahrzeugsuche werden direkt an eine Mailadresse verschickt, welche mit dem Catch CRM verknüpft ist. Damit die Software nun weiß was Sie mit der erhaltenen E-Mail machen muss, vergeben wir einen entsprechende Betreff im Anfragemail-Template. Dieser muss CATCH LEADS XML API sein. Optional können Sie laut Dokumentation auch CRM Anfrage Webseite oder CRM lead integration request verwenden.

Diese Einstellung können Sie über den TypoScript Konstanten Editor durchführen:

plugin.tx_fahrzeugsuche.settings.request.email.subject = CATCH LEADS XML API
themes.configuration.extension.fahrzeugsuche.request.email.subject = CATCH LEADS XML API

Die Fahrzeug- und Anfrage-Daten werden über den E-Mailtext übergeben, wofür einfach eine XML-Struktur eingefügt wird. Das Fluid-Template für die Anfragemail liegt unter fahrzeugsuche/Resources/Private/Templates/Email/Request.html und kann ebenfalls über eine TypoScript-Konstante zugewiesen werden.

#themes.configuration.extension.fahrzeugsuche.request.email.template = EXT:fahrzeugsuche/Resources/Private/Templates/Email/Request.html
themes.configuration.extension.fahrzeugsuche.request.email.template = fileadmin/fahrzeugsuche/TemplatesCatchCrm/Request.html

Das Standard Fluid-Template für diese Mail sieht wie folgt aus:

<f:translate key="tx_fahrzeugsuche_label.fahrzeug_request_mail_introduction" extensionName="Fahrzeugsuche" />
<f:for each="{data}" as="row" key="key">{row.label}: {row.value}
</f:for>
<f:translate key="tx_fahrzeugsuche_label.fahrzeug_request_mail_signature" extensionName="Fahrzeugsuche" />

Das Template erhält die folgenden Daten per Fluid-Variablen:

  • settings - hierin sind alle Variablen und Einstellungen enthalten, die in der TypoScript-Settings (plugin.tx_fahrzeugsuche.settings) der Fahrzeugsuche definiert sind.
  • data - hierin sind alle Daten aus dem Formular enthalten - also die Kundeninformationen.
  • fahrzeug - hierin ist der komplette Fahrzeug-Datensatz enthalten.

Generell bietet das Lead-XML folgende Felder:

<?xml version="1.0" encoding="UTF-8"?>
<lead>
    <vehicle>
        <internalId>2G1F91EXXXXX1600</internalId>
        <make>Marke</make>
        <model>Typ Modell</model>
        <firstRegistration>mm/YYYY</firstRegistration>
        <mileage>1000</mileage>
        <price>35490</price>
        <conditionType>new</conditionType>
        <type>PKW</type>
        <vin>XYZABCDEFGHIJKL</vin>
    </vehicle>
    <potentialBuyer>
        <company/>
        <salutation>Herr</salutation>
        <title/>
        <firstname>Theo</firstname>
        <lastname>Test</lastname>
        <street>Musterstr. 2a</street>
        <zip>48145</zip>
        <city>Musterstadt</city>
        <email>theo(at)test(dot)de</email>
        <additionalData>Zusatzinformation1: Text1&#13; Zusatzinformation2: Text2&#xD;
        </additionalData>
        <phone>
            <internationalPrefix>49</internationalPrefix>
            <prefix>0123</prefix>
            <number>456789</number>
        </phone>
        <message>Sehr geehrte Damen und Herren,&#13; &#13; können Sie mir bei dem Fahrzeug
        einen Händlerpreis machen?&#xD; &#xD; Hat der Wagen Werksgarantie in Deutschland?
        &#xD; &#xD; Mit freundlichen Grüßen&#xD; &#xD; Theo Test&#xD;
        </message>
        <add_fields>
            <field><key>Zusatzfeld 1</key><value>Text1</value></field>
            <field><key>Zusatzfeld 2</key><value>Text2</value></field>
            <field><key>Zusatzfeld 3</key><value>Text3</value></field>
        </add_fields>
    </potentialBuyer>
    <subject>Probefahrtanfrage</subject>
    <crm_dealercode/>
    <crm_dealerid/>
    <dms_dealercode/>
    <locationString/>
    <campaign_name/>
    <lead_source/>
    <lead_source2/>
    <lead_type/>
    <lead_channel/>
    <marketing_campaign/>
    <files>
        <filename>name_of_file_in_utf8_1.pdf</filename>
        <filename>name_of_file_in_utf8_2.pdf</filename>
    </files>
</lead>

Ein Template-Inhalt könnte somit wie folgt aussehen:

<?xml version="1.0" encoding="UTF-8"?>
<lead>
    <vehicle>
        <internalId>{fahrzeug.sellerInventoryKey}</internalId>
        <make>{fahrzeug.vehicle.make}</make>
        <model>{fahrzeug.vehicle.model}</model>
        <firstRegistration>{fahrzeug.vehicle.specifics.firstRegistration}</firstRegistration>
        <mileage>{fahrzeug.vehicle.specifics.mileage}</mileage>
        <price>{fahrzeug.price.consumerPriceAmount}</price>
        <conditionType>{fahrzeug.vehicle.specifics.condition}</conditionType>
        <type>{fahrzeug.vehicle.class}</type>
        <vin>{fahrzeug.vehicle.specifics.identificationNumber}</vin>
    </vehicle>
    <potentialBuyer>
        <salutation>{data.gender.value}</salutation>
        <firstname>{data.firstname.value}</firstname>
        <lastname>{data.lastname.value}</lastname>
        <email>{data.email.value}</email>
        <phone>
        <f:switch expression="{f:count(subject: data.phone.valueParts)}">
        <f:case value="2">
            <internationalPrefix>49</internationalPrefix>
            <prefix>{data.phone.valueParts.0}</prefix>
            <number>{data.phone.valueParts.1}</number>
        </f:case>
        <f:case value="3">
            <internationalPrefix>{data.phone.valueParts.0}</internationalPrefix>
            <prefix>{data.phone.valueParts.1}</prefix>
            <number>{data.phone.valueParts.2}</number>
        </f:case>
        <f:defaultCase>
            <internationalPrefix></internationalPrefix>
            <prefix></prefix>
            <number>{data.phone.value}</number>
        </f:defaultCase>
        </f:switch>
        </phone>
        <message>{data.message.valueNewlinesPrepared -> f:format.raw()}</message>
    </potentialBuyer>
    <subject>Fahrzeuganfrage: {fahrzeug.sellerInventoryKey}, {fahrzeug.vehicle.make}, {fahrzeug.vehicle.model}</subject>
    <crm_dealercode/>
    <crm_dealerid/>
    <dms_dealercode/>
    <locationString/>
    <campaign_name/>
    <lead_source>HOMEPAGE</lead_source>
</lead>