Your transition from the old Shopware 6 plugin to the new one

With the new version of our Shopware 6 plugin, we offer you even better performance and enhanced features. The migration process is partially automated via a modal and takes only a few minutes.
In this guide, we’ll walk you through, step by step, how to switch from your current integration to the new plugin.

Important note: 
The old connection will be automatically disconnected as soon as you click in the migration modal automatic transfer option to Apply settings . If you choose manual configuration Set Up Manually , automatic deactivation will not occur.

Limitations in the current version

  • Changing sync data: Would you like to adjust settings such as recipient data or data field mapping later? Disconnect the connection to your CleverReach account via the plugin settings page and repeat the setup process.

  • Segment Creation: Automatic segment creation is not currently supported

  • Blocklist Import: The option to exclude certain customers from the transfer is also not yet implemented.

  • Offline Mode: Automatic detection when the linked group has been deleted in CleverReach has not yet been integrated. Therefore, please do not manually delete the linked recipient list in CleverReach.

Additional requirements and requests are already on our internal list. If you would like specific or new features, please feel free to use the feedback survey directly in the plugin.

The Most Important Differences at a Glance

Section New in the updated interface
Performance & Architecture Completely redesigned for better performance and more stable synchronization
Order History Data for the last 12 months (default), adjustable up to 24 months
Forms Use of the new CleverReach form module. Old forms are no longer supported.
Languages Plugin interface available in German, English, and Dutch
Permissions & Role Model Fine-grained permission assignment via Shopware’s permissions management (see section below)
.htaccess validation mechanism The plugin automatically detects whether password protection is in place and displays the necessary next steps

Prerequisites & Preparation

To ensure that the migration and subsequent synchronization run smoothly, please make sure the following points are taken care of in advance:

Shopware Version: The new Shopware 6 integration is available starting with Version 6.6 (versions 6.6 and 6.7 are supported)

PHP version: Your server requires PHP 8.2 or higher.

Existing connection: The old CleverReach plugin is installed, active, and successfully connected to your CleverReach account.

Password protection (.htaccess / Basic Auth):

If your store (e.g., a test or staging environment) is protected by password protection, the API endpoints must be allowed by CleverReach. To do this, add the following two API routes from the .htaccess authentication (whitelisting):

/api/crsw-on-prem-CleverReach/webhook/receiver
/api/crsw-on-prem -CleverReach/webhook/abandonedCart

(Without this whitelisting, the import will fail and synchronization will hang).

Step 1: Install the new plugin

  1. Log in to your Shopware account and navigate to Extensions > Store.
  2. Search for the new CleverReach plugin and click Install Extension.

Step 2: Open the migration modal & start the data transfer

  1. Click on the menu item My Extensions. Here, both the old and the new CleverReach plugins are now listed. Activate the new plugin using the slider. 

  2. In the menu, click Marketing and select the new CleverReach plugin.
  3. As soon as you open the new plugin for the first time, the system automatically detects the existing connection. A window (modal) appears with two options:

    Automatic Import (Recommended): The plugin imports the already linked recipient list directly from the old plugin.

    Important technical note: In addition, during this step, the connection between the old plugin and CleverReach is automatically disconnected, and the plugin is automatically deactivated in the Shopware extensions. This is a security mechanism designed to:

    • Prevent duplicate synchronizations.

    • Preserve your store's performance.

    • In the next step, you can then connect our new app to your CleverReach account.

    Manual connection: Select this option if you want to connect to a different CleverReach account . Note: The old app will not be deactivated. Please be aware that this may lead to inconsistent data.

  4. In the next step, select which recipient lists you want to import and click Next.

Step 3: Configure Import Settings

In this step, there is a wide range of import settings. 

  • Which customer groups to import (newsletter subscribers, customers who have made a purchase, other contacts)
  • Whether to transfer order history (default: last 12 months, adjustable to up to 24 months)
  • Whether a tag import should take place 
  • Whether data fields should be mapped. 

Finally, click Start Import.

Note: The import runs in the background. You can switch tabs or continue working in other menus . Please keep the browser tab open until the process is complete .

Step 4: Completion & Functionality Check

Once the migration is complete, you will receive a confirmation in the modal. Your new dashboard is ready, and you can once again make full use of your integration with CleverReach. 

Note: The old plugin has been automatically deactivated. You can now safely uninstall and delete the old plugin version from your Shopware backend.

What stays the same, what’s changing?

Use of Tags
The tag format corresponds exactly to the previous interface. Your existing segments and automations will therefore continue to work seamlessly and require no adjustments.

Using Forms
The new integration uses our current form module. Old forms are no longer supported. Please create your desired form directly in CleverReach so you can then integrate it via the interface.

Creating Segments
Creating new segments directly through the integration is not currently planned. However, you can continue to use your existing segments without restriction: Since the tag format remains unchanged, all segmentations and filtering by data fields will work as usual.

Using Automations
Have you already set up tag-based automations? These will continue to run without any manual intervention. We simply recommend a quick check to ensure that all triggers are firing as intended.

Permissions and Roles Model

Using Shopware’s permissions management, you can assign different roles for access to the CleverReach plugin:

