I was automatically opted-into to the new seamless install flow

Although the documentation states here that the new seamless install flow is only required by October 26th, when I start my listing I only see the two options for seamless install. I cannot publish the app like that, since our app hasn’t introduced the handshake yet, but still uses OAuth and user sign-in.

Can somebody help me with this?

Hi @pnardmann, it’s so nice to have you on the HubSpot Community, welcome! :raising_hands:

Thanks for reaching out about this! I can confirm that as of April 2025, the updated app install flow requirement (selecting a redirect URL from your app settings instead of a custom URL) was rolled out to all new listings, regardless of when the developer account was created. This means the listing UI now only shows the seamless install flow options.

The October 26 deadline you’re referencing to are for apps that make changes to their listing, not just new listings. It seems your listing has already been opted into the seamless install flow previously, which is why you’d only see this option now. Once opted in, you cannot revert. Is it the case for you?

The listing UI itself has already enforced the new flow for all new listings since April 2025.

The good news is that the seamless install flow is compatible with standard OAuth, you’ll then need to:

  • Ensure your OAuth redirect URL is configured in your app’s auth settings.

  • Select that redirect URL as the install button destination in the listing flow.

The seamless install flow routes users through HubSpot’s unified install experience and then redirects to your OAuth flow, it doesn’t require the handshake to be implemented yet.

If you’re still blocked after trying this, please let us know and we can look into this further.

I’d love to hear from our Top Experts: Hi @Anton, @sylvain_tirreau and @andrus do you have suggestions to help @pnardmann, please?

Thanks so much and have a wonderful day!
Bérangère

This post was created with the assistance of AI tools

-Please note that I’m out of the office until August 27th-

@Berengere thanks for reaching out.

Sadly I could not confirm

The seamless install flow routes users through HubSpot’s unified install experience and then redirects to your OAuth flow, it doesn’t require the handshake to be implemented yet.

When I check the install in the preview according to our normal oauth where we then connect the app, since there was handshake the overlay did not close and the app install flow did not continue.

Maybe we are doing something wrong with the OAUTH flow. The app does get connected. And correctly linked etc. but since the handshake is not implemented yet the seamless install does not continue - since on our end we need a signed in user. The user then keeps hanging on our end in the confirmed connection screen - we also have a connection from inside fynk - and the flow does not continue.

Here’s a screenshot (of it being stuck with the preview) we pushed our launch and marketplace applying now because of it. The issue mainly is also that it can ONLY be tested with the seamless install if you are in the publishing process. Which e.g. can’t be done with a local testing environment. It would be a great way if we could test it otherwise somehow.

Hey @pnardmann, thanks so much for getting back to us with these additional details!

To clarify, the October 26, 2026 deadline requires all apps making listing changes to use the updated install flow, which has two paths:

  • Without Partner Sign In: no account creation needed; OAuth handled in the background

  • With Partner Sign In: for apps that require users to log in or create an account before connecting.

Your app presents a login/signup form, generates a state token, redirects to HubSpot for OAuth, then receives a finalization callback (step=finalize) with the OAuth code.

In that case, your app needs the “With Partner Sign In” install flow, it’s designed exactly for apps like yours that require users to log in before OAuth. You need to implement the authorize/finalize handshake.

Here is why the flow stalls: Your install URL endpoint currently doesn’t handle the step parameter or redirect to returnUrl. The wizard sends step=authorize first (your app signs in the user, generates a state token, redirects back to HubSpot), then step=finalize (HubSpot sends the OAuth code + state; you exchange the code and must redirect to returnUrl). Without that final redirect, the install wizard never receives the completion signal and hangs indefinitely.

Here is what to do: You can migrate gradually. Your app can detect which flow is in use by checking for the step parameter in incoming requests. You can implement the two-step flow in your install URL endpoint:

  • step=authorize → show login, generate state token, redirect to ${returnUrl}?state=${state}

  • step=finalize → validate state, exchange OAuth code, redirect to returnUrl

  • no step parameter → older one-step flow (existing behavior)

Also, please ensure your finalize endpoint allows iframe embedding, set Content-Security-Policy: frame-ancestors ‘self’.

For testing, you can test from the listing editor’s Preview button. You can also test the flow logic locally by simulating the step, returnUrl, and state query parameters against your dev redirect URLs.

If you already opted into seamless install, you can’t revert, you must implement the flow to publish. If you haven’t opted in yet, the requirement takes effect October 26, 2026.

Here is the documentation for more details: " Understand app installation flow with the option for partner sign in - HubSpot docs "

I hope this helps!

Bérangère

This post was created with the assistance of AI tools

- Please note that I’m out of the office until August 27th -

Understood. So there is no way around NOT implementing the seamless flow anymore. I think your documentation seriously needs updating cause there are so many conflicting parts and dates, so it’s hard to find a way around it.

Especially if half the needed things are hidden behind creating a draft for the published app.

Will try to resolve it now. Thank you

Hi @pnardmann, when checking I could see that your account was created in 2026. The updated install flow is mandatory for developer accounts created after March 5, 2025: apps can no longer set a custom URL for the install button and must use a redirect URL from app settings, plus include at least one feature discovery card. Here is the documentation about this: " March 2025 Rollup "

However, let me double check internally to confirm why you’ve been opted in automatically, thanks for your patience.

And thanks for your valuable feedback about the documentation, I’ve passed it along internally for you!

Good luck resolving things, and if you hit any roadblocks, let us know, we’d be glad to help!

Thanks and enjoy the weekend!

Bérangère

- Please note that I’m out of the office until August 27th -

Hi, @pnardmann I ran into a similar note on this. The docs say the seamless install flow isn’t mandatory until October 26, 2026, but that deadline only applies to apps that are already live and unchanged — the moment you go into the listing editor to publish or edit your listing now, HubSpot appears to be defaulting new/edited listings straight into the seamless flow options, even though the hard cutover date hasn’t hit yet.

Two things that should unblock you:

  1. Request an exemption: on your App Listing page there’s an option to apply for an exemption from the seamless install requirement. Approved exemptions remove the Install button from the marketplace listing itself, so it won’t force you into the two seamless-only options.
  2. Use your own site for installs in the meantime: if you don’t want to wait on the exemption, you can drive installs from a link on your own website/app using the standard OAuth flow instead of the marketplace’s Install button — that path isn’t affected by the seamless flow requirement, since it only applies to installs initiated from the HubSpot Marketplace listing itself, not external OAuth installs.

Since your app doesn’t use the partner-sign-in handshake yet, going the exemption route is probably the cleaner fix long-term rather than forcing a seamless flow implementation before you’re ready.