Limiting Available Payment Methods

By default, the Adyen Drop-in component displays all payment methods enabled in your Adyen merchant account.

This plugin introduces an additional filtering layer, allowing you to control which methods are available in Sylius.

Why is this useful?

  • Development / testing - you can restrict the checkout to only a few selected payment methods (e.g. test cards, wallets).

  • Granular control - you can explicitly whitelist payment methods, regardless of the configuration in your Adyen account.

  • Security / UX control - you can conditionally show methods only for logged-in users or enforce manual capture behavior.

Default configuration

The plugin provides a curated list of overall supported methods, as well as a list of methods supported while using the manual capture mode.

To check the current configuration, run:

bin/console debug:config sylius_adyen

Example output

sylius_adyen:
    payment_methods:
        allowed_types:
            - scheme
            - ach
            - alipay
            - alipay_hk
            - alma
            - applepay
            - directdebit_GB
            - bcmc_mobile
            - klarna_b2b
            - blik
            - googlepay
            - ideal
            - klarna_paynow
            - klarna
            - klarna_account
            - facilypay_3x
            - facilypay_4x
            - facilypay_6x
            - facilypay_10x
            - facilypay_12x
            - scalapay_3x
            - paypal
            - onlineBanking_PL
            - twint
            - wechatpayWeb
            - wechatpayQR
        manual_capture_supporting_types:
            - ach
            - alma
            - applepay
            - directdebit_GB
            - facilypay_10x
            - facilypay_12x
            - facilypay_3x
            - facilypay_4x
            - facilypay_6x
            - googlepay
            - klarna
            - klarna_account
            - klarna_b2b
            - klarna_paynow
            - scalapay_3x
            - scheme
            - twint
        only_manual_capture_types: {}
        only_for_logged_in_users_types: {}

Explanation of configuration options

allowed_types

Defines the full list of Adyen payment method types you want to allow within Sylius. This acts as the first filtering layer.

manual_capture_supporting_types

Further restricts the list of methods to only those that support manual (separate) capture, when operating in manual capture mode. To determine which payment methods support this setting, consult Adyen's Payment Methods.

only_manual_capture_types

Forces manual capture mode for the specified payment methods, regardless of the configuration set on the Sylius payment method entity.

only_for_logged_in_users_types

Defines payment methods that should only be visible to authenticated (logged in) users. If a user is not logged in, these methods will be excluded from the checkout options.

Customization

To override the defaults, update your project configuration (e.g. config/packages/sylius_adyen.yaml) and specify the allowed payment method types:

sylius_adyen:
    payment_methods:
        allowed_types:
            - scheme
            - klarna
            - paypal
            - googlepay
        manual_capture_supporting_types:
            - scheme
            - googlepay
        only_manual_capture_types:
            - klarna
        only_for_logged_in_users_types:
            - klarna

With this setup, only the explicitly listed payment methods will be shown at checkout, even if more methods are enabled in your Adyen account.

Was this helpful?