Migration guide

Gambio, OXID and xt:Commerce to Shopify

How we move Gambio, xt:Commerce, modified and OXID shops to Shopify: variants and attributes, gross prices and VAT, German legal setup, the redirect map, and a fixed price from $2,500 over six to eight weeks.

Every migration includes the storefront, the apps and your back-office systems, not just the data. Pixel-perfect, a facelift or a complete redesign?

Gambio, OXID and xt:Commerce to Shopify: one family of German shop systems, one careful move

Gambio, xt:Commerce, modified eCommerce and OXID eShop have run a large share of German, Austrian and Swiss online shops for two decades. Three of them share a common ancestor in xt:Commerce 3, itself a fork of osCommerce; OXID is a separate codebase from Freiburg. This guide covers how we handle a Gambio to Shopify migration and the equivalent move from each of its relatives, including the parts that matter most in the DACH market: gross prices, VAT, legal texts and German carriers and payment methods.

Why stores leave Gambio, xt:Commerce, modified and OXID

  • Forced version jumps. Gambio released GX5 in September 2025 and announced the end of support for 4.8 and 4.9 from January 2026. xt:Commerce 6 and OXID 7 each required real upgrade projects from their predecessors, and many xt:Commerce 3 descendants still run on code from the osCommerce era.
  • Legal changes land on you. The German Accessibility Enhancement Act (BFSG) has applied since June 28, 2025, and the EU electronic withdrawal function applies from June 19, 2026. On a self-hosted shop, each change means a module, a template edit or an upgrade.
  • Modules and templates. These shops depend on paid modules and customized templates, and one module that is not updated can hold back the whole shop.
  • Licensing and ownership. OXID’s Community Edition moved from free commercial use to a paid license in August 2022, and OXID eSales AG is majority owned by the investment firm Marondo Capital. That is not a problem in itself, but it changes the cost picture for small OXID shops.
  • A small developer pool. Specialists for Gambio, modified and OXID exist, but mostly in the DACH region. Shopify’s app and developer ecosystem is far larger.

To be fair, all four systems are built for the German market and handle its legal details well out of the box. Shopify handles them too, but with configuration, apps and your own legal texts, which is why the legal section below matters.

What migrates from Gambio, xt:Commerce, modified and OXID to Shopify

All four are PHP and MySQL systems. Gambio has REST APIs (v2, and v3 since GX 4.1.1.0) and a CSV import and export; OXID and xt:Commerce 4 to 6 have their own export options; modified and older xt:Commerce 3 shops are usually read straight from the database. With database access, no entity is limited to what the export screens offer.

DataSource on Gambio, xt:Commerce, modified or OXIDMoves to Shopify?
Products with article numbers, names, descriptions, prices, stock, weights, images, meta dataProducts tables on all four; OXID oxarticlesYes. Article numbers become SKUs. Net prices are converted to gross where needed (see below).
VariantsGambio properties and combinations; xt:Commerce 4 to 6 master and slave products; OXID parent and child articlesYes, as Shopify variants with their own SKU, price and stock.
Attributes and selection lists with surchargesosCommerce-style attributes on Gambio, modified and xt:Commerce 3; OXID selection listsPartly. Real choices become variants; paid extras become add-on products through an options app.
CategoriesCategory tables with product linksYes, as collections, with the tree carried into menus.
Customers, addresses, customer groupsCustomer and address book tables; OXID oxuserYes. Groups become tags or B2B companies with catalogs. Newsletter consent comes across where it was recorded.
Group and tiered pricesGroup price tables (xt:Commerce 3 family), OXID price and scale fieldsYes, as B2B catalogs and quantity rules, or as discounts.
PasswordsStored as hashesNo. Customers set a new password or use Shopify’s passwordless sign-in.
Orders with line items, totals, VAT, shipping, status historyOrder, order product and order total tables; OXID oxorder and oxorderarticlesYes. Real orders with original numbers, dates, VAT lines and refunds.
Tracking numbersTracking modules or carrier plugin tablesYes, as fulfillments with carrier and tracking number, wherever the shop stored them.
Reviews, content pages, coupons, vouchersReview and content tables, coupon and gift voucher tablesReviews into Judge.me, pages into Shopify pages, coupons as discounts, voucher balances as gift cards.
Templates, modules, legal textsTemplate files, module settingsNo. The theme is rebuilt, modules are mapped to apps, and legal texts are replaced by your current versions.

