Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.videowise.com/llms.txt

Use this file to discover all available pages before exploring further.

Videowise Live Shopping Channel

A full-screen live shopping channel component that embeds the Videowise live streaming experience. It renders a WebView with the live shopping channel and dispatches custom events for user interactions like adding products to cart.
Note: The LiveShoppingChannel component does not need to be wrapped inside <VideowiseSDK.Provider>. It operates independently.

Props

PropTypeRequiredDefaultDescription
videowiseInfoobjectYesStore configuration (see below)
offsetYnumberNo0Reduces the height of the component wrapper by screenHeight - offsetY
styleStyleProp<ViewStyle>NoCustom style overrides for the component wrapper
onEvent(event) => voidNoCallback for live shopping events
onAddToCart(event) => voidNoCallback when a product is added to cart
onCheckout(event) => voidNoCallback for checkout events
environment'local' | 'staging' | 'production'No'production'Environment target
lsIdstringNoLive shopping ID (for autostart)
playerBottomOffsetnumberNo0Bottom offset (px) for the Live Player component elements
playerTopOffsetnumberNo0Top offset (px) for the Live Player component elements
vwStylestringNoStyle for the Videowise Live Shopping Channel component

videowiseInfo object

PropertyTypeRequiredDefaultDescription
shopstringYesYour store domain (e.g. storename.myshopify.com)

onEvent callback

Triggered for all live shopping interaction events. The event object has the following structure:
PropertyTypeDescription
type'live-shopping'Event type identifier
detailobjectEvent detail payload (see below)
detail object (LSTrackingEventData)
PropertyTypeRequiredDescription
lsIdstringYesLive shopping session ID
siteIdstringYesSite ID
organisationIdstringYesOrganisation ID
clientTSDateYesClient timestamp
videoElapsedMinutesnumberYesMinutes elapsed in the video
videoElapsedSecondsnumberYesSeconds elapsed in the video
currentTimenumberNoCurrent playback time
uidstringYesUnique user ID
device'mobile' | 'desktop'YesDevice type
isLivebooleanYesWhether the stream is currently live
urlstringYesPage URL
interactionTypestringYesInteraction type (see list below)
eventTypestringYesHost event type: 'play', 'pause', 'stop', 'load', 'pending', 'interaction'
itemobjectNoProduct data (present for add_to_cart and product_click interactions)
item object (when present)
PropertyTypeDescription
namestringProduct name
skustringProduct SKU
idstringProduct ID
highlightedbooleanWhether the product is highlighted
meta.customIdstringCustom variant ID
meta.vendorstringProduct vendor
meta.pricenumber | stringProduct price
meta.compareAtPriceunknownCompare at price
meta.quantitynumberQuantity
meta.currencystringCurrency code
Possible interaction types (interactionType)
  • mute_player — Player muted
  • unmute_player — Player unmuted
  • pause_player — Player paused
  • resume_player — Player resumed
  • like_reaction — Like reaction
  • share — Share clicked
  • add_to_calendar — Added to calendar
  • send_chat — Chat message sent
  • close_player — Player closed
  • minimize_player — Player minimized
  • maximize_player — Player maximized
  • show_product_list — Product list shown
  • hide_product_list — Product list hidden
  • product_click — Product clicked
  • add_to_cart — Product added to cart
  • checkout — Checkout clicked
  • show_cart — Cart shown
  • hide_cart — Cart hidden
  • toggle_cc_on — Closed captions enabled
  • toggle_cc_off — Closed captions disabled
  • replay — Replay clicked
  • progress — Playback progress

onAddToCart callback

Triggered when a user adds a product to the cart (add_to_cart interaction). The product data is unified into a standard format. The event object has the following structure:
PropertyTypeDescription
type'add-to-cart'Event type identifier
detailobjectUnified product payload
detail object
PropertyTypeDescription
productNamestringProduct name
variantIdnumberVariant ID
selectedVariantnumberSelected variant ID
qtynumberQuantity
pricenumberProduct price
currencyCodestringCurrency code

