Bridge/Symfony/DependencyInjection/PayumBuilderPass.php
private function registerActions(ContainerBuilder $container)
    {
        // Payzen convert action
        if (class_exists('Ekyna\Component\Payum\Payzen\PayzenGatewayFactory')) {
            // Convert action
            $definition = new Definition('Ekyna\Component\Commerce\Bridge\Payum\Payzen\Action\ConvertAction');
            $definition->addTag('payum.action', ['factory' => 'payzen', 'prepend' => true]);
            $container->setDefinition('ekyna_commerce.payum.action.payzen.convert_payment', $definition);

            // Fraud level action
            $definition = new Definition('Ekyna\Component\Commerce\Bridge\Payum\Payzen\Action\FraudLevelAction');
            $definition->addTag('payum.action', ['factory' => 'payzen', 'prepend' => true]);
            $container->setDefinition('ekyna_commerce.payum.action.payzen.fraud_level', $definition);
        }

        // Sips
        if (class_exists('Ekyna\Component\Payum\Sips\SipsGatewayFactory')) {
            // Convert action
            $definition = new Definition('Ekyna\Component\Commerce\Bridge\Payum\Sips\Action\ConvertAction');
            $definition->addTag('payum.action', ['factory' => 'atos_sips', 'prepend' => true]);
            $container->setDefinition('ekyna_commerce.payum.action.sips.convert_payment', $definition);
        }

        // PayPal EC NVP
        if (class_exists('Payum\Paypal\ExpressCheckout\Nvp\PaypalExpressCheckoutGatewayFactory')) {
            // Convert action
            $definition = new Definition('Ekyna\Component\Commerce\Bridge\Payum\Paypal\Action\EcNvpConvertAction');
            $definition->setArgument(0, new Reference('ekyna_commerce.common.amount_calculator'));
            if ($container->has('ekyna_setting.manager') && class_exists('Ekyna\Bundle\AdminBundle\Settings\GeneralSettingsSchema')) {
                $definition->setArgument(1, new Expression(
                    "service('ekyna_setting.manager').getParameter('general.site_name')"
                ));
            }
            $definition->addTag('payum.action', ['factory' => 'paypal_express_checkout', 'prepend' => true]);
            $container->setDefinition('ekyna_commerce.payum.action.paypal_ec_nvp.convert_payment', $definition);
        }

        // Global actions
        $actions = [
            'capture_payment' => Action\CaptureAction::class,
            'notify_payment'  => Action\NotifyAction::class,
            'status_payment'  => Action\StatusAction::class,
        ];
        foreach ($actions as $name => $class) {
            $definition = new Definition($class);
            $definition->addTag('payum.action', ['all' => true, 'prepend' => true]);

            $container->setDefinition('ekyna_commerce.payum.action.' . $name, $definition);
        }
    }
private function registerActions(ContainerBuilder $container)
    {
        // Payzen convert action
        if (class_exists('Ekyna\Component\Payum\Payzen\PayzenGatewayFactory')) {
            // Convert action
            $definition = new Definition('Ekyna\Component\Commerce\Bridge\Payum\Payzen\Action\ConvertAction');
            $definition->addTag('payum.action', ['factory' => 'payzen', 'prepend' => true]);
            $container->setDefinition('ekyna_commerce.payum.action.payzen.convert_payment', $definition);

            // Fraud level action
            $definition = new Definition('Ekyna\Component\Commerce\Bridge\Payum\Payzen\Action\FraudLevelAction');
            $definition->addTag('payum.action', ['factory' => 'payzen', 'prepend' => true]);
            $container->setDefinition('ekyna_commerce.payum.action.payzen.fraud_level', $definition);
        }

        // Sips
        if (class_exists('Ekyna\Component\Payum\Sips\SipsGatewayFactory')) {
            // Convert action
            $definition = new Definition('Ekyna\Component\Commerce\Bridge\Payum\Sips\Action\ConvertAction');
            $definition->addTag('payum.action', ['factory' => 'atos_sips', 'prepend' => true]);
            $container->setDefinition('ekyna_commerce.payum.action.sips.convert_payment', $definition);
        }

        // PayPal EC NVP
        if (class_exists('Payum\Paypal\ExpressCheckout\Nvp\PaypalExpressCheckoutGatewayFactory')) {
            // Convert action
            $definition = new Definition('Ekyna\Component\Commerce\Bridge\Payum\Paypal\Action\EcNvpConvertAction');
            $definition->setArgument(0, new Reference('ekyna_commerce.common.amount_calculator'));
            if ($container->has('ekyna_setting.manager') && class_exists('Ekyna\Bundle\AdminBundle\Settings\GeneralSettingsSchema')) {
                $definition->setArgument(1, new Expression(
                    "service('ekyna_setting.manager').getParameter('general.site_name')"
                ));
            }
            $definition->addTag('payum.action', ['factory' => 'paypal_express_checkout', 'prepend' => true]);
            $container->setDefinition('ekyna_commerce.payum.action.paypal_ec_nvp.convert_payment', $definition);
        }

        // Global actions
        $actions = [
            'capture_payment' => Action\CaptureAction::class,
            'notify_payment'  => Action\NotifyAction::class,
            'status_payment'  => Action\StatusAction::class,
        ];
        foreach ($actions as $name => $class) {
            $definition = new Definition($class);
            $definition->addTag('payum.action', ['all' => true, 'prepend' => true]);

            $container->setDefinition('ekyna_commerce.payum.action.' . $name, $definition);
        }
    }
Registers the payum actions.

@param ContainerBuilder $container