PHPackages                             sylius/customer-reorder-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. [Utility &amp; Helpers](/categories/utility)
4. /
5. sylius/customer-reorder-plugin

AbandonedArchivedSylius-plugin[Utility &amp; Helpers](/categories/utility)

sylius/customer-reorder-plugin
==============================

Sylius plugin that enables order reordering for a customer

v1.1.0(7y ago)2087.9k↓33.3%25[3 PRs](https://github.com/Sylius/CustomerReorderPlugin/pulls)MITPHPPHP ^7.2

Since Jun 7Pushed 4y ago15 watchersCompare

[ Source](https://github.com/Sylius/CustomerReorderPlugin)[ Packagist](https://packagist.org/packages/sylius/customer-reorder-plugin)[ RSS](/packages/sylius-customer-reorder-plugin/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (20)Versions (11)Used By (0)

> ⚠️ **BEWARE!**This repository has been deprecated and will not be maintained or evolved by the Sylius Team. You can still use it with compatible Sylius versions, but at your own risk, as no bugs will be fixed on it.

 [ ![](https://camo.githubusercontent.com/1567208cc7c8ec53cf6e2af4f54449a9bb3ab0dee7916998de4e3ce9b7f79015/68747470733a2f2f64656d6f2e73796c6975732e636f6d2f6173736574732f73686f702f696d672f6c6f676f2e706e67) ](https://sylius.com)

Customer Reorder Plugin
=======================

[](#customer-reorder-plugin)

[![](https://camo.githubusercontent.com/9b437c7f32af7f569d4c0d8e750fd3e94c19a1a7ad491228a34cf567b0ea8af4/68747470733a2f2f73796c6975732e636f6d2f6173736574732f62616467652d6f6666696369616c2d73796c6975732d706c7567696e2e706e67)](https://sylius.com/plugins/)

This plugin allows customers to reorder a previously placed order.

[![Screenshot showing the customer's orders page with reorder buttons](docs/screenshot.png)](docs/screenshot.png)

Business value
--------------

[](#business-value)

The plugin allows Customer to reorder any Order that has already been placed. Once a Reorder button is clicked, a new cart filled with items taken from a previously placed order is created. If for some reason Reorder can't be fulfilled completely, the Customer is informed about every circumstance that have affected the Order (i. e. promotion being no longer available or differences in item's prices).

Once the Reorder process is completed, the newly created Order is listed in the history just like any other Orders.

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

[](#installation)

#### Beware!

[](#beware)

> This installation instruction assumes that you're using Symfony Flex. If you don't, take a look at the [legacy installation instruction](docs/legacy_installation.md). However, we strongly encourage you to use Symfony Flex, it's much quicker! :)

To install plugin, just require it with composer:

```
composer require sylius/customer-reorder-plugin
```

> Remember to allow community recipes with `composer config extra.symfony.allow-contrib true` or during plugin installation process

Extension points
----------------

[](#extension-points)

Customer Reorder plugin is based on two processes:

- reorder processing
- reorder eligibility checking

They are both based on Symfony's compiler passes and configured in `services.xml` file.

ReorderProcessing and EligibilityChecking are independent processes - once a Reorder is created using Processors (services tagged as `sylius_customer_reorder_plugin.reorder_processor`), the created entity is passed to Eligibility Checkers (services tagged as `sylius_customer_reorder_plugin.eligibility_checker`).

Hence, both processes can be extended separately by adding services that implement `ReorderEligibilityChecker`and are tagged as `sylius_customer_reorder_plugin.eligibility_checker` or implement `ReorderProcessor` and are tagged as `sylius_customer_reorder_plugin.reorder_processor`.

Both `Reorder` button layout and action performed on clicking it are defined in `reorder.html.twig` template which is declared in `config.yml` file.

What's more, since Order is a Resource, major part of its configuration is placed in `*.yml` files. Without using the plugin, Order had `Show` and `Pay` actions. Adding `Reorder` action required extending order-related behaviours in `config.yml` file.

You can read much more about Resources here: [http://docs.sylius.com/en/1.2/components\_and\_bundles/bundles/SyliusResourceBundle/index.html](http://docs.sylius.com/en/1.2/components_and_bundles/bundles/SyliusResourceBundle/index.html)

Security issues
---------------

[](#security-issues)

If you think that you have found a security issue, please do not use the issue tracker and do not post it publicly. Instead, all security issues must be sent to `security@sylius.com`.

###  Health Score

40

—

FairBetter than 88% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity41

Moderate usage in the ecosystem

Community23

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 66.3% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~27 days

Recently: every ~48 days

Total

10

Last Release

2658d ago

Major Versions

0.2.3 → 1.02018-07-26

PHP version history (2 changes)0.1PHP ^7.1

1.0PHP ^7.2

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/719423?v=4)[Sylius eCommerce](/maintainers/sylius)[@Sylius](https://github.com/Sylius)

![](https://www.gravatar.com/avatar/4b4a5a1a9293502aa8573551fab020963a9050c5cca4524433b6d94214d3b480?d=identicon)[GSadee](/maintainers/GSadee)

---

Top Contributors

[![bartoszpietrzak1994](https://avatars.githubusercontent.com/u/22262296?v=4)](https://github.com/bartoszpietrzak1994 "bartoszpietrzak1994 (108 commits)")[![Zales0123](https://avatars.githubusercontent.com/u/6212718?v=4)](https://github.com/Zales0123 "Zales0123 (32 commits)")[![pamil](https://avatars.githubusercontent.com/u/1897953?v=4)](https://github.com/pamil "pamil (15 commits)")[![GSadee](https://avatars.githubusercontent.com/u/6140884?v=4)](https://github.com/GSadee "GSadee (7 commits)")[![lchrusciel](https://avatars.githubusercontent.com/u/6213903?v=4)](https://github.com/lchrusciel "lchrusciel (1 commits)")

---

Tags

symfonysyliuse-commercesylius-plugincustomer reorder

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/sylius-customer-reorder-plugin/health.svg)

```
[![Health](https://phpackages.com/badges/sylius-customer-reorder-plugin/health.svg)](https://phpackages.com/packages/sylius-customer-reorder-plugin)
```

###  Alternatives

[sylius/refund-plugin

Plugin provides basic refunds functionality for Sylius application.

691.7M14](/packages/sylius-refund-plugin)[sylius/invoicing-plugin

Invoicing plugin for Sylius.

901.0M2](/packages/sylius-invoicing-plugin)[synolia/sylius-scheduler-command-plugin

Scheduler Command Plugin.

34361.5k](/packages/synolia-sylius-scheduler-command-plugin)[webgriffe/sylius-table-rate-shipping-plugin

Provides table rate shipping calculator.

1490.4k](/packages/webgriffe-sylius-table-rate-shipping-plugin)[sylius/price-history-plugin

Implementation of the Omnibus Directive for Sylius application.

1140.5k](/packages/sylius-price-history-plugin)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
