Comments (17)
For workaround on renewal subscription, please see 8056842-zd-a8c
Workaround: There has been report from merchants that switching back to Classic Checkout re-enables the SEPA payment.
from woocommerce-gateway-stripe.
👋 Update over here.
Regarding subscriptions changing their payment method to Manual Renewal after disabling the Legacy checkout experience. I've tested the following snippet...
add_filter( 'woocommerce_subscription_get_payment_method', 'use_sepa_updated_checkout_gateway_id_for_subscriptions' );
/**
* Filters the return value of 'WC_Subscription::get_payment_method()'.
*
* Returns 'stripe_sepa_debit' if UPE is enabled and the gateway is 'stripe_sepa'.
*
* @param string $value The payment method ID.
* @return string
*/
function use_sepa_updated_checkout_gateway_id_for_subscriptions( $value ) {
if (
'stripe_sepa' === $value &&
class_exists( 'WC_Stripe_Feature_Flags' ) &&
WC_Stripe_Feature_Flags::is_upe_checkout_enabled()
) {
return 'stripe_sepa_debit';
}
return $value;
}
... and things seem to work as expected:
✔️ Subscriptions display "SEPA Direct Debit" under "Payment Method", instead of "Manual Renewal".
✔️ Renewals are processed successfully when triggered by either the merchant or the subscriber.
This could be a workaround while we make adjustments for the upcoming releases. Please keep in mind this is a workaround and experimental, although tested. The actual fix will be released in the extension.
What's going on
I included the details of what's causing this behavior in the description of this draft PR, which exists as a proof of concept and to document the behavior, likely not getting merged.
The following flows fail when using a SEPA source with the Payment Methods API
- Regular purchase
There was an error processing the payment: Using a SEPA Debit Source in the
payment_method
field has been deprecated and is no longer a valid integration path. Please migrate your Source objects to PaymentMethods using the Dashboard migration tooling here: https://dashboard.stripe.com/sources-migration
- Purchasing a subscription
There was an error processing the payment: Using a SEPA Debit Source in the
payment_method
field has been deprecated and is no longer a valid integration path. Please migrate your Source objects to PaymentMethods using the Dashboard migration tooling here: https://dashboard.stripe.com/sources-migration
- Purchasing a subscription with a free trial
SEPA Debit Sources used as a PaymentMethod are not supported with the Setup Intents API. These Sources have mandate information and thus are already "set up"
- Changing the payment method of a subscription as a shopper
SEPA Debit Sources used as a PaymentMethod are not supported with the Setup Intents API. These Sources have mandate information and thus are already "set up".
✔️ Subscription renewals work as expected in my tests when using a SEPA source with the Payment Methods API.
I didn't get the message from the initial report when testing different flows, though. Consistent replication steps would be appreciated, but we'll continue checking these in the meantime.
SEPA Debit Sources used as a PaymentMethod have mandate information already stored. You cannot pass the
mandate_data
ormandate
parameters. Please re-confirm without those parameters.
from woocommerce-gateway-stripe.
We've created the following two issues for the reported behaviors:
-
- 8035522-zd-a8c
- 8056842-zd-a8c
- 8130440-zd-a8c
- 8135622-zd-a8c
- 8104366-zd-a8c / https://wordpress.org/support/topic/upe-sepa-not-working
- https://wordpress.org/support/topic/no-sepa-payment-with-new-checkout-experience/
-
- 7886598-zd-a8c
- 8119078-zd-a8c
- 8090629-zd-a8c
- 8130440-zd-a8c
- 8115012-zd-a8c
- 8049601-zd-a8c
- 8168237-zd-a8c
- https://wordpress.org/support/topic/using-a-sepa-debit-source-in-the-payment_method-field-has-been-deprecated/
- https://wordpress.org/support/topic/no-sepa-payment-with-new-checkout-experience/
I'm closing this issue in favor of those two, which are more specific to the problems merchants are facing.
from woocommerce-gateway-stripe.
- #8035522-zd
from woocommerce-gateway-stripe.
8056842-zd-a8c
This issue impacts merchants with subscriptions and its renewal payments.
Would like any insight on how one might workaround this issue. Is downgrading Stripe version the best way to handle?
from woocommerce-gateway-stripe.
8104366-zen
from woocommerce-gateway-stripe.
From the forum post, a community member shared the following workaround:
Manually:
- You have to first go to the subscription, within the subscription, edit the billing information (pencil icon), search for the payment method and select the recorded SEPA mandate.
- Now you can change the payment method in the order related to the subscription, in the same way, edit the billing information (pencil icon). If you don’t subscribe first, it won’t leave you in the order.
- Change the status to pending payment and in order of actions you can try to collect the subscription again.
Bulk editing:
- I did the bulk editing with the WP Sheet Editor plugin, the payment method field is read-only by default, but it can be changed and modified with the right click. The process is the same as manual, first the subscriptions and then the generated orders.
from woocommerce-gateway-stripe.
8119078-zd-a8c
A similar issue has been reported here. After updating the Stripe plugin the merchant enabled the new checkout experience. Customers who had previously purchased from their store using SEPA are getting the following error and the same error is recorded in the order notes as well.
SEPA Debit Sources used as a PaymentMethod are not supported with the Setup Intents API. These Sources have mandate information and thus are already 'set up'.
The error message is different from the one in the description but the possible reproduction steps are the same. This started happening after enabling the new checkout experience and for customers who had used SEPA in the legacy experience prior to the update. Note that, the payment gets completed for this merchant when customer tries again (it is not clear from the discussion if the customer retired with the same saved SEPA payment token or a new SEPA token)
from woocommerce-gateway-stripe.
Another report here: 8104366-zen
Forum thread: https://wordpress.org/support/topic/upe-sepa-not-working/
There was an error processing the payment: Using a SEPA Debit Source in the payment_method field has been deprecated and is no longer a valid integration path. Please migrate your Source objects to PaymentMethods using the Dashboard migration tooling here https://dashboard.stripe.com/sources-migration
from woocommerce-gateway-stripe.
@RiaanKnoetze This will not help. I get the same error when changing it manually.
from woocommerce-gateway-stripe.
8090629-zd-a8c
from woocommerce-gateway-stripe.
8130440-zen
from woocommerce-gateway-stripe.
8135622-zen
from woocommerce-gateway-stripe.
8135622-zd-a8c
This issue impacts merchants with subscriptions and their renewal payments.
As @namiokuzono asked should we suggest a downgrade?
from woocommerce-gateway-stripe.
Another one with:
Using a SEPA Debit Source in the
payment_method
field has been deprecated and is no longer a valid integration path. Please migrate your Source objects to PaymentMethods
I see other cases with this error message shared here. Are they related or should we open a separate GH issue?
8115012-zd
from woocommerce-gateway-stripe.
8049601-zen
from woocommerce-gateway-stripe.
Possibly another report: 8168237-zen
from woocommerce-gateway-stripe.
Related Issues (20)
- Subscriptions using SEPA change to Manual Renewal after disabling the Legacy checkout experience HOT 13
- SEPA payments fail when using Sources tokens with the Payment Methods API
- [Wallets] Process payments when using Cash App
- Disabling saved payment methods does not work
- Hide WeChat Pay for ineligible Stripe account
- Cartes Bancaires support HOT 2
- New Update Not working HOT 4
- [Wallets] Cash App payments - Second attempt to pay for an order fails HOT 6
- URGENT: Paid orders stuck at “pending payment” HOT 5
- [Wallets] Cash App Payments - Add subscription support HOT 1
- Nothing happens when I try to make a refund
- Duplicated customization notices after Stripe promotional banner was introduced
- Discount & Fees won't be applied to Apple Pay HOT 1
- Confirm we're passing the expected request body for co-branded cards HOT 1
- [Wallets] The Place Order button remains disabled on the Block checkout after closing the wallet modal
- Payment methods - Migrate Multibanco to the new experience
- [Cash App] Fix lack of feedback when a payment fails
- [CashApp] Support subscription with a free trial and changing a subscription's payment method to Cash App
- Remove the text OR for express checkout buttons in cart and checkout page if the browser doesn't support Apple Pay
- Card Brand Icon not showing in legacy checkout experience
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from woocommerce-gateway-stripe.