From 2918bf425b28f1279cb26e0b53919e1243a9d050 Mon Sep 17 00:00:00 2001 From: Jacek Date: Wed, 21 Jan 2026 15:13:54 -0600 Subject: [PATCH 1/3] fix(shared): Remove billingEnabled gate from useStripeClerkLibs The SWR removal PR (#7568) inadvertently added a `billingEnabled` check to `useStripeClerkLibs` that wasn't present in the original SWR implementation. This caused Stripe elements to not load on the Billing screen because the query was gated by: - billing being enabled in environment settings - user being authenticated - clerk.loaded being true The original SWR implementation loaded the Stripe SDK unconditionally. This restores that behavior by removing the `useBillingHookEnabled` check from the hook. --- packages/shared/src/react/billing/useStripeClerkLibs.tsx | 4 ---- 1 file changed, 4 deletions(-) diff --git a/packages/shared/src/react/billing/useStripeClerkLibs.tsx b/packages/shared/src/react/billing/useStripeClerkLibs.tsx index 197df86743a..3a499ae36bc 100644 --- a/packages/shared/src/react/billing/useStripeClerkLibs.tsx +++ b/packages/shared/src/react/billing/useStripeClerkLibs.tsx @@ -2,7 +2,6 @@ import type { loadStripe } from '@stripe/stripe-js'; import { defineKeepPreviousDataFn } from '../clerk-rq/keep-previous-data'; import { useClerkQuery } from '../clerk-rq/useQuery'; -import { useBillingHookEnabled } from '../hooks/useBillingHookEnabled'; import { useClerk } from '../hooks/useClerk'; type LoadStripeFn = typeof loadStripe; @@ -19,15 +18,12 @@ export type UseStripeClerkLibsResult = StripeClerkLibs | null; function useStripeClerkLibs(): UseStripeClerkLibsResult { const clerk = useClerk(); - const billingEnabled = useBillingHookEnabled(); - const query = useClerkQuery({ queryKey: ['clerk-stripe-sdk'], queryFn: async () => { const loadStripe = (await clerk.__internal_loadStripeJs()) as LoadStripeFn; return { loadStripe }; }, - enabled: billingEnabled, staleTime: Infinity, refetchOnWindowFocus: false, placeholderData: defineKeepPreviousDataFn(true), From 3d646a2791acf758aa6abe32e7d34658fa892d1c Mon Sep 17 00:00:00 2001 From: Jacek Date: Wed, 21 Jan 2026 15:16:22 -0600 Subject: [PATCH 2/3] chore: add changeset --- .changeset/cute-hats-flow.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/cute-hats-flow.md diff --git a/.changeset/cute-hats-flow.md b/.changeset/cute-hats-flow.md new file mode 100644 index 00000000000..0faf048f9d9 --- /dev/null +++ b/.changeset/cute-hats-flow.md @@ -0,0 +1,5 @@ +--- +"@clerk/shared": patch +--- + +Fix Stripe elements not loading by removing the `billingEnabled` gate from `useStripeClerkLibs` that was inadvertently added during SWR removal From 3823115085b615b756ead44ac4b5de431d2363cb Mon Sep 17 00:00:00 2001 From: Jacek Radko Date: Wed, 21 Jan 2026 15:28:02 -0600 Subject: [PATCH 3/3] Update cute-hats-flow.md --- .changeset/cute-hats-flow.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/cute-hats-flow.md b/.changeset/cute-hats-flow.md index 0faf048f9d9..109015d018f 100644 --- a/.changeset/cute-hats-flow.md +++ b/.changeset/cute-hats-flow.md @@ -2,4 +2,4 @@ "@clerk/shared": patch --- -Fix Stripe elements not loading by removing the `billingEnabled` gate from `useStripeClerkLibs` that was inadvertently added during SWR removal +Fix Stripe elements not loading by removing the `billingEnabled` gate from `useStripeClerkLibs`