About Multi-Component Apps

Building a multicomponent app enables you to build an app with several components. Each may include different features, but all of the components are related and will contribute to the app’s functionality.
For an example of a Multicomponent app, consider an eCommerce app that can be split into three components:
  • The default component is a Page component that includes the product catalog of the store.
  • The shopping cart is a Widget component that users can add to all the pages in their website.
  • The management of the store is an internal Dashboard component, which is managed from the user’s dashboard area. This component is included automatically when the user adds the app from the Editor.
When developing a multicomponent app, develop each component separately and then add all the components under the same app in the Wix Developers Center. Read more about adding your components in the Wix Developers Center.

Terminology

  • Default component: The default component that will be added when users add your app to their website, this is set by you when you register your app in the Wix Developers Center. If one of your components is a Page component, it will always become the default.
  • Extensions: All of the other components that are part of your app—except the default component, e.g, a cart widget. Users can add the app extensions from the bottom of the App Settings.
  • Essential extension: A component that is mandatory for the functionality of the app. This option can be checked when adding a new component in the Wix Developers Center.

Linking each component to the user's site

When a user adds your app, we’ll generate a unique ID for your app in this specific site – the App Instance ID. Use the App Instance ID to link your app to this site.

This ID is sent to you as part of the App Instance query parameter, which is a signed parameter that allows you to identify the website and the Wix user, and verify that the calling party is indeed Wix.

All of your app’s endpoints in this site will have the same App Instance ID, so each request sent to the Widget endpoint and to the App Settings endpoint includes the same App Instance ID in the iframe URL.