It was a WP permalink problem, so it had nothing to do with woocommerce, but it took some time for me to realize the Checkout crashed in WP’s Post.php, not in WC.
Solved
class-wc-checkout.php was failing here:
if ($create_new_order) :
$order_id = wp_insert_post($order_data);
I had the too-many-redirections issue so the wp_insert_post didn’t retrieve an order_id and the checkout failed.