SEO URLs and redirects

Each system has its own patterns, and most shops have changed settings over the years:

  • xt:Commerce 3 and modified use parameter URLs such as /product_info.php?info=p123_product-name.html and /index.php?cat=c12_category-name.html. Built-in search engine friendly URLs and modules such as Direct URL or Clean SEO URL produce paths like /category/product-name.html.
  • Gambio without SEO Boost serves /product_info.php?info=p3_product-name.html and /?cat=c1_category-name. With SEO Boost it serves /product-name.html, or /category/subcategory/product-name.html when short product URLs are off, category paths like /category/subcategory, and language folders like /en/.
  • xt:Commerce 4 to 6 use dynamic URLs such as /index.php?page=product&info=4564 and language-prefixed SEO paths such as /de/category/product-name.html.
  • OXID maps /index.php?cl=details&anid=… to speaking URLs such as /category/product-name.html, with manufacturer paths and a language prefix for every language except the default.

Shopify uses /products/handle and /collections/handle. We build the map from the database, keyed on product and category IDs, so the p123 and c12 forms resolve even when the name part is wrong. On OXID we add the old URLs from the oxseohistory table, and on every system we add what Search Console still reports. Umlauts are checked in both encoded and transliterated forms. Every redirect is tested before launch.

Tools

Cart2Cart, a partner of ours, lists Gambio, OXID eShop, xt:Commerce and modified eCommerce as sources, and LitExtension lists Gambio and OXID eShop. Both are fine for a first pass on products and customers. Their limits are the same as everywhere: tracking numbers do not come across, refunded orders tend to land as plain paid orders, and redirects are built from guessed slugs. We finish those parts ourselves, reading the database directly for variants, group prices, VAT lines and the old URLs, and reconciling every count against the source tables.

How we run it

  1. Audit. System and version, hosted or self-hosted, modules, variant model, customer groups, URL settings, languages, markets, carriers, payment providers and legal texts. The result is a fixed-price scope.
  2. Build in a free Shopify development store. As a Shopify Plus Partner we build in development stores, so you pay Shopify nothing until launch. Theme, taxes, Markets, payments, shipping and legal pages are set up here.
  3. Catalog. Products, variants, attributes, gross prices, unit prices, collections, images and SEO fields.
  4. Customers. Addresses, groups, VAT IDs for business customers and consent.
  5. Orders. Line items, VAT, shipping, transactions, refunds and fulfillments under original numbers and dates.
  6. Redirects. Every parameter URL, SEO path and language folder, tested one by one.
  7. Sample, then full import. A sample of each entity for your sign-off, including canceled, refunded and business orders, then the full run, reconciled against the source tables.
  8. Cutover. DNS moves to Shopify and a delta sync brings across orders and customers created since the full run.
  9. Post-launch SEO evaluation. Once Google has re-crawled the store and the first real analytics are in, we review coverage, 404s, rankings and conversion, and fix what we find.

Cost and timeline

A migration from any of these systems starts from $2,500 for stores under 500 products and 5,000 orders ($3,500 for larger stores), and typically takes six to eight weeks for smaller stores. B2B price structures, OXID Enterprise multi-shop installs, several markets and integrations such as an ERP or JTL-Wawi are quoted as a fixed price after the audit. Terms are 50% to begin and 50% once the store is live and you are fully satisfied with the figures.

Gambio

Gambio grew out of xt:Commerce 3, which came from osCommerce, and the lineage still shows in its tables. GX4 and the current GX5 run either in the hosted Gambio Cloud, where Gambio manages the server, or self-hosted on your own server. In both cases we need a database export or API access, which Cloud shops arrange through Gambio. Gambio has two variant models: attributes, the older osCommerce-style options with price surcharges, and properties with combinations, where each combination (size M in red, for example) has its own article number, stock, price and weight. Combinations map cleanly to Shopify variants; attributes need the sorting described in the table. Many shops use both on the same product, and we map them together.

xt:Commerce

