protected function process_order_without_payment($order_id)
{
$order = wc_get_order($order_id);
$order->payment_complete();
wc_empty_cart();
if (is_ajax()) {
wp_send_json(array('result' => 'success', 'redirect' => apply_filters('woocommerce_checkout_no_payment_needed_redirect', $order->get_checkout_order_received_url(), $order)));
} else {
wp_safe_redirect(apply_filters('woocommerce_checkout_no_payment_needed_redirect', $order->get_checkout_order_received_url(), $order));
exit;
}
}