PHPackages                             acseo/sylius2-prestashop-migration-plugin - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. acseo/sylius2-prestashop-migration-plugin

ActiveSylius-plugin

acseo/sylius2-prestashop-migration-plugin
=========================================

Migrate Prestashop data into Sylius

00PHP

Since Mar 13Pushed 2mo agoCompare

[ Source](https://github.com/acseo/sylius2-prestashop-migration-plugin)[ Packagist](https://packagist.org/packages/acseo/sylius2-prestashop-migration-plugin)[ RSS](/packages/acseo-sylius2-prestashop-migration-plugin/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

PrestaShop to Sylius Migration Plugin
=====================================

[](#prestashop-to-sylius-migration-plugin)

This plugin provides a complete migration solution from PrestaShop to Sylius 2.x, handling all major entities including products, customers, orders, and configurations.

Features
--------

[](#features)

- Complete data migration from PrestaShop to Sylius
- Support for Sylius 2.x and Symfony 7
- Automatic duplicate detection and handling
- Dry-run mode for safe testing
- Migration status checking
- Translatable entities support
- Image migration for products
- Extensible architecture with decorators

Installation
------------

[](#installation)

### 1. Add the plugin to your Sylius project

[](#1-add-the-plugin-to-your-sylius-project)

```
composer require acseo/sylius2-prestashop-migration-plugin
```

### 2. Enable the plugin

[](#2-enable-the-plugin)

Add the plugin to your `config/bundles.php`:

```
return [
    // ...
    ACSEO\PrestashopMigrationPlugin\PrestashopMigrationPlugin::class => ['all' => true],
];
```

### 3. Configure the PrestaShop database connection

[](#3-configure-the-prestashop-database-connection)

Create or update `config/packages/doctrine.yaml`:

```
doctrine:
    dbal:
        connections:
            default:
                # Your Sylius database configuration
                url: '%env(resolve:DATABASE_URL)%'

            prestashop:
                url: '%env(resolve:PRESTASHOP_DATABASE_URL)%'
                driver: 'pdo_mysql'
```

Add the PrestaShop database URL to your `.env` file:

```
PRESTASHOP_DATABASE_URL="mysql://user:password@localhost:3306/prestashop_db?serverVersion=8.0"

```

### 4. Configure the plugin

[](#4-configure-the-plugin)

Create `config/packages/prestashop_migration.yaml`:

```
parameters:
    prestashop.prefix: 'ps_'
    prestashop.public_directory: '%kernel.project_dir%/public/prestashop'
    prestashop.tmp_directory: '%kernel.project_dir%/var/tmp/prestashop'
```

Adjust the `prestashop.prefix` parameter according to your PrestaShop table prefix.

Configuration
-------------

[](#configuration)

### Add PrestashopTrait to your entities

[](#add-prestashoptrait-to-your-entities)

For each entity you want to migrate, add the `PrestashopTrait` to track the PrestaShop ID:

```