onCheckout callback

Triggered when a user clicks checkout. The event object has the following structure:
PropertyTypeDescription
type'live-shopping'Event type identifier
detailobjectLSTrackingEventData payload (same structure as onEvent detail)

Example

<VideowiseSDK.LiveShoppingChannel
    videowiseInfo={{ shop: 'storename.myshopify.com' }}
    environment="production"
    offsetY={50}
    style={{ backgroundColor: '#000' }}
    onEvent={(event) => console.log('onEvent', event)}
    onAddToCart={(event) => console.log('onAddToCart', event)}
    onCheckout={(event) => console.log('onCheckout', event)}
/>
Here’s a list of the possible events triggered inside the LiveShopping component -> https://docs.videowise.com/custom-events-ls.
Note: The Inline, Floating, and VideoFeed components must be wrapped inside <VideowiseSDK.Provider> to function correctly. The Provider manages modal video state and handles navigation when a user taps on a video.
<VideowiseSDK.Provider>
    {/* Your components here */}
</VideowiseSDK.Provider>

Videowise VideoFeed

A full-screen video feed component that displays a single video with shopping capabilities. The video player is shown immediately upon render.

Props

PropTypeRequiredDefaultDescription
videowiseInfoobjectYesStore configuration (see below)
widgetIdstringYesThe ID of the Videowise widget
styleStyleProp<ViewStyle>NoCustom style overrides for the component wrapper
videoIdstringNo''Specific video ID to display
rightActionButtonsTopnumberNo7Top offset (px) for the right action buttons (close, etc.)
marketingLogoTopnumberNo20Top offset (px) for the marketing logo
shoppableTopnumberNo0Top offset (px) for the shoppable product list
shoppableListAspectRatio`${number}/${number}` | "auto"No"1/1"Aspect ratio of product list items
disableIndependentApiCallbooleanNotrueDisables independent API calls
onEvent(event) => voidNoCallback for custom events
onAddToCart(event) => voidNoCallback when a product is added to cart
onCheckout(event) => voidNoCallback for checkout events
environment'local' | 'staging' | 'production'No'production'Environment target

videowiseInfo object

PropertyTypeRequiredDefaultDescription
shopstringYesYour store domain (e.g. storename.myshopify.com)
cartType'Shopify' | 'Magento' | 'SFCC' | 'Tapcart' | 'Other'No'Shopify'Cart platform type
currencystringNo'USD'Display currency
currencyRatenumberNo1Currency conversion rate
productIdnumber | nullNonullFilter by specific product ID

onEvent callback

Triggered for all custom events from the widget. The event object has the following structure:
PropertyTypeDescription
type'custom-event'Event type identifier
detailobjectEvent detail payload (see below)
namestringEvent name (see list below)
targetTagnullReserved for future use
detail object
PropertyTypeDescription
productNamestringProduct name
productIdnumberProduct ID
variantIdnumberVariant ID
selectedVariantnumberSelected variant ID
qtynumberQuantity
pricenumberProduct price
currencyCodestringCurrency code (e.g. 'USD')
videoTitlestringVideo title
videoIdstringVideo ID
widgetIdstringWidget ID
deviceTypestringDevice type
urlstringPage URL
campaignIdstringCampaign ID
itemsarrayArray of products (see onCheckout)
All detail properties are optional and depend on the event type.
Possible event names (name)
  • videowiseProductAddToCart — Product added to cart
  • videowiseProductBuyNow — Buy now clicked
  • videowiseCheckoutClick — Checkout clicked
  • videowiseProductClick — Product clicked
  • videowiseVideoClick — Video clicked
  • videowiseVideoStart — Video played more than 3 seconds
  • videowiseVideoIsPlaying — Video is currently playing
  • videowiseVideoFull — Video played more than 80%
  • videowiseVideoSwipe — Video swiped
  • videowisePlayerClose — Player closed
  • videowiseVideoSoundOn — Sound turned on
  • videowiseVideoSoundOff — Sound turned off
  • videowiseVideoBounce — Video closed/swiped before 3 seconds
  • videowiseDataReady — Widget data loaded
  • videowiseCampaignReady — Campaign rendered
  • videowiseCampaignCheckout — Redirecting to checkout
  • videowiseCtaClick — CTA button clicked

