Ungültiger Zahlenwert in Attribut: unit pricing measure

Guten Tag, ich versuche verzweifelt den Produkt Stream für das Google Merchant Center einzurichten. Ich habe da mittlerweile an die 100 Sachen ausgetestet und komme einfach nicht weiter. Mittlerweile habe ich es auf 1-2 Fehlermeldungen reduzieren können, aber vielleicht ist auch mehr „kaputt“.
Die verbliebene Fehlermeldung laut Google klingt wie folgt:
„Ungültiger Zahlenwert in Attribut: unit pricing measure“

So sehen meine Einstellungen in Shopware 5 aus:
UTF-8
TXT mit Pipe als Trennzeichen
Dateiname:google_all_products2.txt
Währung: EUR
Varianten exportieren: Ja

Kopfzeile:
{strip}
id{#S#}
custom_label_0{#S#}
titel{#S#}
beschreibung{#S#}
link{#S#}
bild_url{#S#}
ean{#S#}
gewicht{#S#}
marke{#S#}
mpn{#S#}
zustand{#S#}
produktart{#S#}
google_product_category{#S#}
preis{#S#}
Maß_für_Grundpreis{#S#}
Inhalt{#S#}
versand{#S#}
standort{#S#}
währung{#S#}
availability
{/strip}{#L#}

Template:
{strip}
{$sArticle.ordernumber|escape}{#S#}
{$sArticle.attr20|trim|strip|truncate:500:"…":true}{#S#}
{$sArticle.name|strip_tags|strip|truncate:80:"…":true|escape|htmlentities}{#S#}
{$sArticle.description_long|strip_tags|html_entity_decode|trim|regex_replace:"#[^\wöäüÖÄÜß.%&-+ ]#i":""|strip|truncate:500:"…":true|htmlentities|escape}{#S#}
{$sArticle.articleID|link:$sArticle.name|escape}{#S#}
{$sArticle.image|image:1}{#S#}
{$sArticle.ean|escape}{#S#}
{if $sArticle.weight}{$sArticle.weight|escape:„number“}{" kg"}{/if}{#S#}
{$sArticle.supplier|escape}{#S#}
{$sArticle.suppliernumber|escape}{#S#}
Neu{#S#}
{$sArticle.articleID|category:" > "|escape}{#S#}
{assign var=category value=$sArticle|cbaxGetCategoryAttribute:$sSettings}{$category.cbax_google_category_path|escape}{#S#}
{$sArticle.price|escape:number}{#S#}
{if $sArticle.referenceunit && $sArticle.purchaseunit}{assign var=„sArticleReferenceprice“ value=$sArticle.price/$sArticle.purchaseunit*$sArticle.referenceunit}{$sArticle.referenceunit}{$sArticle.unit}={$sArticleReferenceprice|escape:„number“}{#S#}
{$sArticle.purchaseunit}{$sArticle.unit}{#S#}
{else}
{#S#}{#S#}
{/if}
DE::DPD:{$sArticle|@shippingcost:„prepayment“:„de“}{#S#}
{#S#}
{$sCurrency.currency}{#S#}
„{if $sArticle.instock>0}in stock
{elseif $sArticle.releasedate && $sArticle.releasedate|strtotime > $smarty.now}preorder
{elseif $sArticle.shippingtime}in stock
{else}out of stock{/if}“
{/strip}{#L#}

Fusszeile:
Da steht nichts.

So sieht der Export von einem Artikel aus, inkl. Kopfzeile:

id|custom_label_0|titel|beschreibung|link|bild_url|ean|gewicht|marke|mpn|zustand|produktart|google_product_category|preis|Maß_für_Grundpreis|Inhalt|versand|standort|währung|availability

BL22UBKP2||Nachfülltinte für Brother LC-22UBK, BT6000BK black|Diese Tinten für Brother LC22 U BK BT6000 BK Druckerpatronen wurden mit ganz neuer Formel im Labor der Octopus Fluids GmbH & Co. KG speziell für die genannten Patronentypen entwickelt. Für folgende Drucker entwickelt Brother InkBenefit MFCJ985DW Brother InkBenefit DCPT300 DCPT500W DCPT700W und evtl. weitere. Siehe Registerkarte kompatibel zu Spezielle Entwicklung des Tintenherstellers Octopus Fluids GmbH & Co. KG für Brother LC22 U BK BT6000 BK. Octopus Fluids Tinten sind Premiumtinten. Sie s…|https://www.octopus-office.de/shop/de/nachfuelltinte/nachfuelltinte-brother/brother-lc-22u-bt6000-bt5000/169/nachfuelltinte-fuer-brother-lc-22ubk-bt6000bk-black?sPartner=googleshopping-de-all|https://www.octopus-office.de/shop/media/image/c8/4c/44/nachflltinte-brother-InkBenefit-LC-22UBKBT5000BK-schwarz_600x600.jpg|4250797275518|0,28 kg|Octopus Fluids GmbH & Co. KG|BL22UBKP2|Neu|Nachfülltinte > Nachfülltinte Brother > Brother LC-22U, BT6000, BT5000|Elektronik > Drucken, Kopieren, Scannen & Faxen > Zubehör für Drucker, Kopierer & Faxgeräte > Drucker-Verbrauchsmaterial|23,97|100mL=9,59|250mL|DE::DPD:4.95||EUR|„in stock“

Was mache ich falsch? Ich bin leider völlig überfordert. Würde mich sehr über Hilfe freuen.
Grüße aus Dresden
Chriss

{if $sArticle.referenceunit && $sArticle.purchaseunit}
{$sArticle.purchaseunit} {$sArticle.unit}{#S#}
{$sArticle.referenceunit} {$sArticle.unit}{#S#}
{else}
{#S#}{#S#}
{/if}

Das funktioniert! Dann sieht die Ausgabe so aus:
50 ml|100 ml

So wird es von Google erwartet: die Menge des Produkts und die Grundeinheit auf die man sich bezieht (das können auch l, 100 g, kg, m² sein). Den konkreten Grundpreis errechnet Google dann selbst. Die Grundeinheiten und die Menge müssen dann aber auch korrekt beim Artikel hinterlegt und eingestellt sein.

100mL=9,59 ist definitiv Quatsch, auch wenn ich das schon oft gesehen habe. Funktioniert halt nicht.

1 Like

Ich bedanke mich sehr bei deiner Antwort. Das hat ausgezeichnet geklappt. Ich habe wirklich, und das meine ich nicht übertrieben, EWIG nach einer Lösung gesucht. Vielen Dank!

Die einzigen Produkte (300 von 2,490) die noch fehlerhaft sind, sind jene, die pro „Stückzahl“ verkauft werden. Hast du da noch einen Tipp für mich?
Stückzahl

Hallo,
für Stück muss laut Preisangabenverordnung kein Grundpreis angegeben werden. Ich würde es auch lassen und nicht mehr angeben als gesetzlich gefordert wird. Das ist eine Fehlerquelle weniger.
Ansonsten: wie lauten denn die Fehlermeldungen Googles für diese Artikel?

Danke für deine schnelle Antwort. Die Fehlermeldung zeigt erneut an, dass eine Einheit fehlt, diesmal betrifft es, zumindestens nach 15 Produkten die ich kontrolliert habe, nur noch „Stück“ Produkte. Wie kann ich diese aus der Grundpreisangabe entfernen?

Hallo,
arbeitest Du mit JTL? Bei diesen Artikeln muss wohl das Kreuz für Grundpreis ausweisen weg. Dann muss man in Shopware kontrollieren, dass da auch keine Angaben mehr stehen.
Oder andersrum. Google akzeptiert Stück als Mengenangabe (unit_pricing_measure [Maß_für_Grundpreis]: Definition - Google Merchant Center-Hilfe), dann muss aber überall auch Stück eingetragen sein und die Gesamtmenge.
Das muss man entweder von Hand kontrollieren oder sich die betreffenden Artikel mit dem Import/Export-Tool runterladen und die csv bearbeiten.