Problem/Motivation
I'd like to report that we're seeing the following error in logs:
Drupal\commerce_payment\Exception\PaymentGatewayException: The selected stripe payment method type(stripe_link) is not currently supported. in Drupal\commerce_stripe\Plugin\Commerce\PaymentGateway\StripePaymentElement->createPaymentMethodFromStripePaymentMethod() (line 773 of /web/modules/contrib/commerce_stripe/src/Plugin/Commerce/PaymentGateway/StripePaymentElement.php).
Backtrace:
Drupal\commerce_payment\Exception\PaymentGatewayException: The selected stripe payment method type(stripe_link) is not currently supported. in Drupal\commerce_stripe\Plugin\Commerce\PaymentGateway\StripePaymentElement->createPaymentMethodFromStripePaymentMethod() (line 773 of /web/modules/contrib/commerce_stripe/src/Plugin/Commerce/PaymentGateway/StripePaymentElement.php).
#0 /web/modules/contrib/commerce_stripe/src/Plugin/Commerce/PaymentGateway/StripePaymentElement.php(696): Drupal\commerce_stripe\Plugin\Commerce\PaymentGateway\StripePaymentElement->createPaymentMethodFromStripePaymentMethod()
#1 /web/modules/contrib/commerce/modules/payment/src/Controller/PaymentCheckoutController.php(138): Drupal\commerce_stripe\Plugin\Commerce\PaymentGateway\StripePaymentElement->onReturn()
#2 [internal function]: Drupal\commerce_payment\Controller\PaymentCheckoutController->returnPage()
#3 /web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array()
#4 /web/core/lib/Drupal/Core/Render/Renderer.php(627): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#5 /web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber..php(121): Drupal\Core\Render\Renderer->executeInRenderContext()
#6 /web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext()
#7 /vendor/symfony/http-kernel/HttpKernel.php(183): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#8 /vendor/symfony/http-kernel/HttpKernel.php(76): Symfony\Component\HttpKernel\HttpKernel->handleRaw()
#9 /web/core/lib/Drupal/Core/StackMiddleware/Session.php(53): Symfony\Component\HttpKernel\HttpKernel->handle()
#10 /web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(48): Drupal\Core\StackMiddleware\Session->handle()
#11 /web/core/lib/Drupal/Core/StackMiddleware/ContentLength.php(28): Drupal\Core\StackMiddleware\KernelPreHandle->handle()
#12 /web/core/modules/big_pipe/src/StackMiddleware/ContentLength.php(32): Drupal\Core\StackMiddleware\ContentLength->handle()
#13 /web/core/modules/page_cache/src/StackMiddleware/PageCache.php(116): Drupal\big_pipe\StackMiddleware\ContentLength->handle()
#14 /web/core/modules/page_cache/src/StackMiddleware/PageCache.php(90): Drupal\page_cache\StackMiddleware\PageCache->pass()
#15 /web/core/modules/ban/src/BanMiddleware.php(50): Drupal\page_cache\StackMiddleware\PageCache->handle()
#16 /web/modules/contrib/crowdsec/src/Middleware.php(62): Drupal\ban\BanMiddleware->handle()
#17 /web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(48): Drupal\crowdsec\Middleware->handle()
#18 /web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(51): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle()
#19 /web/core/lib/Drupal/Core/StackMiddleware/AjaxPageState.php(53): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle()
#20 /web/modules/contrib/remove_http_headers/src/StackMiddleware/RemoveHttpHeadersMiddleware.php(49): Drupal\Core\StackMiddleware\AjaxPageState->handle()
#21 /web/core/lib/Drupal/Core/StackMiddleware/StackedHttpKernel.php(51): Drupal\remove_http_headers\StackMiddleware\RemoveHttpHeadersMiddleware->handle()
#22 /web/core/lib/Drupal/Core/DrupalKernel.php(715): Drupal\Core\StackMiddleware\StackedHttpKernel->handle()
#23 /web/index.php(19): Drupal\Core\DrupalKernel->handle()
#24 {main}We're using the following patches:
- #3421392: Add PayPal support to Payment Element Gateway
- #3421392: Add PayPal support to Payment Element Gateway
"drupal/commerce_stripe": {
"Stripe Express Checkout Element Integration #3477028: Stripe Express Checkout Element Integration + Add PayPal support to Payment Element Gateway #3421392: Add PayPal support to Payment Element Gateway": "https://www.drupal.org/files/issues/2025-11-20/3477028-stripe-express-checkout-with-3421392-add-paypal-support.patch"
}
Any ideas what the Exception wants to tell us? Is that kind of expected?
We didn't enable a "Stripe link" payment method, nor I see it available in the module settings?
Steps to reproduce
Use Stripe as payment method (with the patches linked above)
Comments
Comment #2
tomtech commentedLink is a payment method that can be enabled in Stripe.
It is not currently supported by this module.
There is an issue already requesting support. See: #3524967: Add Stripe Link payment method support to Payment Element Gateway
It takes a bit more effort to add this one compared to others, as it requires js additions to render the link element.
Comment #3
tomtech commentedComment #5
anybodyThanks @tomtech - so it needs to be disabled at Stripe? Otherwise, it appears in the checkout?