onAddToCart callback

Triggered when a user adds a product to the cart (videowiseProductAddToCart event). The event object has the following structure:
PropertyTypeDescription
type'add-to-cart'Event type identifier
detailobjectEvent detail payload
detail object
PropertyTypeDescription
productNamestringProduct name
productIdnumberProduct ID
variantIdnumberVariant ID
selectedVariantnumberSelected variant ID
qtynumberQuantity
pricenumberProduct price
currencyCodestringCurrency code (e.g. 'USD')
videoTitlestringVideo title
videoIdstringVideo ID
widgetIdstringWidget ID
deviceTypestringDevice type
urlstringPage URL

onCheckout callback

Triggered when a user clicks checkout (videowiseCheckoutClick event). The event object has the following structure:
PropertyTypeDescription
type'custom-event'Event type identifier
detailobjectEvent detail payload
namestringEvent name
targetTagnullReserved for future use
detail object
PropertyTypeDescription
campaignIdstringCampaign ID
deviceTypestringDevice type
urlstringPage URL
itemsarrayArray of products in the checkout
items array element
PropertyTypeDescription
productNamestringProduct name
productIdnumberProduct ID
qtynumberQuantity
pricenumberProduct price
currencyCodestringCurrency code

Example

<VideowiseSDK.Provider>
    <View style={{ flex: 1 }}>
        <VideowiseSDK.VideoFeed
            videowiseInfo={{
                cartType: 'Shopify',
                shop: 'storename.myshopify.com',
                currency: 'USD',
                currencyRate: 1,
                productId: null,
            }}
            widgetId="your-widget-id"
            environment="production"
            rightActionButtonsTop={44}
            marketingLogoTop={44}
            shoppableTop={44}
            shoppableListAspectRatio="1/1"
            videoId=""
            onEvent={(event) => console.log('onEvent', event)}
            onAddToCart={(event) => console.log('onAddToCart', event)}
            onCheckout={(event) => console.log('onCheckout', event)}
        />
    </View>
</VideowiseSDK.Provider>

Videowise Floating

A floating widget overlay that appears at the bottom-left of the screen. It dynamically sizes itself based on the widget content. When a user taps on a video, a full-screen VideoFeed modal opens.

Props

PropTypeRequiredDefaultDescription
videowiseInfoobjectYesStore configuration (same as VideoFeed)
widgetIdstringYesThe ID of the Videowise widget
rightActionButtonsTopnumberNoTop offset (px) for the right action buttons
marketingLogoTopnumberNoTop offset (px) for the marketing logo
shoppableTopnumberNoTop offset (px) for the shoppable product list
shoppableListAspectRatio`${number}/${number}` | "auto"NoAspect ratio of product list items
onEvent(event) => voidNoCallback for custom events
onAddToCart(event) => voidNoCallback when a product is added to cart
onCheckout(event) => voidNoCallback for checkout events
environment'local' | 'staging' | 'production'No'production'Environment target

videowiseInfo object

PropertyTypeRequiredDefaultDescription
shopstringYesYour store domain (e.g. storename.myshopify.com)
cartType'Shopify' | 'Magento' | 'SFCC' | 'Tapcart' | 'Other'No'Shopify'Cart platform type
currencystringNo'USD'Display currency
currencyRatenumberNo1Currency conversion rate
productIdnumber | nullNonullFilter by specific product ID

onEvent callback

