Why do customers see “Sorry, your session has expired”?
That is a nonce or session error, almost always caused by page caching of the checkout page or a stale woocommerce_cart_hash / session cookie. Cached pages serve an expired nonce, so the submit is rejected. We make sure the cart, checkout and my-account pages are excluded from full-page cache and that the session cookie behaves correctly behind your CDN or cache plugin.