Product import
Bulk-create and update products, variants, prices and media.
// Growth · Data
Custom import and export for Shopware in any CSV, XML or JSON format — mapped to your fields, validated and scheduled.
// What you get
Bulk-create and update products, variants, prices and media.
Read supplier and manufacturer feeds in their format, automatically.
Keep stock and prices current from ERP or supplier data.
Export orders to ERP, fulfilment or accounting in the right format.
Map any source columns to Shopware fields, with transformations.
Bad rows caught and logged so imports never corrupt your catalogue.
// Why it matters
Standard importers rarely match real supplier feeds and custom formats. Codewerk Solutions builds tailored import and export for Shopware — reading any CSV, XML or JSON, mapping it to your fields with the transformations you need, validating every row, and running on a schedule. Bad data is caught before it reaches your live catalogue.
The result is a hands-off data pipeline between your suppliers, ERP and shop — saving hours of manual work every week and keeping your catalogue accurate.
// In detail
What we actually do under the hood — so you can judge the work, not just the promise.
Imports run as queued jobs, not as a cron script that 'usually works'. Each row becomes a message, a worker processes it, failures retry with backoff, and every job is idempotent so a re-run updates instead of duplicating. CSV, XML, JSON, EDI and direct database or API sources are all supported.
One API request per product turns a 100,000-item import into a 28-hour job. We use bulk payloads in batches of 50–200 (measured on staging with your data), and defer reindexing to the end so the import does not become an outage.
Validation before writing: required fields, data types, price sanity checks and duplicate detection. A malformed row is rejected with a readable error, not silently written as a €0.00 product. Every run is logged so you can answer why article 4711 did not arrive.
// Process
Validated, queued, idempotent — and re-runnable without fear.
What the source actually contains — not what the documentation claims.
Every target field gets one source of truth. Ambiguities resolved in writing.
Types, required fields, price sanity and duplicates checked before a single write.
Full run on staging against a production copy. Errors reported per row, readably.
Batched writes via the sync API, reindexing deferred to the end.
Scheduled runs with alerting on failure — and on absence, which is the dangerous one.
// FAQ
Yes — via its API, a database view, or a file drop, depending on what your ERP offers. We build a middleware service that owns the mapping, the retries and the audit log so the shop and the ERP never disagree.
Nothing bad. Failed messages retry, a poison message goes to a dead-letter queue instead of blocking everything, and because jobs are idempotent you can safely re-run the whole import.
From nightly to near real-time. Stock and prices usually run every few minutes via events; the full catalogue runs nightly. We alert on a missing run, because a silent import that stopped three weeks ago is worse than one that fails loudly.
Send a short brief — we reply within one business day.