Automatisierter E-Commerce-Feed mit Zoho Creator API für Google Merchant

  • Beitrags-Autor:

Vom Manuellen Chaos zum Automatisierten E-Commerce-Feed: Dein Guide mit Zoho und externen APIs

Wenn du ein E-Commerce-Unternehmen betreibst oder Produkte mit vielen Varianten herstellst, kennst du die Herausforderung: Produktdaten müssen gepflegt, aktuell gehalten und an verschiedene Kanäle wie das Google Merchant Center, Social-Media-Plattformen oder Marktplätze verteilt werden. Oft geschieht dies über manuelle Exporte, Excel-Tabellen und mühsame Uploads. Dieser Prozess ist nicht nur zeitaufwändig, sondern auch extrem fehleranfällig. Ein falscher Link, ein fehlendes Attribut, und schon werden deine Produkte abgelehnt und deine Kampagnen laufen ins Leere. Genau hier setzen wir an und zeigen dir, wie du mit einer cleveren Kombination aus Zoho-Anwendungen und APIs eine robuste, automatisierte Lösung aufbaust, die dir Zeit spart und Fehler minimiert.

Das Praxisbeispiel: Ein Hersteller individualisierbarer Produkte

Stell dir einen mittelständischen Hersteller vor, der hochwertige, konfigurierbare Produkte anbietet – zum Beispiel Gürtel nach Maß, Möbel mit verschiedenen Stoffen oder technische Geräte mit optionalen Komponenten. Die Produktdaten werden zwar in einem zentralen System verwaltet, aber für Marketing-Kanäle wie Google Shopping wird ein komplizierter Prozess durchlaufen:

  • Ein Mitarbeiter exportiert die Produktdaten aus dem System in eine CSV- oder Excel-Datei.
  • Neue Produkte oder Varianten, die über einen Online-Konfigurator erstellt werden, müssen manuell in diese Tabelle eingetragen werden.
  • In der Tabelle werden dann kanalspezifische Anpassungen vorgenommen (z.B. für den „product_type“ bei Google).
  • Diese manuell bearbeitete Datei wird anschließend in das Google Merchant Center hochgeladen.

Die Probleme sind vorprogrammiert: Falsch kopierte Bild-URLs führen zu abgelehnten Bildern. Fehlende Pflichtattribute wie der Produkttyp verhindern die Listung. Der gesamte Prozess ist langsam und skaliert nicht. Das Ziel ist klar: Wir benötigen eine „Single Source of Truth“ und einen automatisierten Weg, um diese Daten an externe Systeme zu verteilen.

Schritt-für-Schritt: Deinen automatisierten Produkt-Feed mit Zoho aufbauen

Wir lösen dieses Problem, indem wir die Produktdaten zentral in Zoho verwalten und über eine Custom Function und eine API einen dynamischen Feed generieren, den sich externe Dienste wie das Google Merchant Center selbstständig und regelmäßig abholen können.

Schritt 1: Die Grundlage – Deine Produktdaten zentralisieren

Der erste und wichtigste Schritt ist die Schaffung einer zentralen Datenquelle. Anstatt Excel-Tabellen zu pflegen, nutzt du eine robuste Zoho-Anwendung als dein Produktinformationsmanagement-System (PIM).

  • Für Standardprodukte: Wenn du mit Standardartikeln und festen Varianten arbeitest, ist Zoho Inventory die ideale Wahl. Hier verwaltest du Lagerbestände, Preise, Artikelbilder und alle relevanten Attribute an einem Ort.
  • Für hochgradig konfigurierbare Produkte: Wenn du einen komplexen Produktkonfigurator benötigst (wie im Beispiel der Gürtel), ist Zoho Creator das Werkzeug der Wahl. Du kannst eine eigene Anwendung bauen, die exakt deine Produktlogik abbildet – mit allen Optionen, Abhängigkeiten und Preisregeln. Diese Creator-App wird deine „Single Source of Truth“.

