Skip to content

Deep Linking for E-Commerce

E-commerce apps benefit heavily from deep linking. Instead of sending users to a generic home screen, deep links take them directly to the product, category, or cart they were looking at, cutting out navigation steps and increasing conversion.

You run a Facebook ad or send a promotional email featuring a specific product. The link goes to https://myapp.tolinku.com/product/sneakers-123. Users with the app land on the product page. Users without the app see a landing page with the product image, price, and download buttons.

A user abandons their cart. You send a push notification or email with a deep link to https://myapp.tolinku.com/cart/resume. The link opens the app directly to the saved cart.

A “Summer Sale” banner links to https://myapp.tolinku.com/category/summer-sale. Users land on the filtered category view in the app.

An order confirmation email includes a link to https://myapp.tolinku.com/order/789. The user taps it and sees their order status in the app.

  • Prefix: product
  • Link type: Dynamic
  • Path pattern: product/:id

For social sharing and landing pages, set up a metadata endpoint on your server that returns product details:

{
"title": "Nike Air Max 90 - $129",
"description": "Classic sneaker in white/black. Free shipping on orders over $50.",
"image": "https://myapp.com/images/products/sneakers-123.jpg"
}

This ensures shared product links show the correct title, image, and price in social previews.

Use the Product Showcase template in the visual builder. It pulls product data from your API and displays:

  • Product image
  • Product name and price
  • A deep link button (“View in App”)
  • App store download buttons as fallback
// Android
val uri = intent.data
val productId = uri?.lastPathSegment // "sneakers-123"
navigateToProduct(productId)
// iOS
if let result = Tolinku.handleUniversalLink(url) {
// result.path = "/product/sneakers-123"
let productId = result.path.split(separator: "/").last
navigateToProduct(id: productId)
}

Add UTM parameters to product links in your campaigns:

https://myapp.tolinku.com/product/sneakers-123?utm_campaign=summer-sale&utm_source=email&utm_medium=newsletter

In the analytics dashboard, compare campaigns by click-to-install conversion rate to identify which channels drive the most valuable traffic.

Track in-app conversions with the ecommerce SDK module:

tolinku.setUserId(userId);
await tolinku.ecommerce.addToCart({
items: [{ item_id: 'sneakers-123', item_name: 'Nike Air Max 90', price: 129.00 }]
});
await tolinku.ecommerce.purchase({
transaction_id: 'order_789',
revenue: 129.00,
currency: 'USD',
items: [{ item_id: 'sneakers-123', item_name: 'Nike Air Max 90', price: 129.00, quantity: 1 }]
});

With ecommerce tracking, you get full revenue attribution: see which campaigns, deep links, and channels actually drive purchases, not just clicks. View revenue by campaign, product performance, conversion funnels, and customer lifetime value cohorts in the Ecommerce Analytics dashboard.

  • Link to the product, not the home page. Every extra navigation step reduces conversion. Deep links eliminate friction.
  • Use dynamic OG metadata. Product links shared on social media should show the product image and price, not a generic app description.
  • Set up a web fallback. If you have a web store, set the web fallback URL to the product’s web page so desktop users can buy without installing the app.
  • Test on both platforms. Verify that product deep links work correctly on both iOS and Android before launching a campaign.
  • Use landing page A/B testing. Test different landing page designs (e.g. with vs without price, different CTAs) to optimize install conversion.