Triggered for all custom events from the widget. The event object has the following structure:
PropertyTypeDescription
type'custom-event'Event type identifier
detailobjectEvent detail payload (see below)
namestringEvent name (see list below)
targetTagnullReserved for future use
detail object
PropertyTypeDescription
productNamestringProduct name
productIdnumberProduct ID
variantIdnumberVariant ID
selectedVariantnumberSelected variant ID
qtynumberQuantity
pricenumberProduct price
currencyCodestringCurrency code (e.g. 'USD')
videoTitlestringVideo title
videoIdstringVideo ID
widgetIdstringWidget ID
deviceTypestringDevice type
urlstringPage URL
campaignIdstringCampaign ID
itemsarrayArray of products (see onCheckout)
All detail properties are optional and depend on the event type.
Possible event names (name)
  • videowiseProductAddToCart — Product added to cart
  • videowiseProductBuyNow — Buy now clicked
  • videowiseCheckoutClick — Checkout clicked
  • videowiseProductClick — Product clicked
  • videowiseVideoClick — Video clicked
  • videowiseVideoStart — Video played more than 3 seconds
  • videowiseVideoIsPlaying — Video is currently playing
  • videowiseVideoFull — Video played more than 80%
  • videowiseVideoSwipe — Video swiped
  • videowisePlayerClose — Player closed
  • videowiseVideoSoundOn — Sound turned on
  • videowiseVideoSoundOff — Sound turned off
  • videowiseVideoBounce — Video closed/swiped before 3 seconds
  • videowiseDataReady — Widget data loaded
  • videowiseCampaignReady — Campaign rendered
  • videowiseCampaignCheckout — Redirecting to checkout
  • videowiseCtaClick — CTA button clicked

onAddToCart callback

Triggered when a user adds a product to the cart (videowiseProductAddToCart event). The event object has the following structure:
PropertyTypeDescription
type'add-to-cart'Event type identifier
detailobjectEvent detail payload
detail object
PropertyTypeDescription
productNamestringProduct name
productIdnumberProduct ID
variantIdnumberVariant ID
selectedVariantnumberSelected variant ID
qtynumberQuantity
pricenumberProduct price
currencyCodestringCurrency code (e.g. 'USD')
videoTitlestringVideo title
videoIdstringVideo ID
widgetIdstringWidget ID
deviceTypestringDevice type
urlstringPage URL

onCheckout callback

Triggered when a user clicks checkout (videowiseCheckoutClick event). The event object has the following structure:
PropertyTypeDescription
type'custom-event'Event type identifier
detailobjectEvent detail payload
namestringEvent name
targetTagnullReserved for future use
detail object
PropertyTypeDescription
campaignIdstringCampaign ID
deviceTypestringDevice type
urlstringPage URL
itemsarrayArray of products in the checkout
items array element
PropertyTypeDescription
productNamestringProduct name
productIdnumberProduct ID
qtynumberQuantity
pricenumberProduct price
currencyCodestringCurrency code

Example

<VideowiseSDK.Provider>
    <View style={{ flex: 1 }}>
        <VideowiseSDK.Floating
            videowiseInfo={{
                cartType: 'Shopify',
                shop: 'storename.myshopify.com',
                currency: 'USD',
                currencyRate: 1,
                productId: null,
            }}
            widgetId="your-widget-id"
            environment="production"
            rightActionButtonsTop={44}
            marketingLogoTop={44}
            shoppableTop={44}
            shoppableListAspectRatio="1/1"
            onEvent={(event) => console.log('onEvent', event)}
            onAddToCart={(event) => console.log('onAddToCart', event)}
            onCheckout={(event) => console.log('onCheckout', event)}
        />
    </View>
</VideowiseSDK.Provider>

Videowise Inline

An inline widget that embeds directly within the page flow. It starts with minimal height and dynamically expands as content loads, making it suitable for placing inside scrollable layouts. When a user taps on a video, a full-screen VideoFeed modal opens.

