Skip to content

serverTracker.trackBeginCheckout()

Server-side begin_checkout. Symmetric with tracker.trackBeginCheckout() but requires clientId for GA4 stitching.

serverTracker.trackBeginCheckout(input: ServerBeginCheckoutInput): Promise<ServerHelperResult>;
type ServerBeginCheckoutInput = {
transactionId?: string;
value?: number;
currency?: string;
items?: TrackbridgeItem[];
coupon?: string;
clientId: string;
userId?: string;
gclid?: string;
gbraid?: string;
wbraid?: string;
userData?: UserData;
consent?: ServerConsent;
};
FieldRequiredNotes
transactionIdnoAuto-generated when missing; standard dual-send-disabled warning fires.
clientIdyesGA4 client ID from the browser.
value, currency, items, couponnoGA4 params.
gclid / gbraid / wbraidnoClick identifiers.
userDatanoHashed per enhanced conversions. Dropped if consent.ad_user_data === 'denied'.
consentnoPer-call consent signals.

Promise<ServerHelperResult> — same shape as trackPurchase.

const result = await serverTracker.trackBeginCheckout({
transactionId: cart.id,
value: cart.total,
currency: cart.currency,
items: cart.items,
clientId: cart.gaClientId,
});