PHPackages                             piedweb/reservation-bundle - 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. piedweb/reservation-bundle

Abandoned → [pushword/core](/?search=pushword%2Fcore)ArchivedSymfony-bundle[Utility &amp; Helpers](/categories/utility)

piedweb/reservation-bundle
==========================

Transform your CMS in a reservation platform.

01PHP

Since Dec 13Pushed 7y ago1 watchersCompare

[ Source](https://github.com/PiedWeb/ReservationBundle)[ Packagist](https://packagist.org/packages/piedweb/reservation-bundle)[ RSS](/packages/piedweb-reservation-bundle/feed)WikiDiscussions master Synced 3d ago

READMEChangelogDependenciesVersions (1)Used By (0)

[![PiedWeb.com](https://raw.githubusercontent.com/PiedWeb/piedweb-devoluix-theme/master/src/img/logo_title.png)](https://piedweb.com)

Reservation Bundle
==================

[](#reservation-bundle)

Transform your [PiedWeb CMS](https://github.com/PiedWeb/CMS) in a reservation platform.

This bundle provide a complete order process manager (product, basket, order, payment).

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

[](#installation)

Via [Packagist](https://packagist.org/packages/piedweb/reservation-bundle) :

```
# Get the Bundle
composer require piedweb/reservation-bundle

# Set basic conf:

# Copy files from install to your src folder (erase)

# Add route in `config/routes.yaml`
reservation:
    resource: '@PiedWebReservationBundle/Resources/config/routes/reservation.yaml'

# Edit config/bundles.php and reorder with this in first:
    PiedWeb\ReservationBundle\PiedWebReservationBundle::class => ['all' => true],
# (because now, we use app.entity_order in CMSBundle and we need to load ReservationBundle's config before)

# Config payum's gateways in `config/packages/payum.yaml` (eg :
payum:
    gateways:
        paypal_checkout_button:
            # https://developer.paypal.com/docs/checkout/integrate/#4-test-it
            factory: paypal_express_checkout
            #username: ''
            #password: ''
            #signature: ''
            #sandbox: true

```

Usage
-----

[](#usage)

### Customize last step of tunner (reservation succeed)

[](#customize-last-step-of-tunner-reservation-succeed)

By creating a page with `step-6` as slug. Only main content will be used. Think to disable publication by putting the creation date today + 100 years.

### Add a new Paiment Method

[](#add-a-new-paiment-method)

- Create Payment Method. See `src/PaymentMethod` for exemple.
- Create Payment Controller Action See `src/Controller/PaymentController.php` for exemple.
- Create the corresponding twig file in your `templates/bundles/PiedWebReservationBundle/PaymentMethod/`**`HumanId`**`.html.twig`
- Edit config :

```
piedweb_reservation:
    ...
    payment_method:
        - PiedWeb\ReservationBundle\PaymentMethod\PaypalCheckoutExpress
        - PiedWeb\ReservationBundle\PaymentMethod\Cash
        - YourNewMethodClass

```

TODO
----

[](#todo)

- test
- Add other way of payment (currently managed : paypal express checkout)
- test with international and translate

### Later

[](#later)

- translate
- pager for Orders.html.twig
- filtering by date (in admin) and default filtering for active products
- archive basket item for non user after a while =&gt; via a command line
- agnostic notifier/logger (à réfléchir) permet de collecter toutes les actions réalisées et de notifier ex: mail dès que nouvelle résa [https://symfony.com/doc/current/logging/monolog\_email.html](https://symfony.com/doc/current/logging/monolog_email.html)=&gt; Lister les actions à logger -- nouvelles commandes -- dès que le nombre max atteint son max- (2?) parameter
- organiser les produits par pages dans productadmin

Usage
-----

[](#usage-1)

Contributors
------------

[](#contributors)

- [Robin](https://www.robin-d.fr/) / [Pied Web](https://piedweb.com)
- ...

Check coding standard before to commit :

```
php-cs-fixer fix src --rules=@Symfony --verbose && php-cs-fixer fix src --rules='{"array_syntax": {"syntax": "short"}}' --verbose

```

License
-------

[](#license)

MIT (see the LICENSE file for details)

###  Health Score

18

—

LowBetter than 8% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity1

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity39

Early-stage or recently created project

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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/afce4cf517928a50560237f1410d5957271fd808671b2216687ecf1422adaee0?d=identicon)[Robin D.](/maintainers/Robin%20D.)

### Embed Badge

![Health badge](/badges/piedweb-reservation-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/piedweb-reservation-bundle/health.svg)](https://phpackages.com/packages/piedweb-reservation-bundle)
```

###  Alternatives

[react/zmq

ZeroMQ bindings for React.

2471.7M31](/packages/react-zmq)[spatie/laravel-cronless-schedule

Run the Laravel scheduler without relying on cron

389307.2k1](/packages/spatie-laravel-cronless-schedule)[jordanbrauer/unit-converter

Convert standard units from one to another with this easy to use, lightweight package

1281.2M6](/packages/jordanbrauer-unit-converter)[zetacomponents/base

The Base package provides the basic infrastructure that all packages rely on. Therefore every component relies on this package.

367.9M50](/packages/zetacomponents-base)[alleyinteractive/wp-asset-manager

Asset Manager is a toolkit for managing front-end assets and more tightly controlling where, when, and how they're loaded.

32343.0k2](/packages/alleyinteractive-wp-asset-manager)[paulzi/yii2-auto-tree

Allow apply multiple tree behavior for ActiveRecord in Yii2

5053.8k6](/packages/paulzi-yii2-auto-tree)

PHPackages © 2026

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