Staging Manager

Staging plugin for Shopware 6 Your staging environment. No shell.

The plugin copies your live shop as a test system: files and database, under your-shop.example/stage1, under a domain of its own or via SFTP on a second server. Customer data is anonymized, emails are caught and a password page keeps strangers out. Everything happens in the administration, and the live shop is only read.

Free in the Shopware Store Try it in the demo shop

How to set it up See six examples

Install it for free and build your first staging environment.

  • No shellCreate, build, refresh and tear down with a click in the administration. No SSH, no export, no import.
  • Live shop only readOnly the staging folder, the symlink, the plugin's own tables and the anonymization record are written to.
  • Customer data anonymizedNames, addresses, emails and phone numbers are replaced while copying.
  • No test email to customersBy default every email stays in the mail archive of the staging environment.
The problem

A test environment by hand is tinkering every single time.

Before every update, every new plugin and every theme change you need a copy of the shop. The usual ways there have four catches.

  • Copying with a shell

    Copy files, export and import the database, adjust the .env, rewrite domains. With server access, every single time.

  • Real customer data in the test

    Names, addresses and orders sit in a system that is less protected than the live shop.

  • The copy talks to the outside

    Customers get test emails, apps and webhooks pass on test orders, scheduled tasks keep running.

  • Large shops time out

    An export runs into the time limit, and nobody knows where it was.

How it works

Six steps, all in the administration.

From creating to cleaning up. The run window shows every step with its progress; close it and the build carries on.

  1. CreateWith the assistant in seven steps or with the empty form: name, database, data, plugins, protection.
  2. PreflightChecks PHP, the database and the rights of its user, web server, free space and the shop's services. If something is missing, it says what to do.
  3. BuildCopies files and database, anonymizes personal data, sets up the copy and checks it itself at the end.
  4. Test and share"Show credentials" gives address, password and default user, for your agency for instance.
  5. Keep it current"Refresh data" fetches only the database again, "Rebuild" the files as well. A schedule does it by itself.
  6. Clean up"Tear down staging environment" deletes files and database contents. Only what carries this staging environment's marker is deleted.

What exactly gets copied

The copy

What the copy does differently from the live shop.

After copying, the plugin sets up the staging environment. All of this applies only in the copy; the live shop stays as it is.

  • Shopware's staging mode with a banner in storefront and administration, robots.txt shuts out search engines.
  • Password page in front of storefront, administration or both, IP addresses without a password if you like.
  • Emails end up in the staging environment's mail archive instead of with the customer.
  • Apps and webhooks are separated from the live shop, their calls blocked and logged.
  • Scheduled tasks and Google Analytics are off.
  • Admin users' API keys and sessions are deleted, a default user is added if you want one.
  • Payment providers and plugins with a connection of their own keep their credentials from the live shop; set up the sandbox or switch the plugin off in the copy.

Protection and access

Anonymization

Real orders, made-up names.

A test system without orders is no use for many tests: invoices, returns, reports, the sync with the ERP. So the plugin keeps the orders and replaces whatever identifies a person while copying.

  • A shipped rule set for customers, addresses, orders, newsletter recipients, reviews and individual promotion codes.
  • Methods such as first name, last name, email address, phone number, shift date, fixed value or clear, set per column.
  • The preview shows on real rows of your shop what becomes of them. Every run with anonymization leaves a record.
  • Customer passwords are emptied; you get into a customer account with "Log in as customer".

How the anonymization works

Inside the staging environment

What the copy catches, it shows you.

Open the administration of the staging environment and the dashboard there shows the copy itself: how many emails it caught, which calls it blocked and whether its self-test passes.

Emails
"Send nothing", "Everything to one catch-all address", "Only to released addresses" or "As the live shop".
Calls
"Block and log", "Let through and log" or "As the live shop".
Self-test
Seven checks from inside: marker, staging mode of Shopware, staging variable, database connection, mail delivery, search engines shut out and the live shop's cache.

Emails and calls

Differences

What has changed since the copy?

After two weeks nobody would know any more how test environment and live shop differ. The comparison only reads both and shows the changes with the side they happened on.

  • Extensions and settings: which plugin in which version, which configuration.
  • Contents: records by type, with the changed fields.
  • Files and database structure.
  • For every finding the side: in the staging environment, in the live shop or on both.

Differences to the live shop

Shopware standard

What Shopware does itself, and what comes on top.

Shopware ships a console command that switches a finished copy into staging mode. The copy itself is not part of it.

TaskShopware standardStaging plugin
Copy the shop's filesNot included, by hand with a shell or FTP.In the administration, without .git, node_modules and backups; cache, logs and queue start empty.
Staging mode with bannerYes, with bin/console system:setup:staging in the finished copy.Yes, the plugin sets Shopware's staging mode while setting up.
Customer data in the copyStay as they are in the live shop.Anonymized by rule set, adjustable per column, with preview and record.
Access protectionNot included.Password page in front of storefront and administration, IP addresses without a password, direct link from the live shop.

The full comparison

Hosting

Runs where your shop runs.

The staging environment lives on the server of the live shop, in a subdirectory through a symlink in the web root or under a domain of its own, or via SFTP on a second server. For nginx the plugin shows the finished location block.

Hosting and server

  • Apache
  • nginx
  • MySQL
  • MariaDB
  • Redis
  • Elasticsearch
  • OpenSearch
  • Varnish

In the live shop, writes go only to the staging folder, a symlink in the web root for a subdirectory, the plugin's own tables and the anonymization record. Never touched: vHost, DNS, certificates and PHP settings of the server.

Examples

