That’s maybe not really the right anwser, but the way to test if prices are pulled into the cart and the way to recalculate cart totals.
add_action('template_redirect', 'test_cart_values');
function test_cart_values(){
$cart_items = WC()->cart->get_cart();
if(is_cart() || is_checkout() ){
var_dump($cart);
foreach($cart_items as $item){
if($item['line_subtotal'] == '' or $item['line_subtotal'] == 0){
$calculate_once_again = true;
}
}
if($calculate_once_again == true){
WC()->cart->calculate_totals();
}
}
}
Note that you can get the cart from session in an other way.
Remove var_dump() if you are on a production server.
Hope it helps