Unabhängig von der Wahl ist es entscheidend, dass alle für den Feed relevanten Datenfelder hier gepflegt werden: Produktname, Beschreibung, Preis, Verfügbarkeit, Bild-URL, GTIN/MPN und spezifische Attribute wie `product_type`.

Schritt 2: Die Logik – Daten mit einer Deluge Custom Function transformieren

Jetzt kommt die Magie ins Spiel. Wir schreiben eine Funktion in Deluge, der Skriptsprache von Zoho. Diese Funktion holt sich die Daten aus Zoho Inventory oder deiner Zoho Creator App und formatiert sie genau so, wie Google es erwartet (in diesem Fall als Tab-separated Values – TSV).

Diese Funktion kannst du direkt in Zoho CRM oder Zoho Creator erstellen. Sie würde im Kern Folgendes tun:

  1. Eine Kopfzeile für die TSV-Datei definieren (id, title, description, link, image_link, …).
  2. Alle aktiven und für den Verkauf bestimmten Produkte aus der Datenquelle abrufen.
  3. Durch jedes Produkt iterieren und eine Zeile für die TSV-Datei erstellen.
  4. Dabei sicherstellen, dass alle Felder korrekt formatiert sind. Besonders wichtig ist die „image_link“-Spalte: Hier muss ein direkter Link zu einer Bilddatei (.jpg, .png) stehen, keine URL zu einer Produktseite.
  5. Alle Zeilen zu einem einzigen String zusammenfügen.

Hier ist ein vereinfachtes Beispiel einer solchen Deluge-Funktion in Zoho Creator:


// Deluge Custom Function, um einen Google Merchant Feed zu erstellen
// Angenommen, du hast in Creator eine App "Produktkatalog" mit dem Formular "Produkte"

string generateGoogleMerchantFeed()
{
	// 1. Definiere die Spaltenüberschriften für den Feed
	header = "idttitletdescriptiontlinktimage_linktavailabilitytpricetgoogle_product_categorytproduct_typetbrandtgtin";
	
	// 2. Initialisiere den Feed-Inhalt mit der Kopfzeile
	feedContent = header + "n";
	
	// 3. Hole alle Produkte, die im Shop sichtbar sein sollen
	// Wir filtern nach einem Feld "Im_Feed_anzeigen"
	products_response = zoho.creator.getRecords("dein_account_name", "produktkatalog", "Alle_Produkte", "Im_Feed_anzeigen == true", 1, 200, "zoho_creator");

	if(products_response.get("code") == 3000)
	{
		// 4. Iteriere durch jedes Produkt und baue die Zeile für den Feed
		for each  product in products_response.get("data")
		{
			// Bereinige die Beschreibung von Tabs und Zeilenumbrüchen
			clean_description = product.get("Beschreibung").replaceAll("n"," ").replaceAll("t"," ");
			
			// Baue die Zeile für das aktuelle Produkt zusammen
			// Achte auf die Tabulatoren (t) als Trennzeichen
			row = product.get("SKU") + "t" + 
				  product.get("Produktname") + "t" + 
				  clean_description + "t" + 
				  product.get("Produkt_URL") + "t" + 
				  product.get("Bild_URL") + "t" + 
				  "in stock" + "t" + // Oder logik für 'out of stock'
				  product.get("Preis") + " EUR" + "t" + 
				  "123" + "t" + // Beispiel für Google Product Category ID
				  product.get("Produkt_Typ") + "t" + // Dieses Feld hat im Praxisbeispiel gefehlt!
				  "Deine Marke" + "t" +
				  product.get("GTIN");
				  
			// Füge die Zeile zum Feed hinzu
			feedContent = feedContent + row + "n";
		}
	}
	
	// 5. Gib den fertigen Feed als Text zurück
	return feedContent;
}

Schritt 3: Die Verbindung – Den Feed über eine API bereitstellen

Die Funktion allein nützt uns wenig. Wir müssen sie von außen aufrufbar machen. Zoho Creator bietet hierfür eine einfache Möglichkeit: Du kannst eine Funktion als REST-API-Endpunkt veröffentlichen. Mit einem Klick generierst du eine eindeutige URL. Jeder, der diese URL aufruft, führt die Funktion aus und erhält den generierten Feed als Antwort zurück.