Available Widget Types

The following widget layouts are supported for the Inline component:
  • Single Video
  • In-Page Video Player
  • Quick Shop Carousel
  • Stories
  • Video Carousel
  • Highlighted Carousel
  • Overlapping Carousel
  • Masonry Grid
  • Grid Gallery
  • Gallery Highlight

Props

PropTypeRequiredDefaultDescription
videowiseInfoobjectYesStore configuration (same as VideoFeed)
widgetIdstringYesThe ID of the Videowise widget
rightActionButtonsTopnumberNoTop offset (px) for the right action buttons
marketingLogoTopnumberNoTop offset (px) for the marketing logo
shoppableTopnumberNoTop offset (px) for the shoppable product list
shoppableListAspectRatio`${number}/${number}` | "auto"NoAspect ratio of product list items
onEvent(event) => voidNoCallback for custom events
onAddToCart(event) => voidNoCallback when a product is added to cart
onCheckout(event) => voidNoCallback for checkout events
environment'local' | 'staging' | 'production'No'production'Environment target

videowiseInfo object

PropertyTypeRequiredDefaultDescription
shopstringYesYour store domain (e.g. storename.myshopify.com)
cartType'Shopify' | 'Magento' | 'SFCC' | 'Tapcart' | 'Other'No'Shopify'Cart platform type
currencystringNo'USD'Display currency
currencyRatenumberNo1Currency conversion rate
productIdnumber | nullNonullFilter by specific product ID

onEvent callback

Triggered for all custom events from the widget. The event object has the following structure:
PropertyTypeDescription
type'custom-event'Event type identifier
detailobjectEvent detail payload (see below)
namestringEvent name (see list below)
targetTagnullReserved for future use
detail object
PropertyTypeDescription
productNamestringProduct name
productIdnumberProduct ID
variantIdnumberVariant ID
selectedVariantnumberSelected variant ID
qtynumberQuantity
pricenumberProduct price
currencyCodestringCurrency code (e.g. 'USD')
videoTitlestringVideo title
videoIdstringVideo ID
widgetIdstringWidget ID
deviceTypestringDevice type
urlstringPage URL
campaignIdstringCampaign ID
itemsarrayArray of products (see onCheckout)
All detail properties are optional and depend on the event type.
Possible event names (name)
  • videowiseProductAddToCart — Product added to cart
  • videowiseProductBuyNow — Buy now clicked
  • videowiseCheckoutClick — Checkout clicked
  • videowiseProductClick — Product clicked
  • videowiseVideoClick — Video clicked
  • videowiseVideoStart — Video played more than 3 seconds
  • videowiseVideoIsPlaying — Video is currently playing
  • videowiseVideoFull — Video played more than 80%
  • videowiseVideoSwipe — Video swiped
  • videowisePlayerClose — Player closed
  • videowiseVideoSoundOn — Sound turned on
  • videowiseVideoSoundOff — Sound turned off
  • videowiseVideoBounce — Video closed/swiped before 3 seconds
  • videowiseDataReady — Widget data loaded
  • videowiseCampaignReady — Campaign rendered
  • videowiseCampaignCheckout — Redirecting to checkout
  • videowiseCtaClick — CTA button clicked

onAddToCart callback

Triggered when a user adds a product to the cart (videowiseProductAddToCart event). The event object has the following structure:
PropertyTypeDescription
type'add-to-cart'Event type identifier
detailobjectEvent detail payload
detail object
PropertyTypeDescription
productNamestringProduct name
productIdnumberProduct ID
variantIdnumberVariant ID
selectedVariantnumberSelected variant ID
qtynumberQuantity
pricenumberProduct price
currencyCodestringCurrency code (e.g. 'USD')
videoTitlestringVideo title
videoIdstringVideo ID
widgetIdstringWidget ID
deviceTypestringDevice type
urlstringPage URL

onCheckout callback