There are really two xt:Commerce products. xt:Commerce 3 is the GPL osCommerce fork from the 2000s, no longer offered by the vendor but still running in many shops and the parent of Gambio and modified. xt:Commerce 4, 5 and 6 (4 was released as Veyton) are a separate, rewritten system with a plugin architecture, multi-shop support and master and slave products, where each slave is a full article with its own number and price. The vendor, xt:Commerce GmbH, still maintains version 6 and shipped 6.7.1 with the withdrawal function; Cart2Cart also lists a hosted xt:Commerce NEXT. Master and slave groups become one Shopify product with variants. HHG multistore, an xt:Commerce offshoot built for running several shops from one admin, is a legacy platform we migrate the same way as the xt:Commerce 3 family, one store or market at a time.

modified eCommerce

modified eCommerce (formerly xtcModified) is the community fork of xt:Commerce 3 and is still actively developed: the 3.x line began with 3.0.0 in November 2023, and 3.3.0 followed in January 2026, while many shops still run 2.x. Because it kept the xt:Commerce 3 schema, extraction is the most predictable of the four. The work is usually in the modules: SEO URL add-ons, legal text services and payment modules, each of which needs a Shopify equivalent.

OXID eShop

OXID eShop comes in Community, Professional and Enterprise editions, with a B2B variant of Enterprise. Version 6 shops are still common; the 7.x line runs through 7.5.0, released in May 2026. OXID variants are child articles of a parent article, each with its own number, price, stock and images, and map directly to Shopify variants. Selection lists are dropdowns that can carry an absolute or percentage surcharge without being stock items, so we treat them like attributes. The Enterprise mall function runs several subshops from one installation; each subshop becomes a Shopify market or a separate store, decided in the audit.

The shared xt:Commerce 3 schema

Gambio, modified, xt:Commerce 3 and HHG multistore share osCommerce-style tables: products, products_description per language, products_attributes with products_options and products_options_values, categories with products_to_categories, customers with address_book, and orders with orders_products, orders_total and orders_status_history. That makes extraction predictable: the same queries work across the family, with adjustments for each fork’s additions such as Gambio’s properties tables. The order totals table deserves care, because it holds the VAT, shipping, discount and payment fee lines that must add up to the original invoice.

Gross prices, VAT and Markets for DACH

The xt:Commerce 3 family stores product prices net with a tax class and shows gross prices to consumers, and OXID has a setting for whether prices are entered net or gross. Shopify stores the price you display, so for a store that includes tax in prices we convert each net price to gross and check the result against the price the old shop showed, cent for cent, because rounding differs. On Shopify we set up EU taxes, including a One Stop Shop (OSS) registration if you have one, and use Shopify Markets for Germany, Austria and Switzerland with their own languages, currencies and domains. Switzerland is outside the EU, so its VAT and customs setup is a question for your tax advisor, and we implement the answer.

German legal requirements on Shopify

We do not give legal advice. Your lawyer or a legal-text service provides the texts; we put them in the right places. That means an Impressum, Widerrufsbelehrung, AGB and Datenschutzerklärung as store policies and pages, linked from the footer and the checkout; a GDPR cookie consent app configured to block tracking until consent; a final checkout button whose wording makes the payment obligation clear, such as “zahlungspflichtig bestellen”, set through the checkout language settings; unit prices (Grundpreis), which Shopify supports natively for EU stores; delivery time notices on product pages; the lowest price of the last 30 days on reductions; and the electronic withdrawal function required since June 19, 2026, through Shopify’s return and cancellation settings or an app.

Carriers and payment methods

DHL shipping runs through the official Post and DHL Shipping app, and DPD, Hermes, GLS and others through multi-carrier apps such as shipcloud or Sendcloud, with tracking numbers flowing back to Shopify. Shopify Payments in Germany covers cards, wallets and Klarna, including pay later by invoice. PayPal connects directly, and SEPA direct debit, where you need it, comes through a third-party payment provider that we confirm in the audit.

What you get at handover

A reconciliation ledger from the source tables to the live Shopify counts for products, variants, customers, orders and fulfillments, with every exclusion named; a price check showing net, converted gross and Shopify prices; the redirect verification list with each status code; the variant and attribute mapping; a checklist of legal pages and settings for your lawyer to review; and a recorded walkthrough of the Shopify admin.

