Forum Replies Created

Viewing 14 replies - 1 through 14 (of 14 total)
  • Thread Starter SethTurin

    (@sethturin)

    guys, you’re asking me to do a lot. can you tell me specifically what you’re trying to understand that isn’t explained in my posts, and isn’t demonstrated in the youtube video?

    It’s really simple. WooCommerce Square should record the customer ID to the order even if the user checks out as a guest. that’s it. that’s all it would take to fix this, and a video isn’t going to explain it any better than that. you’re giving me busy work when really the only thing left to do is just make a minor change to the source code. come on guys.

    Thread Starter SethTurin

    (@sethturin)

    honestly though I’ve explained several times in very explicit detail exactly what the problem is and how to fix it. I don’t really understand why we’re still going back and forth…

    Thread Starter SethTurin

    (@sethturin)

    Alright, well here’s what I found on youtube: https://www.youtube.com/watch?v=fUWaRmeQZaM

    Thread Starter SethTurin

    (@sethturin)

    @beautyofcode Thanks for your response.

    The error happens after the initial checkout, when a one-click upsell page tries make a second purchase to the card.

    The error happens only during guest checkout (which, for many stores, is most checkouts).

    It happens because WooCommerce Square only records the customer token from Square if the customer is logged into WordPress, or if the customer creates a new account at checkout. This means that when a guest checks out without an account, and then tries to buy the one click upsell, there’s no customer token, which is required for the upsell. Thus, an error is thrown, and the upsell can’t be purchased.

    My guess is that the devs did it this way because they assumed the customer token would only be useful for subscriptions, and subscriptions generally require an account.

    But of course, one-click upsells also use the customer token, and there’s no need to require an account in this case. In fact, requiring an account for the one click upsells is quite cumbersome, and will significantly reduce conversion.

    The solution is very simple: when the customer checks out, whether or not they have an account, simply attach the customer token to the order. Nothing else needs to change. Just make sure the customer token gets added to the order, even in the case of guest checkout.

    This will make WooCommerce Square play nicely with more plugins, and greatly increase its capabilities!

    Thanks for your consideration.

    Thread Starter SethTurin

    (@sethturin)

    Ok you guys just really aren’t reading my replies. Or maybe you’re misunderstanding. I don’t know but please read this or escalate to someone who can properly address the issue.

    The WooCommerce Square plugin is coded in a way that makes it impossible for Cartflows or any other plugin to implement one click upsells.

    I don’t know any other way to explain this.

    I’ve thoroughly researched this issue, and there’s nothing that can be done until WooCommerce Square updates the code.

    To be clear: the problem isn’t that WooCommerce Square breaks in isolation.

    The problem is that WooCommerce Square sets a hard limit for what it can and can’t do. There’s no reason for this limit to exist, and it would be straightfoward for the dev team to fix it.

    Please stop telling me the problem is with other plugins. There’s literally nothing other plugin developers can do until WooCommerce Square updates its code.

    Thread Starter SethTurin

    (@sethturin)

    Hi again.

    I think you didn’t read my reply. The problem stems from the fact that Woocommerce Square only records the payment token if an account is created. For things to work properly, I need the payment token to be recorded and attached to the order even during a guest checkout. There’s no reason for Woocommerce Square not to do this, but its not the current behavior.

    To be clear, this can only be done inside the Woocommerce Square plugin code. Cartflows can’t access your code or tell it to record the payment token, so there’s nothing they can do.

    Thread Starter SethTurin

    (@sethturin)

    Hi, checking back on this

    Thread Starter SethTurin

    (@sethturin)

    I’ve continued to investigate the issue, and it seems it’s a WooCommerce Square problem after all. Or maybe you can still give me an idea to workaround it.

    The problem is that the upsell process depends on the customer token getting attached to the order. This works fine when the user is logged in. But when a guest checks out, the there’s no customer token attached to the order.

    This makes some amount of sense, because the customer token is usually only useful in cases like subscriptions, or customers with saved card data. But in the case of one click upsells, there’s no need for the customer to have an account.

    Is there a way we can add the tokens to the order when the user checks out as a guest?

    Thread Starter SethTurin

    (@sethturin)

    Hi

    I have a little more information now. Things seem to work properly with WooCommerce on its own. The problem occurs in conjunction with the Cartflows Pro Plugin, and more specifically, with the one-click upsell functionality.

    If you’re unfamiliar, one-click upsell means the customer has clicked the buy button, the initial sale has gone through, and the customer only needs to click one button to add something else to the order.

    WooCommerce Square is listed as one of the compatible plugins for the Cartflows One Click Upsell functionality, so my best guess is that it worked at one time and an update to the WooCommerce Square plugin broke the compatibility.

    I’ve raised the issue with Cartflows as well, but if you guys can offer any more information on what’s going on, or offer any sort of solution, it would be greatly appreciated.

    Thanks

    Here is the status readout:


    WordPress Environment<br><br>WordPress address (URL): xxx<br>Site address (URL): xxx<br>WC Version: 9.2.3<br>Legacy REST API Package Version: The Legacy REST API plugin is not installed on this site.<br>Action Scheduler Version: ? 3.8.1<br>Log Directory Writable: ?<br>WP Version: 6.6.2<br>WP Multisite: –<br>WP Memory Limit: 768 MB<br>WP Debug Mode: –<br>WP Cron: ?<br>Language: en_US<br>External object cache: – Server Environment<br><br>Server Info: Apache<br>PHP Version: 8.2.24<br>PHP Post Max Size: 256 MB<br>PHP Time Limit: 120<br>PHP Max Input Vars: 3000<br>cURL Version: 8.2.1<br>OpenSSL/3.1.4<br><br>SUHOSIN Installed: –<br>MySQL Version: 8.0.36-28<br>Max Upload Size: 256 MB<br>Default Timezone is UTC: ?<br>fsockopen/cURL: ?<br>SoapClient: ?<br>DOMDocument: ?<br>GZip: ?<br>Multibyte String: ?<br>Remote Post: ?<br>Remote Get: ? Database<br><br>WC Database Version: 9.1.2<br>WC Database Prefix: wpstg0_<br>Total Database Size: 77.15MB<br>Database Data Size: 64.29MB<br>Database Index Size: 12.86MB<br>wpstg0_woocommerce_sessions: Data: 0.17MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_woocommerce_api_keys: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_woocommerce_attribute_taxonomies: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_woocommerce_downloadable_product_permissions: Data: 0.02MB + Index: 0.06MB + Engine InnoDB<br>wpstg0_woocommerce_order_items: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_woocommerce_order_itemmeta: Data: 0.11MB + Index: 0.14MB + Engine InnoDB<br>wpstg0_woocommerce_tax_rates: Data: 0.02MB + Index: 0.06MB + Engine InnoDB<br>wpstg0_woocommerce_tax_rate_locations: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_woocommerce_shipping_zones: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>wpstg0_woocommerce_shipping_zone_locations: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_woocommerce_shipping_zone_methods: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>wpstg0_woocommerce_payment_tokens: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_woocommerce_payment_tokenmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_woocommerce_log: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_actionscheduler_actions: Data: 0.34MB + Index: 0.31MB + Engine InnoDB<br>msf_actionscheduler_claims: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_actionscheduler_groups: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_actionscheduler_logs: Data: 0.09MB + Index: 0.09MB + Engine InnoDB<br>msf_cartflows_visits: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>msf_cartflows_visits_meta: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>msf_commentmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_comments: Data: 0.06MB + Index: 0.09MB + Engine InnoDB<br>msf_e_events: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>msf_e_submissions: Data: 0.02MB + Index: 0.23MB + Engine InnoDB<br>msf_e_submissions_actions_log: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>msf_e_submissions_values: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>msf_links: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_options: Data: 7.09MB + Index: 1.05MB + Engine InnoDB<br>msf_postmeta: Data: 12.39MB + Index: 1.84MB + Engine InnoDB<br>msf_posts: Data: 6.22MB + Index: 0.13MB + Engine InnoDB<br>msf_sgs_log_events: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_sgs_log_visitors: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_snippets: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_ssa_appointment_meta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_ssa_appointment_type_labels: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_ssa_appointment_types: Data: 0.02MB + Index: 0.06MB + Engine InnoDB<br>msf_ssa_appointments: Data: 0.02MB + Index: 0.08MB + Engine InnoDB<br>msf_ssa_async_actions: Data: 0.31MB + Index: 0.11MB + Engine InnoDB<br>msf_ssa_availability: Data: 0.02MB + Index: 0.16MB + Engine InnoDB<br>msf_ssa_availability_external: Data: 0.02MB + Index: 0.14MB + Engine InnoDB<br>msf_ssa_payments: Data: 0.02MB + Index: 0.06MB + Engine InnoDB<br>msf_ssa_revision_meta: Data: 0.22MB + Index: 0.03MB + Engine InnoDB<br>msf_ssa_revisions: Data: 0.05MB + Index: 0.14MB + Engine InnoDB<br>msf_term_relationships: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_term_taxonomy: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_termmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_terms: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_usermeta: Data: 0.08MB + Index: 0.03MB + Engine InnoDB<br>msf_users: Data: 0.02MB + Index: 0.05MB + Engine InnoDB<br>msf_wc_admin_note_actions: Data: 0.06MB + Index: 0.02MB + Engine InnoDB<br>msf_wc_admin_notes: Data: 0.06MB + Index: 0.00MB + Engine InnoDB<br>msf_wc_category_lookup: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>msf_wc_customer_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_wc_download_log: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_wc_order_addresses: Data: 0.02MB + Index: 0.06MB + Engine InnoDB<br>msf_wc_order_coupon_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_wc_order_operational_data: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_wc_order_product_lookup: Data: 0.02MB + Index: 0.06MB + Engine InnoDB<br>msf_wc_order_stats: Data: 0.02MB + Index: 0.05MB + Engine InnoDB<br>msf_wc_order_tax_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_wc_orders: Data: 0.08MB + Index: 0.11MB + Engine InnoDB<br>msf_wc_orders_meta: Data: 0.14MB + Index: 0.27MB + Engine InnoDB<br>msf_wc_product_attributes_lookup: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_wc_product_download_directories: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_wc_product_meta_lookup: Data: 0.02MB + Index: 0.11MB + Engine InnoDB<br>msf_wc_rate_limits: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_wc_reserved_stock: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>msf_wc_tax_rate_classes: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_wc_webhooks: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_woocommerce_api_keys: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_woocommerce_attribute_taxonomies: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_woocommerce_downloadable_product_permissions: Data: 0.02MB + Index: 0.06MB + Engine InnoDB<br>msf_woocommerce_log: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_woocommerce_order_itemmeta: Data: 0.11MB + Index: 0.14MB + Engine InnoDB<br>msf_woocommerce_order_items: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_woocommerce_payment_tokenmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_woocommerce_payment_tokens: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>msf_woocommerce_sessions: Data: 1.02MB + Index: 0.02MB + Engine InnoDB<br>msf_woocommerce_shipping_zone_locations: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_woocommerce_shipping_zone_methods: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>msf_woocommerce_shipping_zones: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>msf_woocommerce_square_customers: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>msf_woocommerce_tax_rate_locations: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>msf_woocommerce_tax_rates: Data: 0.02MB + Index: 0.06MB + Engine InnoDB<br>msf_wpmailsmtp_debug_events: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>msf_wpmailsmtp_tasks_meta: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>wpstg0_actionscheduler_actions: Data: 0.31MB + Index: 0.34MB + Engine InnoDB<br>wpstg0_actionscheduler_claims: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_actionscheduler_groups: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_actionscheduler_logs: Data: 0.22MB + Index: 0.20MB + Engine InnoDB<br>wpstg0_cartflows_visits: Data: 0.11MB + Index: 0.00MB + Engine InnoDB<br>wpstg0_cartflows_visits_meta: Data: 0.11MB + Index: 0.00MB + Engine InnoDB<br>wpstg0_commentmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_comments: Data: 0.19MB + Index: 0.09MB + Engine InnoDB<br>wpstg0_e_events: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_e_submissions: Data: 0.02MB + Index: 0.27MB + Engine InnoDB<br>wpstg0_e_submissions_actions_log: Data: 0.02MB + Index: 0.11MB + Engine InnoDB<br>wpstg0_e_submissions_values: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_links: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_options: Data: 4.14MB + Index: 0.08MB + Engine InnoDB<br>wpstg0_postmeta: Data: 17.52MB + Index: 1.97MB + Engine InnoDB<br>wpstg0_posts: Data: 9.52MB + Index: 0.20MB + Engine InnoDB<br>wpstg0_sgs_log_events: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_sgs_log_visitors: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_snippets: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_ssa_appointment_meta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_ssa_appointment_type_labels: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_ssa_appointment_types: Data: 0.02MB + Index: 0.06MB + Engine InnoDB<br>wpstg0_ssa_appointments: Data: 0.02MB + Index: 0.08MB + Engine InnoDB<br>wpstg0_ssa_async_actions: Data: 0.28MB + Index: 0.11MB + Engine InnoDB<br>wpstg0_ssa_availability: Data: 0.02MB + Index: 0.16MB + Engine InnoDB<br>wpstg0_ssa_availability_external: Data: 0.02MB + Index: 0.14MB + Engine InnoDB<br>wpstg0_ssa_payments: Data: 0.02MB + Index: 0.06MB + Engine InnoDB<br>wpstg0_ssa_revision_meta: Data: 0.23MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_ssa_revisions: Data: 0.05MB + Index: 0.14MB + Engine InnoDB<br>wpstg0_term_relationships: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_term_taxonomy: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_termmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_terms: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_usermeta: Data: 0.08MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_users: Data: 0.02MB + Index: 0.05MB + Engine InnoDB<br>wpstg0_wc_admin_note_actions: Data: 0.06MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_wc_admin_notes: Data: 0.06MB + Index: 0.00MB + Engine InnoDB<br>wpstg0_wc_category_lookup: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>wpstg0_wc_customer_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_wc_download_log: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_wc_order_addresses: Data: 0.05MB + Index: 0.06MB + Engine InnoDB<br>wpstg0_wc_order_coupon_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_wc_order_operational_data: Data: 0.06MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_wc_order_product_lookup: Data: 0.05MB + Index: 0.06MB + Engine InnoDB<br>wpstg0_wc_order_stats: Data: 0.05MB + Index: 0.05MB + Engine InnoDB<br>wpstg0_wc_order_tax_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB<br>wpstg0_wc_orders: Data: 0.09MB + Index: 0.11MB + Engine InnoDB<br>wpstg0_wc_orders_meta: Data: 0.39MB + Index: 0.88MB + Engine InnoDB<br>wpstg0_wc_product_attributes_lookup: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_wc_product_download_directories: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_wc_product_meta_lookup: Data: 0.02MB + Index: 0.11MB + Engine InnoDB<br>wpstg0_wc_rate_limits: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_wc_reserved_stock: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>wpstg0_wc_tax_rate_classes: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_wc_webhooks: Data: 0.02MB + Index: 0.02MB + Engine InnoDB<br>wpstg0_woocommerce_square_customers: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>wpstg0_wpmailsmtp_debug_events: Data: 0.02MB + Index: 0.00MB + Engine InnoDB<br>wpstg0_wpmailsmtp_tasks_meta: Data: 0.02MB + Index: 0.00MB + Engine InnoDB Post Type Counts<br><br>attachment: 103<br>cartflows_flow: 26<br>cartflows_step: 48<br>customize_changeset: 2<br>elementor_library: 9<br>nav_menu_item: 3<br>page: 14<br>post: 1<br>product: 71<br>revision: 469<br>shop_order: 56<br>shop_order_placehold: 109<br>shop_order_refund: 1<br>shop_subscription: 4<br>wp_navigation: 1 Security<br><br>Secure connection (HTTPS): ?<br>Hide errors from visitors: ? Active Plugins (7)<br><br>CartFlows Pro: by CartFlows Inc – 2.0.6<br>CartFlows: by CartFlows Inc – 2.0.6<br>Elementor Pro: by Elementor.com – 3.22.1<br>Elementor: by Elementor.com – 3.24.0<br>WooCommerce Square: by WooCommerce – 4.8.2<br>WooCommerce: by Automattic – 9.2.3 (update to version 9.3.3 is available)<br>WP STAGING WordPress Backup Plugin - Backup Duplicator & Migration: by WP-STAGING<br>WPStagingBackup – 3.8.7 Inactive Plugins (13)<br><br>Additional Custom Emails for WooCommerce: by WPFactory – 3.2.0<br>Code Snippets: by Code Snippets Pro – 3.6.5.1<br>Duplicate Page: by mndpsingh287 – 4.5.4<br>Google Analytics for WordPress by MonsterInsights: by MonsterInsights – 9.0.1<br>Security Optimizer: by SiteGround – 1.5.6<br>Simply Schedule Appointments: by N Squared – 3.6.6.9<br>Speed Optimizer: by SiteGround – 7.6.7<br>WooCommerce Legacy REST API: by WooCommerce – 1.0.4<br>WooCommerce PayPal Payments: by WooCommerce – 2.9.0 (update to version 2.9.3 is available)<br>Woo Subscriptions: by WooCommerce – 5.8.0 (update to version 6.8.0 is available)<br>WordPress Importer: by wordpressdotorg – 0.8.2<br>WP Console: by Edi Amin – 2.4.1<br>WP Mail SMTP: by WP Mail SMTP – 4.1.1 Must Use Plugins (1)<br><br>WP STAGING Optimizer: by WP STAGING – 1.5.8 Settings<br><br>Legacy API Enabled: –<br>Force SSL: –<br>Currency: USD ($)<br>Currency Position: left<br>Thousand Separator: ,<br>Decimal Separator: .<br>Number of Decimals: 2<br>Taxonomies: Product Types: external (external)<br>grouped (grouped)<br>simple (simple)<br>subscription (subscription)<br>variable (variable)<br>variable subscription (variable-subscription)<br><br>Taxonomies: Product Visibility: exclude-from-catalog (exclude-from-catalog)<br>exclude-from-search (exclude-from-search)<br>featured (featured)<br>outofstock (outofstock)<br>rated-1 (rated-1)<br>rated-2 (rated-2)<br>rated-3 (rated-3)<br>rated-4 (rated-4)<br>rated-5 (rated-5)<br><br>Connected to WooCommerce.com: –<br>Enforce Approved Product Download Directories: ?<br>HPOS feature enabled: ?<br>Order datastore: Automattic\WooCommerce\Internal\DataStores\Orders\OrdersTableDataStore<br>HPOS data sync enabled: – Logging<br><br>Enabled: ?<br>Handler: Automattic\WooCommerce\Internal\Admin\Logging\LogHandlerFileV2<br>Retention period: 30 days<br>Level threshold: –<br>Log directory size: 170 KB WC Pages<br><br>Shop base: ? Page not set<br>Cart: #7 - /?page_id=7 - Contains the woocommerce/cart block<br>Checkout: #2374 - /?page_id=2374 - Contains the [woocommerce_checkout] shortcode<br>My account: #2311 - /?page_id=2311<br>Terms and conditions: #2100 - /?page_id=2100 Theme<br><br>Name: Storefront<br>Version: 4.6.0<br>Author URL: https://woocommerce.com/<br>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<br>WooCommerce Support: ? Templates<br><br>Overrides: – Square<br><br>Environment: Production<br>Tokenization Enabled:<br>Debug Mode: Display at Checkout & Log Admin<br><br>Enabled Features: activity-panels<br>analytics<br>product-block-editor<br>coupons<br>core-profiler<br>customize-store<br>customer-effort-score-tracks<br>import-products-task<br>experimental-fashion-sample-products<br>shipping-smart-defaults<br>shipping-setting-tour<br>homescreen<br>marketing<br>mobile-app-banner<br>navigation<br>onboarding<br>onboarding-tasks<br>pattern-toolkit-full-composability<br>product-custom-fields<br>remote-inbox-notifications<br>remote-free-extensions<br>payment-gateway-suggestions<br>printful<br>shipping-label-banner<br>subscriptions<br>store-alerts<br>transient-notices<br>woo-mobile-welcome<br>wc-pay-promotion<br>wc-pay-welcome-page<br>launch-your-store<br><br>Disabled Features: experimental-blocks<br>minified-js<br>product-pre-publish-modal<br>settings<br>async-product-editor-category-field<br>product-editor-template-system<br><br>Daily Cron: ? Next scheduled: 2024-10-21 00:08:26 +00:00<br>Options: ?<br>Notes: 74<br>Onboarding: skipped Action Scheduler<br><br>Complete: 670<br>Oldest: 2024-09-19 19:44:18 +0000<br>Newest: 2024-10-20 19:10:30 +0000<br><br>Failed: 100<br>Oldest: 2024-07-10 03:41:25 +0000<br>Newest: 2024-10-20 19:10:30 +0000<br><br>Pending: 16<br>Oldest: 2024-10-21 06:22:58 +0000<br>Newest: 2024-10-29 00:33:36 +0000 Status report information<br><br>Generated at: 2024-10-20 19:10:33 +00:00<br>
    • This reply was modified 1 month ago by SethTurin.
    Thread Starter SethTurin

    (@sethturin)

    Hi again.

    I’ve found the cause of the issue. For me, this is happening because of the way woocommerce paypal payments (I’ll abbreviate WPP) interacts with another plugin – CartFlows. From what I can tell, the fix will have to come from the WPP side. Let me explain.

    For the credit card form, WPP has a checkbox that says “save to account”. When the product is a subscription, this checkbox is not clickable, and is checked by default for subscription products. Furthermore, this checkbox must be checked for it to save the info necessary for the subscription.

    The reason that last part matters is because cartflows has a feature that allows customers to choose between different products directly from the checkout page, and then dynamically updates the checkout page and the cart with the new product.

    When that dynamic update happens, the checkbox (which is rendered by the WPP plugin) does not update. So in the specific situation where a customer switches between a normal product and a subscription product, as is my situation, the necessary checked-and-unchangeable checkbox is never rendered. Because the necessary checkbox isn’t rendered, it doesn’t save the customer information, needed for the subscriptions to work.

    This fix must be on the WPP side, because cartflows has no knowledge of which payment plugin a site is using, but WPP can surely detect if there’s been dynamic updates to the products in the cart. Essentially, WPP just needs to update and re-render if there are any dynamic changes to the cart/checkout.

    Note: This issue also affects the rendering of the “Place order”, for which WPP and cartflows fight for control. I fixed this issue myself by writing some custom javascript to make them play nicely. but it’s potentially also worth looking into on your side. Again, it could be solved by re-rendering upon any dynamic changes.

    Please pass this on to the developers, and let me know if I can explain anything more clearly for them.

    Also, can you tell me any kind of timeline for when this could be fixed?

    Thread Starter SethTurin

    (@sethturin)

    Ok, then I can sadly confirm that the issue is not fixed, since I had 2.9.0 when the faulty subscriptions were ordered.

    How can I help get this solved quickly?

    Thread Starter SethTurin

    (@sethturin)

    Thanks for the quick response. Support here actually seems pretty good and I don’t know why you guys get so much grief from people.

    So just to clarify – is the patch already released? And if so, which version? I’m currently running 2.9.0.

    • This reply was modified 1 month, 2 weeks ago by SethTurin.
    Thread Starter SethTurin

    (@sethturin)

    More information that may be interesting: when I disable the COD and direct transfer options, they don’t update on the checkout page = that is, they still show.

    I don’t have any caching plugins.

    Thread Starter SethTurin

    (@sethturin)

    Ok I left something out. Regarding the setup that wordpress gives us, it instructs us to add the following to wp-coonfig:

    define('MULTISITE', true);
    define('SUBDOMAIN_INSTALL', false);
    define('DOMAIN_CURRENT_SITE', 'example.com');
    define('PATH_CURRENT_SITE', '/');
    define('SITE_ID_CURRENT_SITE', 1);
    define('BLOG_ID_CURRENT_SITE', 1);

    Added just like this, the blog simply redirects to our main site. The database error only happens when we change example.com to network.example.com.

    Ok I think that’s everything.

Viewing 14 replies - 1 through 14 (of 14 total)