diff --git a/documentation/build/free-shipping.mdx b/documentation/build/free-shipping.mdx new file mode 100644 index 000000000..9623c1979 --- /dev/null +++ b/documentation/build/free-shipping.mdx @@ -0,0 +1,135 @@ +--- +title: "Combine free shipping with item discounts" +description: "A step-by-step tutorial on using dynamic discounts to create a single voucher that provides both free shipping and a percentage discount on items" +keywords: ['free', 'shipping', 'dynamic', 'discounts'] +--- + +One of the most powerful ways to use Voucherify is combining multiple discount effects into one campaign. + +With **dynamic discounts**, you can influence prices for the whole cart or specific items based on conditions such as order value, currency, or metadata. + +In this tutorial, you will create a single discount that gives **free shipping** (100% off) and a **5% discount** on items. + +This setup works for: +- **Discount coupons** +- **Cart promotions** +- **Unique codes campaigns** + + +Before you start: + +- Your store must send **products and shipping as separate cart items**. +- Voucherify must be able to recognize your products (via the **Products catalog** or product IDs in API requests). +- Products should belong to a collection (for example, **All Products**). +- The **Shipping** item should not be part of the discounted product collection. +- You do not need to import the full catalog — product IDs can be passed dynamically in API calls. + +See: +- [Products](/prepare/products) +- [Product collections](/prepare/product-collections) + + +## Create the campaign + +Create a campaign using your preferred type, for example **Discount Coupons** or **Cart Promotion**. + +Configure the basic campaign settings such as code generation, timeframe, and limits as needed. + +If you need help with campaign setup, see: +- [Create discount coupons](/build/create-discount-coupons) +- [Create cart promotions](/build/create-discount-promotions) + +## Configure free shipping and item discount + +Define two price rules using **Products discounts → New price**. + + + + In the discount configuration step, select: + + **Products discounts → New price** + + Then click **Add another** to create a second rule. + + + + - Select **Shipping** as the product. + - Set **New price** to `0`. + + This makes shipping free. + + + + - Select **All Products** (or another product collection). + - Set a safe **fallback value** (for example, original price). + + Then build the formula: + + - **Order item → Price** + - Multiply (`*`) + - `0.95` + + This sets the new price to 95% of the original value, which gives a 5% discount. + + + + Save the campaign and test it in your checkout flow. + + + +## Notify customers + +Use your preferred communication channel to promote the offer, such as: + +- Voucherify distributions +- Email or push notifications +- On-site banners or checkout messages + +When customers apply the discount, they receive **free shipping** and a **5% item discount** in a single campaign. + +## Related features + + + + + +Use validation rules to control when the discount can be applied. + +For example, you can restrict the campaign to: +- minimum order value +- specific customer segments +- selected sales channels + +Validation rules work alongside dynamic discounts: validation rules define **when the campaign is valid**, while price rules define **how prices are changed**. + +See [Create validation rules](/optimize/create-validation-rules). + + + + + +Target the promotion to specific customer groups, such as new users or VIP customers. + +See [Customer segments](/prepare/customer-segments). + + + + + +Control how often the campaign can be redeemed, either per customer or globally. + +This is useful for limiting the impact of combined discounts. + +See [Campaign limits](/guides/campaign-limits). + + + + + +If you need more advanced cart logic, for example conditional discounts based on product combinations, consider using bundles together with dynamic discounts. + +See [Product bundles](/build/product-bundles). + + + + \ No newline at end of file diff --git a/documentation/docs.json b/documentation/docs.json index 8b0c430d1..163a41dcb 100644 --- a/documentation/docs.json +++ b/documentation/docs.json @@ -182,7 +182,8 @@ "build/create-discount-promotions", "build/discount-types-and-effects", "build/discount-code-import", - "build/product-bundles" + "build/product-bundles", + "build/free-shipping" ] }, {