Questions we settle in the survey

  • Which system and version do you run, hosted or self-hosted, and can we get database access?
  • Do you use attributes, properties, master and slave products or selection lists?
  • Are prices kept net or gross, and do you sell to business customers with group prices?
  • Which countries and languages do you sell in, and do you have an OSS registration?
  • Which legal-text service or lawyer provides your texts?
  • Do you need live carrier rates at checkout? Third-party carrier-calculated shipping needs Advanced or Plus, or Grow on annual billing, so it decides the plan.

Frequently asked questions

Can we keep our Gambio order history on Shopify?

Yes. Orders import as real Shopify orders with original numbers, dates, line items, VAT lines, shipping and refunds, and tracking numbers come across as fulfillments where the shop stored them. The same applies to xt:Commerce, modified and OXID.

What happens to Gambio properties and attributes?

Property combinations become Shopify variants with their own article number, price and stock. Attributes with surcharges become variants when they are real choices, or add-on products through an options app when they are paid extras. OXID selection lists are handled the same way.

Will our old shop URLs keep their rankings?

We redirect every parameter URL, SEO path and language folder to the matching Shopify page, keyed on product and category IDs, add old OXID URLs from the SEO history, and test each redirect before launch.

What does a Gambio to Shopify migration cost?

From 2,500 dollars for stores under 500 products and 5,000 orders (3,500 dollars for larger stores), typically over six to eight weeks for smaller stores. B2B pricing, multi-shop installs and integrations are a fixed price after the audit. Terms are half to begin and half once the store is live and you are fully satisfied with the figures.

Start with the migration survey. For other German-market platforms, see the Shopware guide and the ePages guide.

More than the data

A Gambio, OXID and xt:Commerce migration is four jobs. We do all four.

Getting the records out of Gambio, OXID and xt:Commerce is the part software can do on its own, so it is the part most providers sell. The storefront your customers see, the apps that run the store and the systems behind it are the rest of the work, and where a data-only migration hands the problem back to you. All four are in scope here.

01 · Data

Everything the old store knows

Products, variants, option pricing, customers, the full order history with refunds and tracking, reviews, content and redirects. Reconciled to the cent.

  • Sample first
  • Reconciled
  • Audited
02 · Storefront

The front end, designed and built

Rebuilt exactly as it is, given a facelift, or redesigned completely. Quoted inside the migration, not as a second project.

  • Pixel-perfect
  • Facelift
  • Redesign
03 · Apps

Every app accounted for

Reviews, search, subscriptions, loyalty, bundles, email. Matched to a Shopify equivalent, dropped where the platform now does it, or rebuilt as a custom app.

  • Klaviyo
  • Reviews
  • Subscriptions
  • Custom apps
04 · Systems

The back office keeps working

ERP, CRM, PIM, 3PL, POS, accounting and EDI, reconnected and tested before cutover. Nobody rekeys orders on launch day.

  • ERP
  • CRM
  • 3PL
  • POS
  • EDI

The first question we ask

Pixel-perfect, a facelift, or a complete redesign?

Your storefront does not have to come across unchanged, and it does not have to be thrown away either. We quote whichever route you pick inside the migration.

Route 01

Pixel-perfect

Indistinguishable from the old store, down to the spacing, but rebuilt on a current Shopify theme so it is faster and maintainable underneath.

  • Same look
  • New foundations
Route 02

A facelift

The same structure, better executed: typography, spacing, color, photography, product pages and navigation. The shape your customers know stays put.

  • Keeps the map
  • Modern build
Route 03

A complete redesign

A new storefront, designed as a prototype you click through before a line of Liquid is written, then built on Horizon.

  • Prototype first
  • Horizon
  • Upgradeable

Included with every migration

After go-live, we audit the store again.

A Gambio, OXID and xt:Commerce to Shopify migration is not finished when the data lands. Every migration we deliver includes an SEO and growth evaluation once Google has re-crawled the new store and the first real analytics exist: how it is indexed, where it ranks and who outranks it, a technical tag audit, speed, product copy, and quick wins in the order to do them. Here is one we delivered, based on a real engagement.

Ready when you are.

Tell us about your store in ten minutes. We come back within one business day with an honest assessment, a recommended track and a fixed price.