Tracking
Bambuser Conversion Tracking for Live Video Shopping gives you the most value out of your Live Shopping performance statistics. The Bambuser Conversion tracker enables merchants to attribute the relevant conversions to their LiveShopping shows. The number of attributed sales is available on the stats page of each show.
In the React Native SDK, conversion and shopper events are reported through the BambuserSDK class. This is an SDK-level operation; it does not require an active BambuserVideoView.
BambuserSDK.track
import { BambuserSDK } from '@bambuser/react-native-commerce-sdk';
const sdk = new BambuserSDK({ server: 'US' });
const response = await sdk.track('purchase', {
transaction: {
id: 'ORDER-12345',
subtotal: 70.99,
currency: 'USD',
total: 74.98,
tax: 4.0,
shippingCost: 3.99,
shippingMethod: 'Standard',
coupon: 'SUMMER_SALE',
},
products: [
{
id: '314-7216-102',
name: 'Tennis Shoe Classic, Size 10',
image: 'https://example.com/images/314-7216-102.jpg',
price: 70.99,
currency: 'USD',
quantity: 1,
brand: 'Example Brand',
category: 'Footwear > Sports > Tennis',
location: 'https://example.com/products/314-7216',
},
],
});
| Method | Signature | Description |
|---|---|---|
track | (event: string, data: Record<string, any>) => Promise<Record<string, any> | null> | Send tracking data to Bambuser Analytics. Resolves with the response payload, or null. |
type BambuserSDKOptions = { server?: 'US' | 'EU' };
When to call track
Call BambuserSDK.track('purchase', ...) after a purchase completes in your app. This attributes the conversion to the live show the user was watching.
You should also report shopper events such as add-to-cart, product view, and checkout-started, using the same track method with the appropriate event name and payload.
Notes
trackis asynchronous and returns a Promise that resolves with the response payload (ornull).- The
serveroption inBambuserSDKOptionsmust match the region your organization is configured for ('US'or'EU'). - The event names and payload schemas are defined by Bambuser Analytics, not by the SDK; the SDK simply forwards them.
For the precise data structure required for each event and the full catalog of supported event names, see: