woocommerce / woocommerce-gateway-stripe

The official Stripe Payment Gateway for WooCommerce
https://wordpress.org/plugins/woocommerce-gateway-stripe/
235 stars 206 forks source link

[GlobalStep] "PHP errors in Ajax response" gets triggered when modal containing a voucher shows up for "OXXO" and "Boleto" on "WC's shortcode checkout" page. #2942

Closed gglobalstep closed 8 months ago

gglobalstep commented 8 months ago

Bug Description:

"PHP errors in Ajax response" gets triggered when modal containing a voucher shows up for "OXXO" and "Boleto" on "WC's shortcode checkout" page.

Environment:

Woocommerce Version: 8.6.1 WordPress version: 6.4.3 WooCommerce Stripe Gateway Version: 8.0.0-test-3

PC: Windows 10 Chrome (Version 122.0.6261.70) Firefox (Version 123.0)

MAC: Big Sur (11.7.10): Browser: Safari (v16.6.1)

Steps to Reproduce:

  1. Create any test site.
  2. Install and activate all the required plugins.
  3. Upload and activate the WooCommerce Stripe Payment Gateway v8.0.0-test-3 plugin.
  4. Go to the Stripe extension settings page > Settings tab, at siteurl/wp-admin/admin.php? page=wc-settings&tab=checkout&section=stripe&panel=settings.
  5. Scroll down to "Advanced settings".
  6. Create new test page with shortcode checkout page.
  7. Check the checkbox labeled "Enable the updated checkout experience" and save.
  8. Go to WooCommerce > Settings > General.
  9. Select Mexican peso ($) in the Currency drop-down.
  10. Click Save changes.
  11. Go to WooCommerce > Settings > Payments > Stripe > Payment Methods tab > OXXO.
  12. Toggle the Enable/Disable checkbox to on.
  13. Click Save changes.
  14. Add a product to the cart (> $10.00) and proceed to checkout.
  15. Type in a valid Mexican address.
  16. Select OXXO and click Place order.
  17. Observe that, "PHP errors in Ajax response" gets triggered when modal containing a voucher shows up for "OXXO" on "WC's shortcode checkout" page.

Instruction Link:

https://github.com/woocommerce/woocommerce-gateway-stripe/wiki/Critical-flows-%E2%80%90-Instructions#checkout-with-oxxo

Actual Result:

"PHP errors in Ajax response" gets triggered when modal containing a voucher shows up for "OXXO" and "Boleto" on "WC's shortcode checkout" page.

Expected Result:

No error should be triggered when modal containing a voucher shows up for "OXXO" and "Boleto" on "WC's shortcode checkout" page.

Screenshot:

OXXO:

#2942 1

Boleto:

#2942 2

Isolating the problem (mark completed items with an [x]):

` ### WordPress Environment ### WC Version: 8.6.1 REST API Version: ✔ 8.6.1 WC Blocks Version: ✔ 11.8.0-dev Action Scheduler Version: ✔ 3.7.1 Log Directory Writable: ✔ WP Version: 6.4.3 WP Multisite: – WP Memory Limit: 512 MB WP Debug Mode: – WP Cron: ✔ Language: en_US External object cache: ✔ ### Server Environment ### Server Info: nginx PHP Version: 8.1.27 PHP Post Max Size: 2 GB PHP Time Limit: 1200 PHP Max Input Vars: 6144 cURL Version: 8.4.0 OpenSSL/1.1.1w SUHOSIN Installed: – MySQL Version: 10.6.15-MariaDB-log Max Upload Size: 2 GB Default Timezone is UTC: ✔ fsockopen/cURL: ✔ SoapClient: ✔ DOMDocument: ✔ GZip: ✔ Multibyte String: ✔ Remote Post: ✔ Remote Get: ✔ ### Database ### WC Database Version: 8.6.1 WC Database Prefix: wp_ Total Database Size: 5.17MB Database Data Size: 2.46MB Database Index Size: 2.71MB 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.05MB + Index: 0.02MB + Engine InnoDB wp_woocommerce_order_itemmeta: Data: 0.17MB + Index: 0.17MB + 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.13MB + Index: 0.14MB + 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.09MB + Index: 0.09MB + Engine InnoDB wp_commentmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_comments: Data: 0.19MB + Index: 0.09MB + Engine InnoDB wp_links: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_options: Data: 0.13MB + Index: 0.03MB + Engine InnoDB wp_postmeta: Data: 0.13MB + Index: 0.09MB + Engine InnoDB wp_posts: Data: 0.13MB + Index: 0.06MB + 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.02MB + Index: 0.03MB + Engine InnoDB wp_users: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_wc_admin_notes: Data: 0.06MB + Index: 0.00MB + Engine InnoDB wp_wc_admin_note_actions: Data: 0.05MB + 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_orders: Data: 0.08MB + Index: 0.11MB + Engine InnoDB wp_wc_orders_meta: Data: 0.38MB + Index: 0.78MB + Engine InnoDB wp_wc_order_addresses: Data: 0.06MB + Index: 0.06MB + Engine InnoDB wp_wc_order_coupon_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_wc_order_operational_data: Data: 0.06MB + Index: 0.03MB + Engine InnoDB wp_wc_order_product_lookup: Data: 0.05MB + 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: 24 page: 12 post: 2 product: 22 product_variation: 7 revision: 4 shop_order_placehold: 158 wp_global_styles: 1 wp_navigation: 1 wp_template: 2 ### Security ### Secure connection (HTTPS): ✔ Hide errors from visitors: ✔ ### Active Plugins (5) ### Query Monitor: by John Blackbourn – 3.15.0 Companion Plugin: by Osk – 1.30 WooCommerce Stripe Gateway: by WooCommerce – 8.0.0 Woo Subscriptions: by WooCommerce – 6.0.0 WooCommerce: by Automattic – 8.6.1 ### Inactive Plugins (1) ### Akismet Anti-spam: Spam Protection: by Automattic - Anti-spam Team – 5.3.1 ### Dropin Plugins (3) ### advanced-cache.php: advanced-cache.php db.php: Query Monitor Database Class (Drop-in) object-cache.php: Memcached ### Settings ### API Enabled: – Force SSL: – Currency: BRL (R$) 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 Woo.com: – Enforce Approved Product Download Directories: ✔ HPOS feature screen enabled: ✔ HPOS feature enabled: ✔ Order datastore: Automattic\WooCommerce\Internal\DataStores\Orders\OrdersTableDataStore HPOS data sync enabled: – ### 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.5.4 Author URL: https://woo.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://different-garden-fan.jurassic.ninja Subscriptions-core Library Version: 6.8.0 Subscription Statuses: wc-active: 33 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 ### Stripe: wc-active: 33 ### Payment Gateway Support ### Stripe: products refunds tokenization add_payment_method subscriptions subscription_cancellation subscription_suspension subscription_reactivation subscription_amount_changes subscription_date_changes subscription_payment_method_change subscription_payment_method_change_customer subscription_payment_method_change_admin multiple_subscriptions :: products ### Admin ### Enabled Features: activity-panels analytics product-block-editor coupons core-profiler customer-effort-score-tracks import-products-task experimental-fashion-sample-products shipping-smart-defaults shipping-setting-tour homescreen marketing mobile-app-banner navigation onboarding onboarding-tasks product-variation-management product-virtual-downloadable product-external-affiliate product-grouped product-linked 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: customize-store minified-js new-product-management-experience product-pre-publish-modal settings async-product-editor-category-field Daily Cron: ✔ Next scheduled: 2024-02-27 06:57:37 +00:00 Options: ✔ Notes: 66 Onboarding: completed ### Action Scheduler ### Complete: 296 Oldest: 2024-02-26 07:00:18 +0000 Newest: 2024-02-26 13:39:47 +0000 Failed: 2 Oldest: 2024-02-26 07:01:40 +0000 Newest: 2024-02-26 07:27:42 +0000 Pending: 38 Oldest: 2024-02-27 07:00:18 +0000 Newest: 2024-04-26 13:40:26 +0000 ### Status report information ### Generated at: 2024-02-26 17:10:07 +00:00 `
a-danae commented 8 months ago

This should have been fixed by https://github.com/woocommerce/woocommerce-gateway-stripe/pull/2948