Triggered when a user clicks checkout (videowiseCheckoutClick event). The event object has the following structure:
PropertyTypeDescription
type'custom-event'Event type identifier
detailobjectEvent detail payload
namestringEvent name
targetTagnullReserved for future use
detail object
PropertyTypeDescription
campaignIdstringCampaign ID
deviceTypestringDevice type
urlstringPage URL
itemsarrayArray of products in the checkout
items array element
PropertyTypeDescription
productNamestringProduct name
productIdnumberProduct ID
qtynumberQuantity
pricenumberProduct price
currencyCodestringCurrency code

Example

<VideowiseSDK.Provider>
    <View style={{ flex: 1, justifyContent: 'center' }}>
        <VideowiseSDK.Inline
            videowiseInfo={{
                cartType: 'Shopify',
                shop: 'storename.myshopify.com',
                currency: 'USD',
                currencyRate: 1,
                productId: null,
            }}
            widgetId="your-widget-id"
            environment="production"
            rightActionButtonsTop={44}
            marketingLogoTop={44}
            shoppableTop={44}
            shoppableListAspectRatio="1/1"
            onEvent={(event) => console.log('onEvent', event)}
            onAddToCart={(event) => console.log('onAddToCart', event)}
            onCheckout={(event) => console.log('onCheckout', event)}
        />
    </View>
</VideowiseSDK.Provider>

Videowise trackingPixel

VideowiseSDK.trackingPixel is an async function that sends order data to Videowise analytics after a successful checkout. Call it once per completed order, after order confirmation. It is a plain async function and does not need to be rendered inside VideowiseSDK.Provider. It returns Promise<Response | null>. The resolved value is null when the SDK has no stored user identifier, when a required parameter is missing, or when the request throws.

Parameters

trackingPixel(params) takes a single object with the following properties:
PropertyTypeRequiredDescription
shopstringYesStore domain (e.g. storename.myshopify.com)
orderIdnumberYesNumeric order ID
orderTotalnumberYesTotal order amount
orderCurrencystringYesISO currency code (e.g. USD)
orderItemsOrderItem[]YesArray of purchased items (see below)

orderItems element (OrderItem)

PropertyTypeDescription
idstringLine item ID
quantitynumberQuantity purchased
titlestring | nullLine item title
variantobjectVariant details (see below)
finalLinePriceobjectFinal line price (see below)
variant object
PropertyTypeDescription
idstringVariant ID
image.srcstring | nullVariant image URL
price.amountnumberVariant unit price
price.currencyCodestringVariant price currency code
product.idstringProduct ID
product.titlestring | nullProduct title
product.vendorstring | nullProduct vendor
product.typestring | nullProduct type
product.untranslatedTitlestring | nullUntranslated product title
product.urlstringProduct URL
skustring | nullVariant SKU
titlestringVariant title
untranslatedTitlestringUntranslated variant title
finalLinePrice object
PropertyTypeDescription
amountnumberFinal line price amount
currencyCodestringFinal line price currency

Example

import VideowiseSDK from '@vidystar/videowise-react-native-sdk';

await VideowiseSDK.trackingPixel({
    shop: 'storename.myshopify.com',
    orderId: 12345,
    orderTotal: 99.99,
    orderCurrency: 'USD',
    orderItems: [
        {
            id: 'item-1',
            quantity: 1,
            title: 'Product Name',
            variant: {
                id: 'variant-1',
                image: { src: 'https://...' },
                price: { amount: 99.99, currencyCode: 'USD' },
                product: {
                    id: 'prod-1',
                    title: 'Product Name',
                    vendor: 'Vendor',
                    type: 'Type',
                    untranslatedTitle: 'Product Name',
                    url: 'https://...',
                },
                sku: 'SKU-123',
                title: 'Variant',
                untranslatedTitle: 'Variant',
            },
            finalLinePrice: { amount: 99.99, currencyCode: 'USD' },
        },
    ],
});