Automattic / woocommerce-services

WooCommerce Services is a feature plugin that integrates hosted services into WooCommerce (3.0+), and currently includes automated tax rates and the ability to purchase and print USPS shipping labels.
GNU General Public License v2.0
107 stars 20 forks source link

WooCommerce Subscriptions Renewals: Critical error with WooCommerce Tax and Avatax #2247

Open tijosh opened 3 years ago

tijosh commented 3 years ago

Description

When WooCommerce Shipping & Tax is active with “Enable automated taxes”, and AvaTax is also active and calculating taxes, WooCommerce Subscriptions renewals cause the site to throw a critical error and do not complete.

Steps to Reproduce

  1. Install WooCommerce Shipping & Tax, WooCommerce AvaTax, and WooCommerce Subscriptions
  2. Configure AvaTax account so that tax calculation is active
  3. Enable WooCommerce Tax automated taxes at WooCommerce > Settings > Tax
  4. Create a new subscription at WooCommerce > Subscriptions with any payment method, or choose an existing subscription that is Active.
  5. In Subscription Actions, select "Process Renewal"
  6. See critical error on site; note that subscription remains On Hold with associated renewal order in Pending Payment status.

If WooCommerce Tax automated taxes are disabled, the error is not thrown.

Screenshots

Screenshot Link to image: https://d.pr/i/oojUAm

Screenshot Link to image: https://d.pr/i/Yyp6mg

Screenshot Link to image: https://d.pr/i/8lGIlz

Screenshot Link to image: https://d.pr/i/8LaPo2

Additional details

Stack Trace ``` CRITICAL Uncaught Error: Call to a member function get() on null in /srv/htdocs/wp-content/plugins/woocommerce-services/classes/class-wc-connect-taxjar-integration.php:781 Stack trace: #0 /wordpress/core/5.5.3/wp-includes/class-wp-hook.php(287): WC_Connect_TaxJar_Integration->append_base_address_to_customer_taxable_address(Array) #1 /wordpress/core/5.5.3/wp-includes/plugin.php(206): WP_Hook->apply_filters(Array, Array) #2 /srv/htdocs/wp-content/plugins/woocommerce-avatax/includes/class-wc-avatax-order-handler.php(1119): apply_filters('woocommerce_cus...', Array) #3 /srv/htdocs/wp-content/plugins/woocommerce-avatax/includes/class-wc-avatax-order-handler.php(1068): WC_AvaTax_Order_Handler->get_taxable_address(Object(WC_Order)) #4 /srv/htdocs/wp-content/plugins/woocommerce-avatax/includes/integrations/class-wc-avatax-integrations.php(146): WC_AvaTax_Order_Handler->is_order_taxable(Object(WC_Order)) #5 /wordpress/core/5.5.3/wp-includes/class-wp-hook.php(287): WC_AvaTax_Integrations->recalculate_renewal_taxes(Object(WC_Order), Object(WC_Subscription)) #6 /wordpress/core/5.5.3/wp-includes/plugin.php(206): WP_Hook->apply_filters(Object(WC_Order), Array) #7 /srv/htdocs/wp-content/plugins/woocommerce-subscriptions/includes/wcs-renewal-functions.php(38): apply_filters('wcs_renewal_ord...', Object(WC_Order), Object(WC_Subscription)) #8 /srv/htdocs/wp-content/plugins/woocommerce-subscriptions/includes/class-wc-subscriptions-manager.php(116): wcs_create_renewal_order(Object(WC_Subscription)) #9 /srv/htdocs/wp-content/plugins/woocommerce-subscriptions/includes/class-wc-subscriptions-manager.php(89): WC_Subscriptions_Manager::process_renewal(3205, 'active', 'Subscription re...') #10 /wordpress/core/5.5.3/wp-includes/class-wp-hook.php(287): WC_Subscriptions_Manager::prepare_renewal(3205) #11 /wordpress/core/5.5.3/wp-includes/class-wp-hook.php(311): WP_Hook->apply_filters(NULL, Array) #12 /wordpress/core/5.5.3/wp-includes/plugin.php(478): WP_Hook->do_action(Array) #13 /srv/htdocs/wp-content/plugins/woocommerce-subscriptions/includes/admin/class-wcs-admin-meta-boxes.php(189): do_action('woocommerce_sch...', 3205) #14 /wordpress/core/5.5.3/wp-includes/class-wp-hook.php(287): WCS_Admin_Meta_Boxes::process_renewal_action_request(Object(WC_Subscription)) #15 /wordpress/core/5.5.3/wp-includes/class-wp-hook.php(311): WP_Hook->apply_filters('', Array) #16 /wordpress/core/5.5.3/wp-includes/plugin.php(478): WP_Hook->do_action(Array) #17 /srv/htdocs/wp-content/plugins/woocommerce/includes/admin/meta-boxes/class-wc-meta-box-order-actions.php(137): do_action('woocommerce_ord...', Object(WC_Subscription)) #18 /wordpress/core/5.5.3/wp-includes/class-wp-hook.php(287): WC_Meta_Box_Order_Actions::save(3205, Object(WP_Post)) #19 /wordpress/core/5.5.3/wp-includes/class-wp-hook.php(311): WP_Hook->apply_filters(NULL, Array) #20 /wordpress/core/5.5.3/wp-includes/plugin.php(478): WP_Hook->do_action(Array) #21 /srv/htdocs/wp-content/plugins/woocommerce/includes/admin/class-wc-admin-meta-boxes.php(220): do_action('woocommerce_pro...', 3205, Object(WP_Post)) #22 /wordpress/core/5.5.3/wp-includes/class-wp-hook.php(289): WC_Admin_Meta_Boxes->save_meta_boxes(3205, Object(WP_Post)) #23 /wordpress/core/5.5.3/wp-includes/class-wp-hook.php(311): WP_Hook->apply_filters('', Array) #24 /wordpress/core/5.5.3/wp-includes/plugin.php(478): WP_Hook->do_action(Array) #25 /wordpress/core/5.5.3/wp-includes/post.php(4260): do_action('save_post', 3205, Object(WP_Post), true) #26 /wordpress/core/5.5.3/wp-includes/post.php(4354): wp_insert_post(Array, false) #27 /wordpress/core/5.5.3/wp-admin/includes/post.php(419): wp_update_post(Array) #28 /wordpress/core/5.5.3/wp-admin/post.php(227): edit_post() #29 {main} thrown in /srv/htdocs/wp-content/plugins/woocommerce-services/classes/class-wc-connect-taxjar-integration.php on line 781 ```
System Status ``` ### WordPress Environment ### WC Version: 4.6.1 REST API Version: ✔ 4.6.1 WC Blocks Version: ✔ 3.4.0 Action Scheduler Version: ✔ 3.1.6 WC Admin Version: ✔ 1.6.2 Log Directory Writable: ✔ WP Version: 5.5.3 WP Multisite: – WP Memory Limit: 256 MB WP Debug Mode: ✔ WP Cron: ✔ Language: en_US External object cache: ✔ ### Server Environment ### Server Info: nginx PHP Version: 7.3.23 PHP Post Max Size: 2 GB PHP Time Limit: 1200 PHP Max Input Vars: 6144 cURL Version: 7.72.0 OpenSSL/1.1.1d SUHOSIN Installed: – MySQL Version: 5.5.5-10.3.23-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: 4.6.1 WC Database Prefix: wp_ Total Database Size: 31.17MB Database Data Size: 21.34MB Database Index Size: 9.83MB wp_woocommerce_sessions: Data: 0.05MB + 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.06MB + Index: 0.02MB + Engine InnoDB wp_woocommerce_order_itemmeta: Data: 0.31MB + Index: 0.27MB + 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.06MB + Index: 0.02MB + Engine InnoDB wp_woocommerce_payment_tokenmeta: Data: 0.09MB + Index: 0.11MB + Engine InnoDB wp_woocommerce_log: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_actionscheduler_actions: Data: 2.02MB + Index: 1.00MB + 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: 2.22MB + Index: 1.72MB + Engine InnoDB wp_auctions_for_woocommerce_log: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_automatewoo_abandoned_carts: Data: 0.02MB + Index: 0.08MB + Engine InnoDB wp_automatewoo_customers: Data: 0.02MB + Index: 0.09MB + Engine InnoDB wp_automatewoo_customer_meta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_automatewoo_events: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_automatewoo_guests: Data: 0.02MB + Index: 0.06MB + Engine InnoDB wp_automatewoo_guest_meta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_automatewoo_logs: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_automatewoo_log_meta: Data: 0.05MB + Index: 0.03MB + Engine InnoDB wp_automatewoo_queue: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_automatewoo_queue_meta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_commentmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_comments: Data: 0.13MB + Index: 0.09MB + Engine InnoDB wp_followup_coupons: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_followup_coupon_logs: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_followup_customers: Data: 0.02MB + Index: 0.06MB + Engine InnoDB wp_followup_customer_carts: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_followup_customer_notes: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_followup_customer_orders: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_followup_email_excludes: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_followup_email_logs: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_followup_email_orders: Data: 0.08MB + Index: 0.09MB + Engine InnoDB wp_followup_email_tracking: Data: 0.02MB + Index: 0.08MB + Engine InnoDB wp_followup_followup_history: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_followup_order_categories: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_followup_order_items: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_followup_subscribers: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_followup_subscribers_to_lists: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_followup_subscriber_lists: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_gf_draft_submissions: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_gf_entry: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_gf_entry_meta: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_gf_entry_notes: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_gf_form: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_gf_form_meta: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_gf_form_revisions: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_gf_form_view: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_links: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_ms_snippets: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_options: Data: 2.03MB + Index: 0.16MB + Engine InnoDB wp_pmxi_files: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_pmxi_hash: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_pmxi_history: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_pmxi_images: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_pmxi_imports: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_pmxi_posts: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_pmxi_templates: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_postmeta: Data: 3.50MB + Index: 1.98MB + Engine InnoDB wp_posts: Data: 2.22MB + Index: 0.22MB + Engine InnoDB wp_snippets: Data: 0.02MB + Index: 0.00MB + 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.06MB + Index: 0.02MB + Engine InnoDB wp_term_taxonomy: Data: 0.08MB + Index: 0.03MB + Engine InnoDB wp_usermeta: Data: 0.06MB + Index: 0.06MB + Engine InnoDB wp_users: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_wcpv_commissions: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_wcpv_per_product_shipping_rules: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_wcrp_rental_products_rentals: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_wc_admin_notes: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_wc_admin_note_actions: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_wc_bookings_availability: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_wc_bookings_availabilitymeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_wc_booking_relationships: Data: 0.02MB + Index: 0.03MB + 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_deposits_payment_plans: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_wc_deposits_payment_plans_schedule: Data: 0.02MB + Index: 0.02MB + 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.05MB + Index: 0.05MB + Engine InnoDB wp_wc_order_tax_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_wc_points_rewards_user_points: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_wc_points_rewards_user_points_log: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_wc_product_meta_lookup: Data: 0.05MB + Index: 0.09MB + 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_warranty_products: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_wc_webhooks: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_woocommerce_bundled_itemmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_woocommerce_bundled_items: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_woocommerce_exported_csv_items: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_woocommerce_gc_activity: Data: 0.02MB + Index: 0.06MB + Engine InnoDB wp_woocommerce_gc_cards: Data: 0.02MB + Index: 0.06MB + Engine InnoDB wp_woocommerce_mywhishlist: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_woocommerce_pickup_locations_geodata: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_woocommerce_prl_deploymentmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_woocommerce_prl_deployments: Data: 0.02MB + Index: 0.06MB + Engine InnoDB wp_woocommerce_prl_frequencies: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_woocommerce_prl_tracking_clicks: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_woocommerce_prl_tracking_conversions: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_woocommerce_prl_tracking_views: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_woocommerce_shipping_table_rates: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_woocommerce_square_customers: Data: 0.02MB + Index: 0.00MB + Engine InnoDB wp_wpml_mails: Data: 5.52MB + Index: 0.00MB + Engine InnoDB wp_wps_hit: Data: 0.02MB + Index: 0.14MB + Engine InnoDB wp_wps_index: Data: 0.33MB + Index: 0.48MB + Engine InnoDB wp_wps_key: Data: 0.05MB + Index: 0.02MB + Engine InnoDB wp_wps_object_term: Data: 0.05MB + Index: 0.09MB + Engine InnoDB wp_wps_object_type: Data: 0.02MB + Index: 0.08MB + Engine InnoDB wp_wps_query: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_wps_uri: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_wps_user_agent: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_yith_wcwl: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_yith_wcwl_lists: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_yoast_indexable: Data: 0.13MB + Index: 0.11MB + Engine InnoDB wp_yoast_indexable_hierarchy: Data: 0.02MB + Index: 0.05MB + Engine InnoDB wp_yoast_migrations: Data: 0.02MB + Index: 0.02MB + Engine InnoDB wp_yoast_primary_term: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_yoast_seo_links: Data: 0.02MB + Index: 0.03MB + Engine InnoDB wp_yoast_seo_meta: Data: 0.02MB + Index: 0.00MB + Engine InnoDB ### Post Type Counts ### amp_validated_url: 3 attachment: 42 aw_workflow: 13 bookable_resource: 8 csp_rules: 1 customize_changeset: 24 custom_css: 1 elementor_library: 1 event_ticket: 2 feedback: 5 follow_up_email: 1 global_product_addon: 1 jetpack_migration: 2 jp_img_sitemap: 1 jp_pay_product: 2 jp_sitemap: 1 jp_sitemap_master: 1 nav_menu_item: 6 page: 45 post: 88 prl_engine: 1 product: 153 product_variation: 205 revision: 94 shop_coupon: 58 shop_order: 194 shop_subscription: 28 wcpf_item: 8 wcpf_project: 2 wcpt: 1 wc_booking: 20 wc_membership_plan: 4 wc_pickup_location: 1 wc_user_membership: 1 ### Security ### Secure connection (HTTPS): ✔ Hide errors from visitors: ✔ ### Active Plugins (7) ### Akismet Anti-Spam: by Automattic – 4.1.7 Jetpack by WordPress.com: by Automattic – 9.0.2 User Role Editor: by Vladimir Garagulya – 4.56.1 WooCommerce AvaTax: by SkyVerge – 1.10.5 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Shipping & Tax: by Automattic – 1.25.1 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Subscriptions: by WooCommerce – 3.0.9 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce: by Automattic – 4.6.1 ### Inactive Plugins (82) ### AMP: by AMP Project Contributors – 2.0.4 AutomateWoo: by WooCommerce – 5.1.1 AutomateWoo - Subscriptions Add-on: by WooCommerce – 1.2.1 – Installed version not tested with active version of WooCommerce 4.6.1 Bookings Helper: by WooCommerce – 1.0.3 – Installed version not tested with active version of WooCommerce 4.6.1 Classic Editor: by WordPress Contributors – 1.6 Code Snippets: by Code Snippets Pro – 2.14.0 Coming Soon Page, Maintenance Mode & Landing Pages by SeedProd: by SeedProd – 6.0.8.4 Enable jQuery Migrate Helper: by The WordPress Team – 1.1.0 Featured Listing for Product Vendors: by WooCommerce – 1.0.0 – Installed version not tested with active version of WooCommerce 4.6.1 Gravity Forms: by Gravity Forms – 2.4.20 Gutenberg: by Gutenberg Team – 9.2.2 Health Check & Troubleshooting: by The WordPress.org community – 1.4.5 Homepage Control: by WooThemes – 2.0.3 Layout Grid: by Automattic – 1.3 Loco Translate: by Tim Whitlock – 2.4.4 Page Optimize: by Automattic – 0.5.1 Product Brands for WooCommerce: by WP1 – 1.0.0 – Installed version not tested with active version of WooCommerce 4.6.1 Product Filters for WooCommerce: by WooCommerce – 1.2.2 (update to version 1.2.3 is available) – Installed version not tested with active version of WooCommerce 4.6.1 Product Importer: by Nxtal – 1.0.1 – Installed version not tested with active version of WooCommerce 4.6.1 Query Monitor: by John Blackbourn – 3.6.4 Role Based Pricing for WooCommerce: by Addify – 1.5.0 – Installed version not tested with active version of WooCommerce 4.6.1 Storefront Blog Customiser: by WooCommerce – 1.3.0 Storefront Mega Menus: by WooCommerce – 1.6.2 – Installed version not tested with active version of WooCommerce 4.6.1 Storefront Powerpack: by WooCommerce – 1.5.0 Wholesale For WooCommerce: by wpexpertsio – 1.3.4 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce - ShipStation Integration: by WooCommerce – 4.1.39 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Accommodation Bookings: by WooCommerce – 1.1.22 WooCommerce Additional Variation Images: by WooCommerce – 1.7.24 (update to version 1.7.26 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Advanced Ajax Layered Navigation: by WooCommerce – 1.4.26 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce All Products For Subscriptions: by SomewhereWarm – 3.1.18 WooCommerce Blocks: by Automattic – 3.7.0 WooCommerce Bookings: by WooCommerce – 1.15.26 (update to version 1.15.29 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Bookings Availability: by WooCommerce – 1.1.15 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Box Office: by WooCommerce – 1.1.29 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Brands: by WooCommerce – 1.6.20 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Checkout Field Editor: by WooCommerce – 1.5.36 (update to version 1.5.37 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Composite Products: by SomewhereWarm – 7.0.6 (update to version 7.1.1 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Conditional Shipping and Payments: by SomewhereWarm – 1.8.6 WooCommerce Customer/Order/Coupon CSV Import Suite: by SkyVerge – 3.9.0 (update to version 3.9.1 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Customer/Order/Coupon Export: by SkyVerge – 5.0.13 (update to version 5.1.2 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Deposits: by WooCommerce – 1.5.5 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Distance Rate Shipping: by Automattic – 1.0.26 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Dynamic Pricing: by Lucas Stark – 3.1.21 (update to version 3.1.22 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce FedEx Shipping: by WooCommerce – 3.4.32 (update to version 3.4.33 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Gift Cards: by SomewhereWarm – 1.5.1 WooCommerce Gravity Forms Product Add-Ons: by Lucas Stark – 3.3.15 (update to version 3.3.16 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Local Pickup Plus: by SkyVerge – 2.8.2 (update to version 2.9.2 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Memberships: by SkyVerge – 1.18.0 (update to version 1.19.2 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Min/Max Quantities: by WooCommerce – 2.4.19 (update to version 2.4.20 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Mix and Match Products: by Kathy Darling – 1.9.11 (update to version 1.10.4 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce One Page Checkout: by Automattic – 1.7.9 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Payments: by Automattic – 1.6.0 WooCommerce Payments Dev Tools: by Automattic – – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce PayPal Checkout Gateway: by WooCommerce – 2.1.0 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Points and Rewards: by WooCommerce – 1.6.37 (update to version 1.6.39 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Pre-Orders: by WooCommerce – 1.5.28 (update to version 1.5.29 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Product Add-ons: by WooCommerce – 3.1.0 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Product Bundles: by SomewhereWarm – 6.4.1 (update to version 6.4.2 is available) WooCommerce Product CSV Import Suite: by WooCommerce – 1.10.36 (update to version 1.10.37 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Product Finder: by WooCommerce – 1.2.16 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Product Vendors: by WooCommerce – 2.1.43 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Royal Mail: by WooCommerce – 2.5.31 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Shipment Tracking: by WooCommerce – 1.6.26 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Smart Coupons: by StoreApps – 4.8.0 (update to version 4.12.0 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Square: by WooCommerce – 2.2.4 WooCommerce Stamps.com API integration: by WooCommerce – 1.3.20 (update to version 1.3.21 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Store Credit: by Themesquad – 3.2.2 (update to version 3.3.0 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Stripe Gateway: by WooCommerce – 4.5.3 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Subscriptions CSV Importer and Exporter: by Prospress Inc – 2.1.0 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Subscriptions Gifting: by WooCommerce – 2.1.1 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Table Rate Shipping: by WooCommerce – 3.0.29 (update to version 3.0.30 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce UPS Shipping: by WooCommerce – 3.2.29 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce USPS Shipping: by WooCommerce – 4.4.47 (update to version 4.4.48 is available) – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Variation Swatches and Photos: by Lucas Stark – 3.1.2 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce WishLists: by Lucas Stark – 2.2.2 – Installed version not tested with active version of WooCommerce 4.6.1 WooCommerce Xero Integration: by WooCommerce – 1.7.33 – Installed version not tested with active version of WooCommerce 4.6.1 WordPress.com Editing Toolkit: by Automattic – 2.8.3 WordPress Importer: by wordpressdotorg – 0.7 WordPress Version Info: by alpipego – 1.2.1 WP All Import: by Soflyy – 3.5.6 WP Crontrol: by John Blackbourn & crontributors – 1.8.5 WP Mail Logging: by MailPoet – 1.9.7 ### Dropin Plugins (2) ### advanced-cache.php: advanced-cache.php object-cache.php: Memcached ### Must Use Plugins (2) ### Health Check Troubleshooting Mode: by – 1.7.2 WP.com Site Helper: by – ### Settings ### API Enabled: – Force SSL: – Currency: USD ($) Currency Position: left Thousand Separator: , Decimal Separator: . Number of Decimals: 2 Taxonomies: Product Types: accommodation-booking (accommodation-booking) auction (auction) booking (booking) bundle (bundle) composite (composite) external (external) grouped (grouped) mix and match (mix-and-match) paywall (paywall) simple (simple) subscription (subscription) variable (variable) variable subscription (variable-subscription) variation (variation) 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: ✔ ### WC Pages ### Shop base: #16 - /shop/ Cart: #17 - /cart/ Checkout: #18 - /checkout/ My account: #19 - /my-account/ Terms and conditions: #576 - /terms-and-conditions/ ### Theme ### Name: Storefront Version: 2.8.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://storetijosh5647382910.blog Subscription Statuses: wc-active: 6 wc-expired: 1 wc-pending-cancel: 2 wc-pending: 1 wc-on-hold: 15 wc-cancelled: 3 WooCommerce Account Connected: ✔ Yes Active Product Key: ❌ No Report Cache Enabled: ✔ Yes Cache Update Failures: ✔ 0 failure ### Store Setup ### Country / State: United States (US) — Idaho ### Subscriptions by Payment Gateway ### Cash on delivery: wc-on-hold: 1 other: wc-active: 3 wc-cancelled: 1 wc-on-hold: 3 wc-pending-cancel: 1 wc-cancelled: 2 wc-on-hold: 8 wc-pending-cancel: 1 ### Payment Gateway Support ### Cash on delivery: products ### Action Scheduler ### Canceled: 6 Oldest: -0001-11-30 00:00:00 +0000 Newest: -0001-11-30 00:00:00 +0000 Complete: 3,275 Oldest: 2020-10-05 06:00:35 +0000 Newest: 2020-11-05 03:17:05 +0000 Failed: 216 Oldest: 2020-09-02 21:30:44 +0000 Newest: 2020-10-16 18:38:28 +0000 Pending: 23 Oldest: 2020-11-05 03:17:12 +0000 Newest: 2020-11-30 16:31:46 +0000 ```
c-shultz commented 3 years ago

It's not to say that we shouldn't handle this more gracefully, but I'm curious what the use case would be for AvaTax plus WooCommerce Shipping & Tax automated taxes both being enabled at the same time?

Do you know if there's a valid reason for this setup, @tijosh?

tijosh commented 3 years ago

@c-shultz Agreed, there is no good reason to have both active. It can happen by accident, though, and it’s not always clear that “Enable Automated Taxes” is strictly limited to WooCommerce Taxes. A common misconception is that it functions more like a general on/off switch for taxes site-wide (such as the option at Settings > General).

katinthehatsite commented 3 years ago

@c-shultz We have one more customer who seems to have a very similar issue but processing orders through REST API with both WooCommerce Services and AvaTax enabled. This is the error that they are getting:

`2021-02-09T19:11:03+00:00 CRITICAL Uncaught Error: Call to a member function get() on null in /srv/htdocs/wp-content/plugins/woocommerce-services/classes/class-wc-connect-taxjar-integration.php:782 Stack trace:

0 /wordpress/core/5.6.1/wp-includes/class-wp-hook.php(287): WC_Connect_TaxJar_Integration->append_base_address_to_customer_taxable_address(Array)

1 /wordpress/core/5.6.1/wp-includes/plugin.php(212): WP_Hook->apply_filters(Array, Array)

2 /srv/htdocs/wp-content/plugins/woocommerce-avatax/includes/class-wc-avatax-order-handler.php(918): apply_filters('woocommerce_cus...', Array)

3 /srv/htdocs/wp-content/plugins/woocommerce-avatax/includes/class-wc-avatax-order-handler.php(867): WC_AvaTax_Order_Handler->get_taxable_address(Object(Automattic\WooCommerce\Admin\Overrides\Order))

4 /srv/htdocs/wp-content/plugins/woocommerce-avatax/includes/api/class-wc-avatax-rest-api.php(101): WC_AvaTax_Order_Handler->is_order_taxable(Object(Automattic\WooCommerce\Admin\Overrides\Order))

5 /wordpress/core/5.6.1/wp-includes/class-wp-hook.php(289): WC_AvaTax_REST_API->process_rest_api_order(Object(Automattic\WooCommerce\Admin\Overrides\Order))

6 /wordpress/core/5.6.1/wp-includes/class-wp-hook.php(311): WP_Hook->apply_filters('', Array)

7 /wordpress/core/5.6.1/wp-includes/plugin.php(484): WP_Hook->do_action(Array)

8 /srv/htdocs/wp-content/plugins/woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-crud-controller.php(254): do_action('woocommerce_res...', Object(Automattic\WooCommerce\Admin\Overrides\Order), Object(WP_REST_Request), false)

9 /wordpress/core/5.6.1/wp-includes/rest-api/class-wp-rest-server.php(1160): WC_REST_CRUD_Controller->update_item(Object(WP_REST_Request))

10 /wordpress/core/5.6.1/wp-includes/rest-api/class-wp-rest-server.php(1007): WP_REST_Server->respond_to_request(Object(WP_REST_Request), '/wc/v2/orders/(...', Array, NULL)

11 /wordpress/core/5.6.1/wp-includes/rest-api/class-wp-rest-server.php(440): WP_REST_Server->dispatch(Object(WP_REST_Request))

12 /wordpress/core/5.6.1/wp-includes/rest-api.php(354): WP_REST_Server->serve_request('/wc/v2/orders/7...')

13 /wordpress/core/5.6.1/wp-includes/class-wp-hook.php(287): rest_api_loaded(Object(WP))

14 /wordpress/core/5.6.1/wp-includes/class-wp-hook.php(311): WP_Hook->apply_filters(NULL, Array)

15 /wordpress/core/5.6.1/wp-includes/plugin.php(551): WP_Hook->do_action(Array)

16 /wordpress/core/5.6.1/wp-includes/class-wp.php(388): do_action_ref_array('parse_request', Array)

17 /wordpress/core/5.6.1/wp-includes/class-wp.php(745): WP->parse_request('')

18 /wordpress/core/5.6.1/wp-includes/functions.php(1291): WP->main('')

19 /wordpress/core/5.6.1/wp-blog-header.php(16): wp()

20 /wordpress/core/5.6.1/index.php(17): require('/wordpress/core...')

21 {main}

thrown in /srv/htdocs/wp-content/plugins/woocommerce-services/classes/class-wc-connect-taxjar-integration.php on line 782`

Does it look like they are affected by the same issue or is this something entirely different? Thanks!

Reference: 3726589-zen

c-shultz commented 3 years ago

@katinthehatsite ,

It could definitely be a similar or related issue. I would suggest they deactivate Avatax or deactivated automated taxes (which is powered by WooCommerce Tax). We can't make any guarantee about these two plugins being compatible, since they are both implementing automated tax functionality.

igotdes commented 3 years ago

This looks to be the same issue in #3885461-zen. I've followed the suggestion above and asked the user to choose between AvaTax and WooCommerce Tax.