What shop owners build a staging environment for.

  • The Shopware update

    The update in the copy first, in maintenance mode if you like, and only then in the live shop.

  • Testing a new plugin

    Set up a new plugin or theme calmly; the comparison shows what you have to repeat live.

  • Access for the agency

    Address, password and an admin login of its own, only for the copy and only until the agreed date.

  • The daily copy

    A schedule refreshes the data every night; in the morning you test with the state of the day before.

  • Testing an interface

    Block and log calls from apps and webhooks first, then let them through on purpose.

  • Documents with real orders

    Design invoices and delivery notes on real, anonymized orders.

At a glance

Does the plugin fit your shop?

Fits if

  • your shop's files sit on one web server, be it a server of your own or web space.
  • you want to test before updates, new plugins or a theme change without touching the live shop.
  • you need test systems with real processes but without real customer data.
  • your agency should get access, only to the copy and only until a date.

Does not fit if

  • your shop runs on several web servers behind a load balancer.
  • your shop reads from read replicas of the database.
  • changes from the copy are supposed to go back into the live shop by themselves.
Pricing

What the plugin costs.

Free costs nothing and does not expire. Starter, Business and Enterprise are booked as in-app purchases in the Shopware Store, monthly or yearly; paying yearly costs ten monthly rates.

  • Free

    To try it out: one staging environment, built once, fully protected.

    Freedoes not expire

    Staging environments
    1
    Builds and refreshes
    1

    Included

    • Staging environment in a subdirectory or under an address of its own
    • Preflight and final check
    • Anonymization with rule set and preview
    • Password page, approved IP addresses and maintenance mode
    • Mails into the mail archive, calls to the outside blocked
    • Services, plugins and admin users per staging environment
  • Starter

    For small merchants: one staging environment, rebuilt or refreshed as often as needed.

    €149 a yearequals €12.42 a month

    €14.90 a monthbilled monthly

    Staging environments
    1
    Builds and refreshes
    unlimited

    Everything from Free, plus:

    • Rebuild and refresh data as often as you like
  • Business Recommended

    For most merchants: several staging environments, schedule and comparison with the live shop.

    €249 a yearequals €20.75 a month

    €24.90 a monthbilled monthly

    Staging environments
    3
    Builds and refreshes
    unlimited

    Everything from Starter, plus:

    • Schedule
    • Lifetime with an expiry date
    • Comparison with the live shop
  • Enterprise

    For agencies and large teams: any number of staging environments, say one per project or release.

    €399 a yearequals €33.25 a month

    €39.90 a monthbilled monthly

    Staging environments
    unlimited
    Builds and refreshes
    unlimited

    Everything from Business, plus:

    • Second server via SFTP
    • Unlimited staging environments

All prices plus VAT.

All plans in detail

Common questions

What shop owners want to know first.

Do I need a plugin for a staging environment in Shopware?

Shopware itself switches an existing copy into staging mode with bin/console system:setup:staging: banner, mail lock, rewritten domains. Copying files, filling a second database, writing the .env, anonymizing customer data and protecting the copy with a password are not part of it - you do that by hand with server access. The Staging Manager plugin does all of it in the administration.

Can I test a Shopware update safely?

Yes. Build a staging environment, switch on Shopware's maintenance mode there if you like, and install the update in the copy first. The live shop is only read while the copy is being built.

Do customers get emails from the staging environment?

Not by default. Every email stays in the mail archive of the staging environment. You can send them to a catch-all address, only to released addresses or, if you choose so, to the real recipients.

What happens to customer data?

A shipped rule set replaces names, addresses, email addresses and phone numbers of customers, orders, newsletter recipients and reviews while copying. Orders stay complete and testable, customer passwords are emptied. Every rule can be changed per column, with a preview on real rows of your shop. Documents already generated, such as invoices, are PDF files and arrive in the copy as they are; admin users also stay as they are.

Do I need a shell, SSH or server access?

No. Creating, building, refreshing and tearing down all happen in the administration. Files and database are copied in PHP, in small repeatable steps. For automation there are schedules and console commands as well.

Is the live shop changed?

No. The plugin only reads the live shop. It writes only in its staging folder next to the shop, a symlink in the web root for an environment in a subdirectory and its own tables. The database, .env and .htaccess of the live shop stay untouched.

Does it work with nginx?

Yes. For nginx, each staging environment in a subdirectory needs its own location block in the server block of the live shop. The plugin does not change any nginx configuration; it shows the finished block on the card "Reachability".

Are my plugins licensed in the staging environment?

Yes. Plugins from the Shopware Store are licensed to the domain of the shop. By default the staging environment lies in a subdirectory of the same domain, such as your-shop.example/stage1, so every plugin in the copy is licensed correctly.

Can I give my agency access?

Yes. "Show credentials" gives address, password and a default user that exists only in the staging environment. With a lifetime the staging environment locks itself on the agreed date.

How large may my shop be?

A build works in small slices, each with a time budget, and every slice can be repeated. The run window may be closed; an interrupted run continues where it stopped. The preflight checks the free space before the first byte is written.

What happens to scheduled tasks, apps and webhooks?

Scheduled tasks are off in the staging environment by default. Shop id and apps with an app server are separated from the live shop, and calls through Shopware's app and webhook clients are blocked and logged - or let through and logged, if you want that.

Where does the staging environment live?

On the server of the live shop, in a folder of its own and with a database of its own: under your-shop.example/stage1 or under a domain of its own. It reaches a second server via SFTP.

What does the plugin cost?

Installing it is free, including one staging environment and one build. The further plans are booked as in-app purchases in the Shopware Store; the pricing section below lists what each of them contains.

You build your first staging environment today.

Install, open the assistant, read the preflight, build. The live shop is only read along the way.

Free in the Shopware Store Try it in the demo shop