Notes · 2026-10-17

The 7 integrations that silently fail in AI-built apps

The page builder shows a form, a button, or a calendar. The provider behind it has its own URL, its own key, and its own way of rejecting you without changing the homepage.

Stripe Checkout

The session is created in the wrong mode, or not created, or created and then blocked on the way to checkout.stripe.com. Customers describe it as a broken button. The fix starts by finding the session id, or proving there is none.

Stripe webhooks

The card is charged. The endpoint is the preview host, the secret is from the other mode, or the handler parsed the body before it checked the signature. The order stays unpaid and no page on the marketing site changes color.

Resend

The thank-you page renders whether or not the API was called. An unverified from-domain, a key that never made it to production, or a thrown email template all look like an empty inbox. The Resend log is the source of truth, and only if a request was made.

Kit and ConvertKit

The embed id is from a form you duplicated, or the script was blocked, or the subscriber is pending because double opt-in did its job. The hosted Kit form is the control. If that works, stop debugging the account and fix the embed.

Mailchimp

The action URL is a different audience, the input is no longer named EMAIL, or the script host is blocked. A reload of your own page on submit means Mailchimp was never contacted.

Calendly and Zoom

A blank embed is a script, a height, or a dead event URL. A Zoom form that says thank you can still be a manual-approval webinar, a closed occurrence, or a meeting link. Open the provider URL on its own before you restyle the widget.

Supabase auth

The built-in mailer throttles, the redirect allow-list still says localhost, or the anon key in the deployed app points at another project. The homepage of the app does not reveal any of that. The Auth log does.

Written by LitTech LLC, the company that operates FunnelWatch.

Related