Diese URL ist dein heiliger Gral. Sie ist der direkte Draht von deinen Live-Produktdaten zur Außenwelt.

Schritt 4: Die Automation – Geplanter Abruf im Google Merchant Center

Der letzte Schritt findet außerhalb von Zoho statt. Logge dich in dein Google Merchant Center ein:

  1. Gehe zu Produkte > Feeds.
  2. Erstelle einen neuen Primärfeed.
  3. Wähle als Eingabemethode „Geplanter Abruf“.
  4. Gib einen Dateinamen an (z.B. „zoho_product_feed.tsv“).
  5. Füge die API-URL aus Schritt 3 in das Feld „Datei-URL“ ein.
  6. Lege einen Abrufzeitplan fest (z.B. täglich um 3:00 Uhr morgens).

Das war’s! Google wird nun jeden Tag automatisch deine Zoho API aufrufen, den frisch generierten Feed abholen und deine Produkte aktualisieren. Du musst nie wieder eine Datei manuell hochladen.

Tipps, Best Practices und erweiterte Integrationen

Jetzt, wo die Grundlage steht, kannst du das System weiter ausbauen und optimieren.

  • Fehler-Monitoring: Richte in Zoho Cliq einen Channel ein und sende eine Benachrichtigung von deiner Deluge-Funktion, wenn der Feed erfolgreich generiert wurde – oder noch wichtiger, wenn ein Fehler aufgetreten ist.
  • Skalierbarkeit für andere Kanäle: Dieselbe API-URL kannst du auch für andere Plattformen nutzen, die einen Feed-Import per URL unterstützen, z.B. für Facebook/Meta Produktkataloge oder für Pinterest. Du kannst deine Deluge-Funktion sogar so erweitern, dass sie je nach übergebenem Parameter das Format leicht anpasst (z.B. andere Spaltennamen).
  • Umgang mit komplexen Prozessen: Der im Praxisbeispiel erwähnte Prozess „Ledermuster vor Bezahlung“ lässt sich ebenfalls abbilden. Ein Kunde könnte über ein Zoho Form ein Muster anfordern. Dies erstellt einen Lead/Deal in Zoho CRM und einen Auftrag im Versandsystem. Nach Freigabe durch den Kunden wird der Deal konvertiert und die Zahlung über eine Integration mit Zoho Checkout oder externen Anbietern wie Stripe abgewickelt.
  • Datenanalyse: Verbinde dein Google Ads-Konto und dein Zoho CRM mit Zoho Analytics. So siehst du nicht nur, welche Kampagnen Klicks generieren, sondern auch, welche davon tatsächlich zu zahlenden Kunden und echtem Umsatz führen.
  • Migrationen und Projekte planen: Ein großer strategischer Wechsel, wie der Umzug von einer alten Plattform (z.B. Magento) zu einer modernen wie Shopify, ist ein komplexes Projekt. Nutze Zoho Projects, um alle Aufgaben, Meilensteine und Verantwortlichkeiten zu planen und den Überblick zu behalten. Deine zentrale Produktdatenbank in Zoho macht dich dabei unabhängig von der jeweiligen Shop-Plattform.

Fazit: Strategischer Vorteil durch Automatisierung

Die Umstellung von einem manuellen, fehleranfälligen Prozess auf einen automatisierten, API-gesteuerten Produkt-Feed ist mehr als nur eine technische Spielerei. Es ist eine strategische Entscheidung, die dein Unternehmen agiler, effizienter und skalierbarer macht. Du eliminierst eine Hauptfehlerquelle, stellst sicher, dass deine Marketingkanäle immer mit aktuellen Daten versorgt werden, und schaffst Freiräume, um dich auf das Wesentliche zu konzentrieren: dein Produkt und deine Kunden.

Durch die intelligente Verknüpfung von Zoho-Apps schaffst du ein robustes Ökosystem, das mit deinem Unternehmen wächst und sich flexibel an neue Anforderungen anpassen lässt.


Verwendete Zoho Apps in diesem Szenario: