Create deeplinks

Prev Next

Deeplinks bring your users to the right place in the app with a single tap. A deeplink is a special kind of URL that allows you to link to a specific screen in the app. It is similar to a website URL, with these key differences:

  • Instead of using http or https, it uses a protocol that is unique to your app.

  • It does not contain the domain of your website.

Deeplink example use case:

  • Can be used for Push Notifications (for example, if you are using SAP Emarsys)

  • For a seamless user experience in App Extensions

  • For marketing via email, chat, social media, or other channels.

How to construct a deeplink

Follow the 3 steps below to construct a deeplink:

  1. Write your brand protocol followed by ://

    • The protocol does not contain spaces or characters other than letters and numbers

    • In the following examples, we'll use brand as the protocol

    • Replace this with the protocol for your app (example, vince. for Vince, goldengoose for Golden Goose)

    • Contact our support if you are not sure about the protocol for your app

  2. Choose and add view that you want to open in the app, followed by /

    • For example, Home, Categories, Cart or Account

    • Find the list of supported app views in the section below

  3. Add specifications. Like a specific category, a filter to apply, or a query to search.

Below are a few examples:

Protocol followed by ://

App View followed by /

Specification

goldengoose://

categories/

sale

vince://

lookbook/

fall-2025

List of app views supported

The app must be able to parse a specific deeplink. Therefore, only supported app views can be reached via a deeplink.

Home, categories, and products

  • Home: brand://home

  • Category: brand://categories/{category-id}

    • Replace {category-id} with the URL-encoded ID of the category.

  • Lister (pre-filled editable filters)

    The app supports deeplinking to a category product list with support for pre-filled editable filters.

    • Example

      brand://categories/{category-id}?&filters[0][attribute]={attribute_id}&filters[0][in][]={attribute_value}

    • Parameters

      The category-id parameter indicates the category on which the filter will be applied. This parameter is required and is always the name of the category of the product list.

  • Lister (not-editable filters):

    The app supports deeplinking to a product list of a ‘virtual’ category, showing products from a category with filters applied and a custom title. These filters are not shown and cannot be edited in the app.

    • Example

      brand://productlist?title={name_in_the_app}&category={category_id}&filters[0][attribute]={attribute_id}&filters[0][in][]={attribute_value}

    • Parameters

      • The title parameter will be the name of the resulting product list, which will be shown in the app. This parameter is optional, if omitted, the name of the selected category will be shown. The title of the product list will need to be URL encoded.

      • The category parameter indicates the category on which the filter will be applied. This parameter is optional, if omitted, the root category will be selected.

  • Product: brand://products/{product-id}

    • Replace {product-id} with the URL-encoded ID of the product.

    • Note for SFCC customers: If a product is a master product, it is better to use a variation ID instead of the master ID.

Search and favorites

  • Search: brand://search/

  • Search (pre-filled query): brand://search/{query}

    • Replace {query} with the URL-encoded string

  • Favorites: brand://favorites

Lookbook and brand stories

  • Lookbooks overview: brand://lookbook

  • Lookbook detail: brand://lookbook/{lookbook-id}

    • Replace {lookbook-id} with the URL-encoded ID of a lookbook

  • Brand Story: brand://stories/{story-id}

Account and loyalty

  • Account: brand://account/

  • Order History: brand://account/orders

  • Order Detail: brand://account/orders/{order-id}

    • Replace {order-id} with the URL-encoded ID of a order

Checkout

  • Cart: brand://cart

Custom content and functionalities

  • App Extension:

    • Example: brand://contentextension?url={base64-encoded-url}&title={urlencoded-title}

    • The value of the URL parameter should be a base64-encoded URL, and the value of the title parameter should be URL encoded.

Note:
When opened from outside the app, App extension deeplinks may only link to the merchant’s website for security reasons. In this case, deeplinks containing a URL from other websites will not open the App Extension in the app. When an App Extension deeplink is opened from within the app, the same limitation does not apply.

External and deferred deeplink

It is possible to create deeplinks with a third-party provider. To do so, the Deeplink Service Extension must be set up. That service also supports deferred deeplinking. For example, opening a web view and then opening the app. This is useful for data capture or if a redirect is required. For more information, contact your Omnichannel Success Manager or Expert Services representative.

How to test a deeplink

The quickest way to get started with testing deeplinks is to use the browser on your device. Enter the deeplink in the address field of the browser and press Go. Assuming that your brand's app is installed on the same device, it will prompt you to open that view in the app. On iOS, you can use Safari. On Android, you can use Firefox (Chrome does not support deeplinks).

If you frequently test deeplinks:

On iOS, type in the deeplinks in a new page on Notes. Simply tap on the link to trigger the deeplink. If your Notes sync with your Mac, it might be easier to type in the deeplinks. If your testing device is not linked to your Mac or you use another operating system, you can paste deeplinks into a Slack chat.