feat(analytics): complete Rybbit tracking integration
Some checks failed
Build and Deploy / build (push) Has been cancelled

- Add Rybbit server-side tracking to analytics-server.ts for order completion and revenue
- Add trackNewsletterSignup to analytics.ts and wire up NewsletterSection
- Add cart tracking to CartDrawer (cart view, remove from cart)
- All ecommerce events now track to both OpenPanel and Rybbit
This commit is contained in:
Unchained
2026-03-31 05:53:53 +02:00
parent bbe618f22d
commit d4039c6e3b
4 changed files with 96 additions and 3 deletions

View File

@@ -15,6 +15,7 @@ import {
trackRybbitWishlistAdd,
trackRybbitUserLogin,
trackRybbitUserRegister,
trackRybbitNewsletterSignup,
} from "@/lib/services/RybbitService";
export function useAnalytics() {
@@ -109,6 +110,9 @@ export function useAnalytics() {
case "user_register":
trackRybbitUserRegister(openPanelData.method);
break;
case "newsletter_signup":
trackRybbitNewsletterSignup(openPanelData.email, openPanelData.source);
break;
}
} catch (e) {
console.warn("[Rybbit] Tracking error:", e);
@@ -307,6 +311,13 @@ export function useAnalytics() {
});
}, [trackDual]);
const trackNewsletterSignup = useCallback((email: string, source: string) => {
trackDual("newsletter_signup", {
email,
source,
});
}, [trackDual]);
const identifyUser = useCallback((user: {
profileId: string;
email?: string;
@@ -338,6 +349,7 @@ export function useAnalytics() {
trackWishlistAdd,
trackUserLogin,
trackUserRegister,
trackNewsletterSignup,
identifyUser,
};
}