Role Can Cannot
Admin Full access to all features -
Viewer View dashboard and data (reports, logs, status); access module via menu Change settings; trigger actions (resync, import); connect/disconnect account; delete configuration
Editor Change configuration (DOI, Abandoned Cart, Forms), trigger re-sync/dashboard refresh Disconnect account, delete configuration, remove integration
Deleter View module, disconnect integration Change configuration, trigger sync/actions, connect account
  • Problem/Topic Cause/Solution
    The CleverReach import gets stuck when password protection (.htaccess) is enabled

    Cause: In password-protected environments (Basic Auth / Staging), the import gets stuck in an infinite loop (Infinite Spinner), because background processes are blocked (401 error).

    Solution: Temporarily disable password protection for the import, or enable the following API routes in your server configuration:

    • /api/crsw-on-prem-CleverReach/webhook/receiver

    •   /api/crsw-on-prem-CleverReach/webhook/abandonedCart

    Synchronization does not start

    Check:

    1. Are the message queue workers or admin workers running?

    2. Is the CleverReach authentication valid?

    3. Do the plugin log files contain errors?

    Synchronization aborts before completion

    Check:

    1. The message queue.

    2. The plugin log files.

    3. The validity of the OAuth connection.

    Issues with large synchronizations (50k entries or more)

    Cause: The default value for the query timeout is 3600 seconds (1 hour). If the process takes longer, a worker will retrieve the message again.

    Solution: Set the timeout for the DSN transport redeliver_timeout to a higher value (recommended: 8 hours):

    • MESSENGER_TRANSPORT_DSN=doctrine://default?auto_setup=0&redeliver_timeout=28800

    Emails regarding abandoned shopping carts are not being sent. 

    Check the following:

    1. Is the CleverReach automation for “Abandoned Shopping Carts” enabled?

    2. Are the workers for scheduled tasks (Scheduled Tasks) running?

    3. Do the logs show any webhook or automation errors?

    Emails regarding abandoned shopping carts are sent with a slight delay Explanation: The plugin runs a scheduled check every 15 minutes (Scheduled Run) to check for new abandoned shopping carts. Depending on the time interval, the sending may therefore be slightly delayed.
    Linked group must not be deleted in CleverReach

    Explanation: The “Offline Mode” for automatically detecting deleted groups is not yet integrated.

    Solution: Do not manually delete the linked recipient list in CleverReach.

    Old forms no longer work after switching plugins Solution: When switching to the new plugin, forms previously integrated into the Shopware Experience Worlds must be manually replaced with the new forms.
    Bidirectional sync from CleverReach Flow Forms to Shopware Solution: To ensure synchronization in both directions, the Flow Form in CleverReach must be configured with the same recipient list as the plugin.
  • Question Answer
    Can I simply switch from the old interface to the new one without losing any data? Yes. The migration is partially automated via a modal and takes only a few minutes. Your existing recipient list will be automatically transferred. During this process, the old CleverReach plugin is also automatically deactivated. After selecting the recipient list, you can individually configure additional data for the import.
    Do I need to uninstall the old plugin first? No. Leave the old plugin active for now. As soon as the first step (migration modal) in the new plugin is successfully completed, the old connection will be automatically disconnected and the old plugin deactivated. Once you completing the import in the new interface, you can uninstall the old plugin.
    Which Shopware version do I need for the new plugin? The plugin supports Shopware 6.6 and 6.7 as well as PHP 8.2 or higher.
    What data is transferred during migration? Using the migration modal in the new plugin, you can choose whether we should load the data automatically or configure it manually . If you select “Automatic,” we’ll read the existing connected CleverReach recipient list and import it into the new plugin. You can still change this setting later. Additionally, in the subsequent configuration steps, you can individually select other new import options (order data, tags, data fields).
    Do I need to re-embed my newsletter sign-up forms? Yes. The new interface uses our new form module. Old forms in your experience worlds will no longer work with the new interface and must be replaced with new forms.
    What happens with the double opt-in confirmation when I use CleverReach? If you enable the CleverReach double opt-in feature, CleverReach sends the confirmation email, and the native Shopware DOI email is suppressed. The entire confirmation process then runs through your CleverReach form.
    Will my existing segments and automations continue to work? Yes. The tag format remains identical to the old interface, so existing segments and tag-based automations will continue to work without manual intervention. A quick functionality check after migration is recommended.
    Can multiple employees with different permissions access the integration? Yes. Using Shopware’s permissions management, you can assign different roles: from read-only access (viewing the dashboard/logs only) to editing permissions (changing settings, triggering sync/import) to full admin access.
    The abandoned cart email doesn’t arrive exactly at the set time. Is this normal? Yes, the plugin checks for new abandoned carts every 15 minutes, so delivery may be delayed by up to this amount of time .
    My store is password-protected (e.g., staging environment) — the import is stuck. What should I do? In password-protected environments (Basic Auth), the password protection blocks the import’s background processes (401 error), causing it to load indefinitely. Allow the following two API routes in your .htaccess configuration (whitelisting), or temporarily disable password protection for the import:
    /api/crsw-on-prem-CleverReach/webhook/receiver
    /api/crsw-on-prem-CleverReach/webhook/abandonedCart

Help & Support

If you have any questions or need help, feel free to contact our service team at any time.