Every checkoutUrl ends up with password page / site under construction

I have a simple custom website that uses storefront APIs (to get products and create a checkout via cartCreate GraphQL API). Since last week, I’ve been experiencing a blocking issue. Suddenly, every checkout ends up on an “under construction” page (/password). The website had been working in production for ages. I wonder if it’s related to a release on Shopify side. I had similar issues (checkout suddenly broken) a few years ago ( Every checkout ends up out of stock error ). Frustrating.

I tried to upgrade the API version (from 2024-10 to 2025-10). But I still have the issue.

As a temporary fix (the same I used a few years ago) on my production website, I use the draftOrderCreate API (admin API). It’s a rate-limited API, so it’s only temporary (I use a small website, so no issue with the rate limit).

Here’s my graphQL query :

    mutation cartCreate($input: CartInput!) {
      cartCreate(input: $input) {
        cart {
           id
           checkoutUrl
           lines(first: 5) {
             edges {
               node {
                 id
                 quantity
               }
             }
           }
        }
      }
    }

Am I alone with this issue? Any ideas?

FYI, I contacted the partner support, and here’s the fix (and what changed recently):

Add query param to the checkoutUrl: channel=headless-storefronts

+ Remove password protection (if enabled)

  1. From the Shopify admin, under Sales channels, click Online Store > Preferences.

  2. In the Restrict store access section, deselect Restrict access to visitors with the password.

  3. Click Save.

Hopefully it will help.