Alles, was Price Bulk Editor leistet – im Detail.
Aufgebaut auf vier Garantien: Sie sehen die Vorschau, bevor Sie bestätigen, Sie können jederzeit ein Rollback durchführen, Sie sehen den Fortschritt in Echtzeit und Ihre Filterregeln sind präzise genug, um genau das auszuschließen, was Sie benötigen.
Testlauf für jede Aufgabe, bevor Sie bestätigen.
Die häufigste Katastrophe bei Massenbearbeitungen ist die Ausführung einer Aufgabe, die mehr SKUs betrifft als erwartet. Der Testlauf zeigt das vollständige Ergebnis, ohne Shopify zu berühren: welche Produkte Ihrem Filter entsprechen, welche Varianten geändert würden, wie der neue Preis aussähe und welche Einträge die Validierung nicht bestehen würden.
- ✓ Side-by-side-Vergleich Alt → Neu pro Variante
- ✓ Validierungswarnungen (negativer Preis, fehlender compare-at usw.)
- ✓ SKU-Anzahl + Schätzung des gesamten Umsatzdeltas
- ✓ Als CSV exportierbar für die Freigabe durch Stakeholder
filter: tag=summer-sale AND vendor=Outdoor matched: 2,481 SKUs across 412 products action: −25% off compare-at, floor $9.99 variant was now Δ SUM-TEE-S $39.00 $29.25 −$9.75 SUM-TEE-M $39.00 $29.25 −$9.75 SUM-CAP-OS $24.00 $18.00 −$6.00 … 2,478 more rows WARNINGS (3): SUM-LEGGINGS-XL — would price below floor; skipped SUM-PACK-A — missing compare-at; skipped SUM-SOCKS-L — currently archived; skipped estimated revenue delta over 7 days: −$48,210
Every dry-run runs the same eight rule checks the executor runs at commit time — except no products get touched. Each warning carries a severity so you know what's catastrophic vs. just worth noticing.
- ● Price below cost. The new price is under the Shopify cost-per-item. Margin would turn negative.
- ● Price goes negative. The action produces a negative price. Hard reject.
- ● Sign error suspected. The median delta contradicts the action sign (e.g. you said "decrease" but the math goes up). Often a missing minus sign.
- ● Missing compare-at. You asked for percent off compare-at, but the variant has none. Skipped.
- ● Archived product. The product is archived on Shopify. Skipped — you probably didn't mean to discount it.
- ● Variant without cost. Margin pricing rule, but the variant has no cost on Shopify. Skipped.
- ● Price outlier. The new price is more than two standard deviations from the median. Worth a second look.
- ● Low inventory. The variant has fewer than five units in stock. Informational — you may not want to feature it.
- 2026-06-14 09:00 erstellt Snapshot mit 2.481 Varianten
- 2026-06-14 09:01 anwenden −25 % auf compare-at, 2.478 erfolgreich, 3 übersprungen
- 2026-06-21 23:59 Rollback Snapshot wiedergespielt, 2.478/2.478 wiederhergestellt
Snapshot-basiertes Rollback, das tatsächlich durchläuft.
Bevor eine Aufgabe ausgeführt wird, erfassen wir den vorherigen Preis und den Vergleichspreis (compare-at) jeder betroffenen Variante. Das Rollback spielt diesen Snapshot wieder ein – es handelt sich nicht um eine Rückrechnung über den umgekehrten Prozentsatz, der Rundungsfehler aufbauen und externe Änderungen während der Aktion nicht ausgleichen kann.
- ✓ Exakte Wiederherstellung pro Variante, inklusive compare-at
- ✓ Idempotent – sicher bei erneuten Versuchen, falls Shopify die Anfragen drosselt
- ✓ Wiederaufnehmbar, falls das Rollback unterbrochen wird
- ✓ Pro Markt unabhängig wiederhergestellte Snapshots
CSV-Import für beliebige Preise pro SKU.
Wenn die Preislogik keiner Regel folgt (Vertragspreise eines Großhändlers, einmalige Liquidationsliste aus der Finanzabteilung), laden Sie eine CSV mit Ihren SKUs und dem neuen absoluten Preis hoch. Der gleiche Testlauf- und Rollback-Ablauf gilt auch hier.
- ✓ Spalten:
sku(empfohlen) odervariant_id, plusnew_price. Optional:new_compare_at_price. - ✓ Bis zu 5.000 Zeilen pro Datei
- ✓ Validierung pro Zeile im Testlauf vor der Bestätigung
- ✓ Das Audit-Log bewahrt die ursprüngliche CSV auf
sku,new_price,new_compare_at_price SUM-TEE-S,29.25,39.00 SUM-TEE-M,29.25,39.00 SUM-CAP-OS,18.00,24.00 SUM-PACK-A,49.00,69.00 SUM-HOODIE-L,54.00, … up to 5,000 rows per file
Filter nach Tag, Kollektion und Attributen.
Filtern Sie den Katalog nach beliebigen Kombinationen aus Tag, Kollektion, Anbieter, Produkttyp, Preisspanne oder Lagerbestand. Variantenfilter ergänzen SKU-Muster und Optionswerte.
Produktebene
- tag = "summer-sale"
- collection ∈ "Outdoor", "Hiking"
- vendor != "Discontinued"
- price BETWEEN $20 AND $80
Variantenebene
- sku STARTS_WITH "SUM-"
- option.size IN "S", "M"
- inventory_quantity > 0
- compare_at IS NOT NULL
Ausschluss
- NOT tag = "new-arrival"
- NOT sku IN [Liste hochladen]
- NOT vendor = "Brand X"
- NOT product_type = "Gift Card"
Preise pro Markt für Shopify Markets.
Wenden Sie pro Markt einen anderen Preis, Prozentsatz oder eine andere Rundungsregel an. Setzen Sie absolute Preise für die USA, einen prozentualen Abschlag auf die EU-Basis und eine Rundungsregel auf ,95 für die Schweiz – alles in einer einzigen Aufgabe. Der vorherige Zustand jedes Marktes wird unabhängig im Snapshot gesichert.
| Markt | Regel | Rundung | Untergrenze |
|---|---|---|---|
| US | −25 % auf compare-at | .99 | $9.99 |
| EU | −20 % auf Basispreis | .00 | €10.00 |
| CH | Festpreis CHF | .95 | CHF 14.95 |
| UK | −25 % auf compare-at | .99 | £8.99 |
Wiederkehrende Regeln – einmal definieren, dauerhaft ausführen.
Flash Friday jede Woche, monatlicher Abverkauf am Ersten, automatisches Rollback zum Saisonende am 22. September. Jeder Lauf erstellt einen neuen Snapshot, sodass jede Wiederholung unabhängig per Rollback rückgängig gemacht werden kann.
Flash Friday um 09:00 Uhr MEZ
Jeden Freitag um 09:00 Uhr wird −20 % auf tag="flash-friday" angewendet. Automatisches Rollback um 23:59 Uhr am Sonntag. Rotiert mit den jeweils getaggten SKUs.
Monatsabschluss-Abverkauf
Am letzten Tag jedes Monats werden Preise auf Kostenpreis × 1,1 für Bestand älter als 90 Tage gesetzt. Rollback am darauffolgenden Montag.
Vollständige Historie jeder Änderung, als CSV exportierbar.
Jede Aktion – Aufgabe erstellt, Testlauf geprüft, Bestätigung, Rollback, Wiederholung ausgelöst – wird mit Benutzer, Zeitstempel, IP-Adresse und vollständigem Payload protokolliert. Filtern Sie nach Datum, Benutzer oder betroffener SKU; exportieren Sie als CSV für die Finanzabteilung, DSGVO-Auskunftsersuchen oder interne Audits.
Aufbewahrung: von 30 Tagen im Free-Tarif bis zu 5 Jahren im Scale-Tarif, je nach Plan.
2026-06-14T09:00Z marie@store.com task.create "Summer Sale 25%" 2026-06-14T09:00Z marie@store.com task.dry_run matched=2481 2026-06-14T09:01Z marie@store.com task.commit succeeded=2478 skipped=3 2026-06-14T09:18Z system task.complete duration=1041s 2026-06-21T23:59Z system task.rollback restored=2478 of 2478 2026-06-22T08:14Z cfo@store.com audit.export period=2026-06 format=csv
Margen- und kostenbasierte Preisgestaltung.
Setzen Sie den Preis als Kostenpreis × Multiplikator, zielen Sie auf eine feste Marge in Prozent oder wenden Sie gestaffelte Aufschläge je Preisspanne an. Kombinieren Sie das mit Rundungsregeln (immer ,99, immer ,95 usw.) und Mindestmargen-Untergrenzen.
- ✓ Kostenpreis aus Shopify Inventory cost-per-item übernehmen
- ✓ Untergrenze nach Mindestmarge (z. B. immer ≥ 40 %)
- ✓ Staffelung nach Preisspanne (Aufschlag 1,4× unter $20, 1,6× darüber)
| SKU | Kostenpreis | Regel | Neuer Preis | Marge |
|---|---|---|---|---|
| SUM-TEE-S | $11.20 | ×1.6 → .99 | $17.99 | 37.7% |
| SUM-CAP-OS | $5.40 | ×1.8 → .99 | $9.99 | 46.0% |
| SUM-PACK-A | $22.50 | ×1.4 → .99 | $31.99 | 29.7% |
| SUM-JKT-L | $48.00 | ×1.4, min 35% | $73.99 | 35.1% |
Catch the manual edit that broke your sale.
Once a campaign is live, anything else that touches a product price — a teammate fixing a typo, an inventory-sync app, a Shopify Flow rule — silently drifts the catalog away from the snapshot the rollback expects. We listen on the Shopify products/update webhook and surface every drift as an alert with the variant, the campaign, the price we wrote, and the price that's there now. Acknowledge it or roll it back; either way, no surprises when the sale ends.
- ✓ Webhook-driven — fires within seconds of the manual edit
- ✓ Idempotent per (variant, campaign, observed-price); Shopify retries can't dupe
- ✓ Inline list + nav banner counter, polled every 30 seconds
- ✓ Drift caught here keeps the rollback contract honest
We checked the App Store listings of seven direct competitors in May 2026. None advertise drift detection.
2026-06-15 14:22 variant SUM-TEE-S
campaign price $29.25 → observed $29.99
source: products/update webhook
status: NEW [acknowledge]
2026-06-15 16:08 variant SUM-CAP-OS
campaign price $18.00 → observed $24.00
source: products/update webhook
status: NEW [acknowledge]
2026-06-16 09:41 variant SUM-PACK-A
campaign price $49.00 → observed $52.00
source: products/update webhook
status: ACKNOWLEDGED
by: marie@store.com on 2026-06-16 10:02
Your campaigns don't get stuck. Guaranteed.
Most "my BFCM is frozen" support tickets in this category have the same root cause: the worker chain that drives a bulk operation lost a message, a deploy interrupted mid-run, or Shopify's bulk API briefly hiccupped. We run three independent recovery layers so the operator never sees a campaign stuck in RUNNING for hours without a path forward.
Status-progress recovery
The progress-polling handler self-heals during normal operation — if Shopify shows a bulk operation we don't know about (or vice versa) it reconciles before the merchant ever notices.
Stuck-message scanner
A cron sweep finds tasks that are READY past run_at, RUNNING with no progress, or fully applied but still mid-flight; either resets a stuck Messenger row for redelivery or re-dispatches the right TaskMessage. No Shopify API calls — fast and cheap.
Shopify reconciliation
When the cheap fixes fail, an hourly cron asks Shopify directly: "what's the real status of bulk operation X?" Shopify's answer wins; our local state conforms to it. Orphans get marked, completions get acknowledged, failures get surfaced with the Shopify error code.
The three layers were ported from a sister BigCommerce app where they've run in production for two years. Every recovery decision lands in the audit log so support can reconstruct what happened later.
Stuck campaigns are the #1 complaint cited in reviews of competing apps. We made it the failure mode we engineer against, not the one we apologize for.
Probieren Sie den Workflow an Ihrem eigenen Katalog aus.
Installieren Sie die App kostenlos auf Shopify, führen Sie einen Testlauf gegen Ihren Store durch und entscheiden Sie anschließend. Der Free-Tarif erlaubt 100 SKU-Änderungen pro Monat – genug, um die App zu testen, bevor Sie zahlen.
Free-Tarif · keine Kreditkarte nötig · 5 Tage Testphase auf Growth und Scale · 30 % sparen bei jährlicher Abrechnung