Hey @DISOA82 , What you are describing usually points to the form not actually being eligible to display, even though window.klaviyo.openform( ) is being called correctly. Since it still works in Shopify preview but not on the live store, I would first check whether the form has any leftover display conditions. Sometimes after enabling and disabling URL targeting, klaviyo can take a little while to refresh the live version or another targeting rule (device type, visitor type, frequency limits, or page exclusions) is still preventing it from showing .
I would also open the browser console and check for any JavaScript errors or conflicts from other popup, cookie, or optimization apps. A Script conflict can stop the form from rendering even though the promise stays pending.... One more thing I would verify is whether the form is actually being requested in the Network tab. If no request is made on the live site but it works in preview, that usually narrows it down to targeting or conflict rather than the form itself.
Now a quick test is to duplicate the form, leave it with no targeting rules at all then set it to display on all pages. Clear your browser cache or test in an incognito window and see if openform( ) works. If the duplicate opens, the issue is almost certainly tied to the original form's display configuration rather than your code.
But if I may ask, are you using a custom theme or any apps like consent Managers, pop builders etc?