-
Notifications
You must be signed in to change notification settings - Fork 69
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[GlobalStep] Subscription renewals fail with WC Subscriptions due to Split UPE #5567
Comments
@brucealdridge can you test to confirm this issue and comment your thoughts on priority – does this block WCPay 5.5 release? |
This is a bug with Split UPE (#3968) The culprit lies in the lines below. woocommerce-payments/includes/class-wc-payment-gateway-wcpay.php Lines 1040 to 1048 in 1304f85
Previously for Subscription renewal the following line would be used for setting
The new lines do a check based on the variable |
Excellent detective work @brucealdridge ! 🙌 FYI @frosso @FangedParakeet – this issue may have been introduced by split UPE changes, see @brucealdridge comment above. Is someone from @Automattic/heisenberg able to investigate / start a fix? Regarding priority / impact, it looks like this only affects Subscriber-initiated (early) renewals when the subscriber happens to be an admin user. Is this correct @brucealdridge ? If so that might lower the priority. FYI @hsingyuc – this issue may be a blocker for WCPay 5.5, I'm not certain of that. |
@haszari thanks for the ping! We'll have @timur27 & @mdmoore take a look, so it can hopefully be fixed before the 5.5.0 release.
If that's the case, I also agree with lowering the priority. |
I did not test subscriber-initiated renewals, I did test admin-initiated renewals and automatic renewals. These would cover the vast majority of renewal payment flows and both of these are failing. The check that was added for This is why I suspect that In Person Payments will be affected as well as these are creating and confirming a payment intent outside of the normal frontend checkout process. |
Bug Description:
Subscription renewal orders fail with WC Pay and WC Subscriptions.
Environment:
Woocommerce Version: WooCommerce 7.3.0
WooCommerce Payments - 5.5.0 test-2
WooCommerce Subscriptions - v4.8.1
WordPress version: v6.1.1
PC:
Windows 10, MacOS 12.6.1 (Monterey)
Chrome(Version 110.0.5481.100)
Safari Version 16.2 (18614.3.7.1.5)
Steps To Reproduce:
Actual Result:
Renewal orders are set to "Failed".
An error is added to the notes.
Expected Result:
Renewal orders are set to "Processing" on renewal.
Screenshot:
Isolating the problem (mark completed items with an [x]):
`
WordPress Environment
WC Version: 7.3.0
REST API Version: ✔ 7.3.0
WC Blocks Version: ✔ 9.1.5
Action Scheduler Version: ✔ 3.4.0
Log Directory Writable: ✔
WP Version: 6.1.1
WP Multisite: –
WP Memory Limit: 256 MB
WP Debug Mode: ✔
WP Cron: ✔
Language: en_US
External object cache: –
Server Environment
Server Info: Apache/2.4.55 (Unix) OpenSSL/1.0.2g
PHP Version: 7.4.33
PHP Post Max Size: 1 GB
PHP Time Limit: 30
PHP Max Input Vars: 5000
cURL Version: 7.47.0
OpenSSL/1.0.2g
SUHOSIN Installed: –
MySQL Version: 5.7.33-0ubuntu0.16.04.1-log
Max Upload Size: 512 MB
Default Timezone is UTC: ✔
fsockopen/cURL: ✔
SoapClient: ✔
DOMDocument: ✔
GZip: ✔
Multibyte String: ✔
Remote Post: ✔
Remote Get: ✔
Database
WC Database Version: 7.3.0
WC Database Prefix: wp_
Total Database Size: 7.32MB
Database Data Size: 5.16MB
Database Index Size: 2.16MB
wp_woocommerce_sessions: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_woocommerce_api_keys: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_woocommerce_attribute_taxonomies: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_woocommerce_downloadable_product_permissions: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
wp_woocommerce_order_items: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_woocommerce_order_itemmeta: Data: 0.11MB + Index: 0.14MB + Engine InnoDB
wp_woocommerce_tax_rates: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
wp_woocommerce_tax_rate_locations: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_woocommerce_shipping_zones: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_woocommerce_shipping_zone_locations: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_woocommerce_shipping_zone_methods: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_woocommerce_payment_tokens: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_woocommerce_payment_tokenmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_woocommerce_log: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_actionscheduler_actions: Data: 0.19MB + Index: 0.20MB + Engine InnoDB
wp_actionscheduler_claims: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_actionscheduler_groups: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_actionscheduler_logs: Data: 0.17MB + Index: 0.14MB + Engine InnoDB
wp_commentmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_comments: Data: 0.13MB + Index: 0.09MB + Engine InnoDB
wp_links: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_options: Data: 3.19MB + Index: 0.06MB + Engine InnoDB
wp_postmeta: Data: 0.39MB + Index: 0.38MB + Engine InnoDB
wp_posts: Data: 0.11MB + Index: 0.06MB + Engine InnoDB
wp_snippets: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_termmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_terms: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_term_relationships: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_term_taxonomy: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_usermeta: Data: 0.06MB + Index: 0.03MB + Engine InnoDB
wp_users: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
wp_wc_admin_notes: Data: 0.05MB + Index: 0.00MB + Engine InnoDB
wp_wc_admin_note_actions: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_wc_category_lookup: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_wc_customer_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_wc_download_log: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_wc_order_coupon_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_wc_order_product_lookup: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
wp_wc_order_stats: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
wp_wc_order_tax_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_wc_product_attributes_lookup: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_wc_product_download_directories: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_wc_product_meta_lookup: Data: 0.02MB + Index: 0.09MB + Engine InnoDB
wp_wc_rate_limits: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_wc_reserved_stock: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_wc_tax_rate_classes: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_wc_webhooks: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
Post Type Counts
attachment: 25
page: 10
post: 2
product: 25
product_variation: 7
revision: 4
shop_coupon: 1
shop_order: 55
shop_order_refund: 5
shop_subscription: 24
Security
Secure connection (HTTPS): ✔
Hide errors from visitors: ✔
Active Plugins (6)
Query Monitor: by John Blackbourn – 3.11.1
Code Snippets: by Code Snippets Pro – 3.2.2
Companion Plugin: by Osk – 1.29
WooCommerce Payments: by Automattic – 5.5.0-test-2
WooCommerce Subscriptions: by WooCommerce – 4.8.1
WooCommerce: by Automattic – 7.3.0 (update to version 7.4.0 is available)
Inactive Plugins (3)
Akismet Anti-Spam: by Automattic – 5.0.2
Hello Dolly: by Matt Mullenweg – 1.7.2
WooCommerce Payments Dev Tools: by Automattic –
Dropin Plugins (1)
db.php: Query Monitor Database Class (Drop-in)
Settings
API Enabled: –
Force SSL: –
Currency: USD ($)
Currency Position: left
Thousand Separator: ,
Decimal Separator: .
Number of Decimals: 2
Taxonomies: Product Types: external (external)
grouped (grouped)
simple (simple)
subscription (subscription)
variable (variable)
variable subscription (variable-subscription)
Taxonomies: Product Visibility: exclude-from-catalog (exclude-from-catalog)
exclude-from-search (exclude-from-search)
featured (featured)
outofstock (outofstock)
rated-1 (rated-1)
rated-2 (rated-2)
rated-3 (rated-3)
rated-4 (rated-4)
rated-5 (rated-5)
Connected to WooCommerce.com: –
Enforce Approved Product Download Directories: ✔
Order datastore: WC_Order_Data_Store_CPT
WC Pages
Shop base: #5 - /shop/
Cart: #6 - /cart/
Checkout: #7 - /checkout/
My account: #8 - /my-account/
Terms and conditions: ❌ Page not set
Theme
Name: Storefront
Version: 4.2.0
Author URL: https://woocommerce.com/
Child Theme: ❌ – If you are modifying WooCommerce on a parent theme that you did not build personally we recommend using a child theme. See: How to create a child theme
WooCommerce Support: ✔
Templates
Overrides: –
Subscriptions
WCS_DEBUG: ✔ No
Subscriptions Mode: ✔ Live
Subscriptions Live URL: https://bloody-clam.jurassic.ninja
Subscriptions-core Library Version: 5.3.1
Subscription Statuses: wc-active: 17
wc-on-hold: 6
wc-cancelled: 1
WooCommerce Account Connected: ❌ No
Report Cache Enabled: ✔ Yes
Cache Update Failures: ✔ 0 failure
Store Setup
Country / State: United States (US) — California
Subscriptions by Payment Gateway
WooCommerce Payments: wc-active: 17
wc-cancelled: 1
wc-on-hold: 6
Payment Gateway Support
WooCommerce Payments: products
refunds
multiple_subscriptions
subscription_cancellation
subscription_payment_method_change_admin
subscription_payment_method_change_customer
subscription_payment_method_change
subscription_reactivation
subscription_suspension
subscriptions
subscription_amount_changes
subscription_date_changes
tokenization
add_payment_method
Admin
Enabled Features: activity-panels
analytics
coupons
customer-effort-score-tracks
experimental-products-task
experimental-import-products-task
experimental-fashion-sample-products
shipping-smart-defaults
shipping-setting-tour
homescreen
marketing
multichannel-marketing
mobile-app-banner
navigation
onboarding
onboarding-tasks
remote-inbox-notifications
remote-free-extensions
payment-gateway-suggestions
shipping-label-banner
subscriptions
store-alerts
transient-notices
woo-mobile-welcome
wc-pay-promotion
wc-pay-welcome-page
Disabled Features: minified-js
new-product-management-experience
settings
Daily Cron: ✔ Next scheduled: 2023-02-17 06:32:39 +00:00
Options: ✔
Notes: 44
Onboarding: completed
WooCommerce Payments
Version: 5.5.0-test-2
Connected to WPCOM: Yes
Blog ID: 215596990
Account ID: acct_1MbIYnFdBqgM16K3
Action Scheduler
Canceled: 18
Oldest: 2023-02-14 07:45:36 +0000
Newest: 2023-02-16 15:06:18 +0000
Complete: 503
Oldest: 2023-02-14 07:11:27 +0000
Newest: 2023-02-16 15:06:59 +0000
Pending: 23
Oldest: 2023-02-16 15:15:55 +0000
Newest: 2023-04-14 12:08:57 +0000
Status report information
Generated at: 2023-02-16 15:14:45 +00:00
`
The text was updated successfully, but these errors were encountered: