Forum Replies Created

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

    (@vsourztesting)

    Hi,

    Could you please share if there has been any progress on this?

    Thanks,

    Thread Starter John

    (@vsourztesting)

    Hi,

    Please find the details below.

    1. Can you share with us the full error stack please (not the trimmed version)? That will allow us to better debug this, and see what could be happening.

    => Please find the complete error message below for your reference.

    ————————————-

    Error Type: Call to a member function get_name() on bool

    Error Details: #0 /public_html/wp-includes/class-wp-hook.php(341): WSAL\WP_Sensors_Helpers\WooCommerce_Sensor_Helper_Second::event_order_items_removed() #1 /public_html/wp-includes/class-wp-hook.php(365): WP_Hook->apply_filters() #2 /public_html/wp-includes/plugin.php(522): WP_Hook->do_action() #3 /public_html/wp-content/plugins/woocommerce/includes/data-stores/abstract-wc-order-item-type-data-store.php(140): do_action() #4 /public_html/wp-content/plugins/woocommerce/includes/class-wc-data-store.php(207): Abstract_WC_Order_Item_Type_Data_Store->delete() #5 /public_html/wp-content/plugins/woocommerce/includes/abstracts/abstract-wc-data.php(213): WC_Data_Store->delete() #6 /public_html/wp-content/plugins/woocommerce/includes/abstracts/abstract-wc-order.php(278): WC_Data->delete() #7 /public_html/wp-content/plugins/woocommerce/includes/abstracts/abstract-wc-order.php(227): WC_Abstract_Order->save_items() #8 /public_html/wp-content/plugins/woocommerce/includes/class-wc-order.php(284): WC_Abstract_Order->save() #9 /public_html/wp-content/plugins/vsz-wc-data-sync/admin/partials/vsz_wc_sage_order_data_sync.php(854): WC_Order->save() #10 /public_html/wp-content/plugins/vsz-wc-data-sync/admin/class-vsz_wc_data_sync-admin.php(1275): require_once(‘…’) #11 /public_html/wp-includes/class-wp-hook.php(341): Vsz_wc_data_sync_Admin->vsz_wc_sage_order_data_sync_callback() #12 /public_html/wp-includes/class-wp-hook.php(365): WP_Hook->apply_filters() #13 /public_html/wp-includes/plugin.php(570): WP_Hook->do_action() #14 phar:///usr/local/bin/wp/vendor/wp-cli/cron-command/src/Cron_Event_Command.php(358): do_action_ref_array() #15 phar:///usr/local/bin/wp/vendor/wp-cli/cron-command/src/Cron_Event_Command.php(238): Cron_Event_Command::run_event() #16 [internal function]: Cron_Event_Command->run() #17 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/CommandFactory.php(100): call_user_func() #18 [internal function]: WP_CLI\Dispatcher\CommandFactory::WP_CLI\Dispatcher\{closure}() #19 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/Subcommand.php(497): call_user_func() #20 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(470): WP_CLI\Dispatcher\Subcommand->invoke() #21 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(493): WP_CLI\Runner->run_command() #22 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(1295): WP_CLI\Runner->run_command_and_exit() #23 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/LaunchRunner.php(28): WP_CLI\Runner->start() #24 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/bootstrap.php(84): WP_CLI\Bootstrap\LaunchRunner->process() #25 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/wp-cli.php(35): WP_CLI\bootstrap() #26 phar:///usr/local/bin/wp/php/boot-phar.php(20): include(‘…’) #27 /usr/local/bin/wp(4): include(‘…’) #28 {main}

    ————————————-

    1. You mentioned that “after adding order items via a third-party sync process.” – can you describe the process please, and also let us know what tools/plugins and processes are going on? It would be best to understand the context in which the error occurs better.

    => We are using the custom code below to sync order data on the website. However, when the order save action is triggered, it generates an error.

    ———————————–

    if( isset( $web_item[‘sku’] ) && !empty( $web_item[‘sku’] ) && !empty($arrExistSKUs) && in_array($web_item[‘sku’],$arrExistSKUs)){
    $productId = array_search($web_item[‘sku’], $arrExistSKUs);
    }else{
    $productId = 0;
    }
    $count++;

    $item = new WC_Order_Item_Product();
    $item->set_name( $web_item[‘name’] );
    $item->set_quantity( $web_item[‘quantity’] );
    $item->set_product_id( $productId );
    $item->set_subtotal( wc_format_decimal( $web_item[‘subtotal’] * $web_item[‘quantity’] ) );
    $item->set_total( wc_format_decimal( $web_item[‘total’] ) );
    $item->set_total_tax( wc_format_decimal( $web_item[‘total_tax’] ) );

    //Save the item
    $order->add_item( $item );

    // Save order
    $order->save();

    ——————————

    1. Is this something you noticed after a plugin update e.g. Wp Activity Log or Woocommerce? Was it always like this?

    => The process runs smoothly when the WP Activity Log plugin is deactivated. However, once the plugin is enabled, the sync process is interrupted and the above error is generated.

    Please let us know if you require any further information.

    Thanks,

    Thread Starter John

    (@vsourztesting)

    Hi,

    Thank you for your support.

    As per the plugin documentation, you mentioned the following:

    “Charges that have been authorized can be voided. By voiding a charge, the payment will be cancelled and the order’s status will be updated to cancelled.”
    https://docs.paymentplugins.com/wc-stripe/config/#/admins?id=void-an-order

    Based on this, the plugin updates the order status to “Cancelled” on the website.

    Could you please confirm or share the hook name that triggers the order status update on the website when Stripe processes a partial or full refund?

    Let us know if you have any questions or concerns.

    Thanks,

    Thread Starter John

    (@vsourztesting)

    Hi,

    I hope you’re doing well!

    We are using multiple add-ons on the website, so a quick update isn’t possible at the moment. We plan to update to the versions you’ve shared, but in the meantime, is there a quick solution we can implement to fix this?
    Is it possible to bypass the CSRF validation on the checkout page? If so, could you please provide guidance on how to do this?

    Thanks,

    Thread Starter John

    (@vsourztesting)

    Hi,

    Thank you for your response.
    Please find our comments below, alongside yours.

    Are all customers experiencing this error, or does it only happen for some?
    => This only happens occasionally and does not affect all customers.

    Which payment method(s) are customers using when the error occurs?
    => The customers are using the ‘Stripe Credit Card / Debit Card’ payment method.

    Are you able to replicate the issue on your end?
    => Unfortunately, we have not been able to reproduce this issue on our end.

    We have verified that the webhook is configured correctly and shows as ‘Enabled’.
    You can access the system report via the URL below. Additionally, there are no fatal error log files present.

    https://pastebin.com/iZDkQcDd

    Thanks,

    Thread Starter John

    (@vsourztesting)

    Hi,

    Yes, we have submitted that support request, and that plugin is not providing an extend authorizations period feature for more than 7 days, so now we are using the 7-day authorizations feature.

    We have looked at your plugin settings, and you have mentioned the “Extend authorizations” feature. That’s why we setup the plugin and faced an error so shared with you.

    Now, again, can we achieve this feature with your plugin? Please confirm so we will do settings as you suggested and check the payment process accordingly.

    Thanks,

    • This reply was modified 1 year, 7 months ago by John.
    Thread Starter John

    (@vsourztesting)

    Hi,

    We require an “authorization on checkout, and capture later” feature with a plugin, and we need to extend payment authorization validity for 30 days; within 30 days, the client will capture the amount.

    We have authorization feature access within the Strip account, and it is working fine with another Strip plugin.
    Our main concern is that other plugins are providing an authorization feature for 7 days, but we need to extend it up to 30 days.

    Could we achieve this requirement with your plugin? If yes, then which settings do we need to enable? Please provide us with the necessary steps to follow.

    We have followed the above steps, but we are facing an error. That’s why we shared the Strip response with you.

    Thanks,

    Thread Starter John

    (@vsourztesting)

    Hi,

    Thank you for your response.

    We have enabled the charge type “Authorize” at the back office and completed the payment process, but we are facing the below error.

    “This account is not eligible for the requested card features. See https://stripe.com/docs/payments/flexible-payments for more details.”

    For more details, please see the below Strip API response.

    “object”: “payment_intent”,
    “amount”: 4776,
    “amount_details”: {
    “tip”: {}
    },
    “automatic_payment_methods”: null,
    “canceled_at”: null,
    “cancellation_reason”: null,
    “capture_method”: “manual”,
    “client_secret”: “**”,
    “confirmation_method”: “automatic”,
    “created”: 1730206639,
    “currency”: “gbp”,
    “description”: “Order 1422323684 from ***”,
    “last_payment_error”: {
    “code”: “payment_intent_invalid_parameter”,
    “doc_url”: “https://stripe.com/docs/error-codes/payment-intent-invalid-parameter”,
    “message”: “This account is not eligible for the requested card features. See https://stripe.com/docs/payments/flexible-payments for more details.”,
    “payment_method”: {

    }

    We have enabled and disabled this “Extended Authorization” option and checked but faced the same error.

    Let us know if you have any concerns.

    Thanks,

    Thread Starter John

    (@vsourztesting)

    Hi Lucian,

    Please fine below our comments with your comments.
    Can you share with us the rest of the error details (if there are any?). At first glance, it seems like the error code is incomplete, so just double-checking.
    => We are getting only the above error within the debug log file.

    1. Can you tell me a few details regarding the context in which this happens:
      a) WordPress version of your site
      => WordPress version : 6.6.1

    b) PHP version of the site
    => PHP version : 8.2

    c) Woocommerce version currently installed
    => Woocommerce version : 9.1.4

    d) What plugin handles the import of orders? If it’s a Free plugin, can you share it’s URL with us so we can check?
    => We are not using any 3rd party plugin for import orders on the website; we have created a custom PHP script for import orders, and without activating this plugin, it is working properly.

    1. Can you elaborate a bit on the actual process of order import? Is there anything in particular we should know about regarding this import process? When does the error actually get triggered? Is it a one-time error, or can it be reproduced at any time following certain steps that you can describe?

    => We are importing orders through the cron process so we cannot generate errors from our end, and it is generating randomly.
    As per error details, we are assuming this error generates when we are adding a product with an order, but that product does not exist on the website, and this plugin tries to get those product details from the website, but the product does not exist, so the plugin generates a fatal error.

    Please assume the above case with a fatal error and analyse your plugin code accordingly.

    Let us know if you have any concerns.

    Thanks

    Thread Starter John

    (@vsourztesting)

    Hi Shameem,

    We are facing this issue randomly, not a continue, so how can we track this? This issue is facing the customer, and it is affecting a business.
    Let us know if you have any concerns.

    Thanks

    Thread Starter John

    (@vsourztesting)

    Hi Zubair,

    Thank you for a response, Please see below our comments with your comments, which you asked.

    1- When did you first notice this issue?
    => First time we faced this issue on the 15th of August 2024.

    2- Is this behavior occurring with any other payment methods, or is it specific to Stripe?
    You might want to enable a temporary payment method like Check or Cash on Delivery to see if the issue persists.
    => No, we did not face this issue with other payment methods.

    3- Could you share your site’s URL so I can take a closer look?
    Leave Check or Cash on Delivery payment method for me to test the process.
    => You can check website details at the below URL.
    https://password.link/_xug29q/#I09ZZjcyP09tU1E0L1lQZ0Ay

    Let us know if you have any concerns.

    Thanks,

    Thread Starter John

    (@vsourztesting)

    Hi Takayuki,

    below is the plugin URL we are using,
    https://ww.wp.xz.cn/plugins/cf7-repeatable-fields/

    Or please suggest if you have any other repeater field plugin that we have use

    Thread Starter John

    (@vsourztesting)

    Hi Amir,

    Thank you for your reply.

    There are a lot of pending actions in the back office. Could you please provide the name of the analytics action so that we can run it manually from the back office?

    Let us know if you require more information.

    Regards,

    Thread Starter John

    (@vsourztesting)

    Hi @ihereira,

    Thank you for your reply.

    We have checked the given URL, but it is not relevant for us.
    When we are changing the order status programmatically at that time, email is not sent.
    If we change the order status in the back office at that time, an email is sent to the customer.

    We debugged and discovered that when we changed the order status at that time, the “WC_Email_Customer_Completed_Order” class did not exist.

    Due to the above reasons, the completed email was not sent to the customer. Please confirm.

    Do we need to pass any additional parameters within the below function to send the completed email to the customer?

    $order->update_status($orderStatus);

    Thanks,

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