PHPackages                             pimcore/payment-provider-mpay24-seamless - 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. pimcore/payment-provider-mpay24-seamless

ActivePimcore-bundle

pimcore/payment-provider-mpay24-seamless
========================================

Pimcore Payment Provider - MPay24 Seamless

v1.0.4(2y ago)0162[2 issues](https://github.com/pimcore/payment-provider-mpay24-seamless/issues)[1 PRs](https://github.com/pimcore/payment-provider-mpay24-seamless/pulls)GPL-3.0+PHPCI passing

Since Jan 28Pushed 1mo ago6 watchersCompare

[ Source](https://github.com/pimcore/payment-provider-mpay24-seamless)[ Packagist](https://packagist.org/packages/pimcore/payment-provider-mpay24-seamless)[ RSS](/packages/pimcore-payment-provider-mpay24-seamless/feed)WikiDiscussions 2026.x Synced 2d ago

READMEChangelog (5)Dependencies (3)Versions (16)Used By (0)

Pimcore E-Commerce Framework Payment Provider - MPay24 Seamless
===============================================================

[](#pimcore-e-commerce-framework-payment-provider---mpay24-seamless)

### Official MPay24 Documentation

[](#official-mpay24-documentation)

- [Documentation](https://docs.mpay24.com/docs)
- [Test Data](https://docs.mpay24.com/docs/test-data)

Requirement
-----------

[](#requirement)

- mpay24/mpay24-php": "^4.2"

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

[](#installation)

Install latest version with Composer:

```
composer require pimcore/payment-provider-mpay24-seamless
```

Enable bundle via console or extensions manager in Pimcore backend:

```
php bin/console pimcore:bundle:enable PimcorePaymentProviderMpay24SeamlessBundle
php bin/console pimcore:bundle:install PimcorePaymentProviderMpay24SeamlessBundle
```

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

[](#configuration)

The Payment Manager is responsible for implementation of different Payment Provider to integrate them into the framework.

For more information about Payment Manager, see [Payment Manager Docs](../13_Checkout_Manager/07_Integrating_Payment.md).

Configure payment provider in the `pimcore_ecommerce_config.payment_manager` config section:

```
pimcore_ecommerce_config:
    payment_manager:
        payment_manager_id: Pimcore\Bundle\EcommerceFrameworkBundle\PaymentManager\PaymentManager

        providers:
            mpay24:
                provider_id: Pimcore\Bundle\EcommerceFrameworkBundle\PaymentManager\Payment\Mpay24Seamless
                profile: testsystem
                profiles:
                  _defaults:
                      #paypal_activate_item_level: true
                      partial: Shared/Includes/Shop/Payment/paymentMethods.html.php
                      payment_methods:
                          cc:
                          paypal:
                          sofort:
                          invoice:
                  testsystem:
                      merchant_id: 95387
                      password: 7&jcQ%v6RB
                      testSystem: true
                      debugMode: true
                  live:
                      merchant_id: todo
                      password: todo
                      testSystem: false
                      debugMode: false
```

Implementation
--------------

[](#implementation)

CheckoutController.php (action, where the payment form will be rendered):

```
...
//important: if payment is active, then keep payment state and do not allow parallel payment!
if ($this->checkoutManager->hasActivePayment() && $this->cart->isCartReadOnly()) {
    return $this->redirectToRoute('app_shop_cart_list');
}
$paymentInfo = $this->checkoutManager->startOrderPayment();
$payment = $this->checkoutManager->getPayment();
$paymentFormAsString =
    $payment->initPayment(
        $this->cart->getPriceCalculator()->getGrandTotal(),
        [
            'request' => $request,
            'paymentInfo' => $paymentInfo
        ]
);
$order = $this->checkoutManager->getOrder();
$order->setOrderState("");//important to unlock order payment, as order can be locked
$order->save(['versionInfo' => 'Clear state, because payment is not locked yet.']);

$this->view->paymentFormAsString = $paymentFormAsString;

```

Somewhere in your order.html.php view:

```
...

    Select Payment:

...

```

paymentMethods.html.php view (linked in ecommerce.yml):

```

>
