How This App Works
Use this app to create automatic discounts for collections or miscellaneous product groups that will be exclusive to Tapcart. Examples include:
Buy 2 products get 10% off, buy 3 products get 20% off, 4 products 30% off, 5 or more products 40% off (percentage off, volume based).
10% off then cart subtotal hits $100, 15% off at $200, and 25% off $300 or more (percentage off, cart threshold based).
$20 off then cart subtotal hits $100 and $50 off at $250 (fixed amount off total order, cart threshold based).
$10 off each item when you buy 3 or more items from Best Sellers collection (fixed amount off each item, volume based).
Free shipping when you spend $100 on 2 or more products from the Outerwear collection (free shipping, volume or subtotal based).
By default discounts are exclusive to your Tapcart app, but you can turn this off.
You can also require that customers be logged in to receive a discount.
Discounts are automatically applied when customer views cart or checkout screens.
If a product is eligible for multiple discounts, only the discount with the highest discount percentage will be applied.
Installation Instructions
You can install the app in Shopify here.
After installing the app from the Shopify App Store you will be navigated to the app’s screen.
Click on “Create New Automatic Discount.”
Give your new discount a Title and set the Discount Message; the message is what’s shown to the customer as the promo code text.
Choose which type of discount to create:
Volume Discount - E.g. buy 3 products from a collection get 10% off
Cart Subtotal Discount (a.k.a. Waterfall discount) - E.g. spent $100 on a collection get 20% off.
Select options. You can enable or disable your discount, determine whether it’s app exclusive, and set if customers must be logged in to receive discount.
Then set discount percentages (volume discounts) or cart subtotal thresholds (waterfall discounts). You can set up to five thresholds for each.
Create a custom block
Add this custom block to either the Cart (if already on React) or home page. This simple block adds the sales-channel: tapcart cart attribute automatically after 500ms.You can copy and paste this directly into a new custom block in your dashboard.
import * as React from "react";
// https://docs.tapcart.com/docs/app-actions#cartupdateattributes
export default function AutoSetCartAttributesBlock({ blockConfig, useActions, __tapcartDashboard }) {
const webbridgeActions = useActions();
// Using useEffect to trigger the navigation after component mounts
React.useEffect(() => {
// Add a small delay to ensure the app is fully loaded
const timer = setTimeout(() => {
// Set cart attribute
webbridgeActions.action?.("cart/updateAttributes", {
attributes: [{key: 'sales-channel', value: 'tapcart'}]
});
}, 500) // 500ms delay for reliable execution
// Clean up the timer if component unmounts
return () => clearTimeout(timer)
}, []) // Empty dependency array means this runs once after initial render
if (__tapcartDashboard) {
return <div className="p-4">Auto Add Sales Channel Cart Attribute (No UI)</div>;
}
// Return null to make the component invisible (no rendering)
return null;
}








