Mobile App Refresh Campaign [Banner] 2024

Product Icon

Avalara AvaTax

Automate tax compliance for your WooCommerce store. From sales tax calculation and tax returns to exempt sales and more.

Latest release 2.7.0 renewal failure conflict with Woo Subscriptions – failed scheduled action

Woo Subscription renewals began failing immediately following upgrade from 2.6.1 to 2.7.0. These began appearing as failed scheduled actions in the WP dashboard and Woo log. Failure occurred prior to payment. Attempt to manually process renewals per Woo Subscription guidelines (link below) resulted in critical error.

Avatax plugin also had errors in log with corresponding timestamps to renewal failures every day since update (screenshots attached).

Reverting to 2.6.1 resolved the problem.

Woo Subscription Guidelines: woocommerce.com/document/scheduled-action-errors/?quid=d3c1837334a2f53f7fe19921c1403007#section-6

Critical Error Report:
WordPress version 6.4.2
Current plugin: Avalara AvaTax (version 2.7.0)
PHP version 8.2.14

Error Details
=============
An error of type E_ERROR was caused in line 300 of the file /www/wp-content/plugins/woocommerce-avatax/src/api/responses/class-wc-avatax-api-tax-response.php. Error message: Uncaught TypeError: array_reduce(): Argument #1 ($array) must be of type array, null given in /www/wp-content/plugins/woocommerce-avatax/src/api/responses/class-wc-avatax-api-tax-response.php:300
Stack trace:
#0 /www/wp-content/plugins/woocommerce-avatax/src/api/responses/class-wc-avatax-api-tax-response.php(300): array_reduce(NULL, Object(Closure), Array)
#1 /www/wp-content/plugins/woocommerce-avatax/src/api/responses/class-wc-avatax-api-tax-response.php(118): WC_AvaTax_API_Tax_Response->get_duplicate_tax_rate_codes(NULL)
#2 /www/wp-content/plugins/woocommerce-avatax/src/class-wc-avatax-order-handler.php(558): WC_AvaTax_API_Tax_Response->get_lines()
#3 /www/wp-content/plugins/woocommerce-avatax/src/integrations/class-wc-avatax-integrations.php(151): WC_AvaTax_Order_Handler->calculate_order_tax(Object(WC_Subscription), false, true)
#4 /wordpress/wp-includes/class-wp-hook.php(324): WC_AvaTax_Integrations->recalculate_renewal_taxes(Object(AutomatticWooCommerceAdminOverridesOrder), Object(WC_Subscription))
#5 /wordpress/wp-includes/plugin.php(205): WP_Hook->apply_filters(Object(AutomatticWooCommerceAdminOverridesOrder), Array)
#6 /www/wp-content/plugins/woocommerce-subscriptions/vendor/woocommerce/subscriptions-core/includes/wcs-renewal-functions.php(38): apply_filters(‘wcs_renewal_ord…’, Object(AutomatticWooCommerceAdminOverridesOrder), Object(WC_Subscription))
#7 /www/wp-content/plugins/woocommerce-subscriptions/vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-manager.php(141): wcs_create_renewal_order(Object(WC_Subscription))
#8 /www/wp-content/plugins/woocommerce-subscriptions/vendor/woocommerce/subscriptions-core/includes/class-wc-subscriptions-manager.php(114): WC_Subscriptions_Manager::process_renewal(15687, ‘active’, ‘Subscription re…’)
#9 /wordpress/wp-includes/class-wp-hook.php(324): WC_Subscriptions_Manager::prepare_renewal(15687)
#10 /wordpress/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array)
#11 /wordpress/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
#12 /www/wp-content/plugins/woocommerce-subscriptions/vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-meta-boxes.php(244): do_action(‘woocommerce_sch…’, 15687)
#13 /wordpress/wp-includes/class-wp-hook.php(324): WCS_Admin_Meta_Boxes::process_renewal_action_request(Object(WC_Subscription))
#14 /wordpress/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(”, Array)
#15 /wordpress/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
#16 /www/wp-content/plugins/woocommerce/includes/admin/meta-boxes/class-wc-meta-box-order-actions.php(173): do_action(‘woocommerce_ord…’, Object(WC_Subscription))
#17 /wordpress/wp-includes/class-wp-hook.php(324): WC_Meta_Box_Order_Actions::save(15687, Object(WP_Post))
#18 /wordpress/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array)
#19 /wordpress/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
#20 /www/wp-content/plugins/woocommerce/includes/admin/class-wc-admin-meta-boxes.php(263): do_action(‘woocommerce_pro…’, 15687, Object(WP_Post))
#21 /wordpress/wp-includes/class-wp-hook.php(326): WC_Admin_Meta_Boxes->save_meta_boxes(15687, Object(WP_Post))
#22 /wordpress/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(”, Array)
#23 /wordpress/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
#24 /wordpress/wp-includes/post.php(4760): do_action(‘save_post’, 15687, Object(WP_Post), true)
#25 /wordpress/wp-includes/post.php(4862): wp_insert_post(Array, false, true)
#26 /wordpress/wp-admin/includes/post.php(453): wp_update_post(Array)
#27 /wordpress/wp-admin/post.php(227): edit_post()
#28 {main}
thrown

Screenshots

Author

ropbrands

Current Status

Open

Last updated: January 19, 2024

0 comments

Log in to comment on this feature request.