Why Choose the Functions Version

Modified on Fri, 27 Feb at 4:50 AM

The Functions version is built on Shopify Functions, allowing discounts to be applied natively in Shopify checkout. It is ideal for merchants who want a modern, seamless checkout experience and need advanced discount types that work directly with Shopify’s discount engine.

Choose the Functions version if:

  • You want discounts to apply natively at Shopify checkout

  • You need advanced offer types beyond basic volume discounts

  • You want to use Shopify’s native discount code box

  • You need support for order-level and shipping discounts

  • You can work within Shopify’s 25 active discount limit

What the Functions Version Supports

Active Offers

  • Up to 25 active discounts per store

  • This limit is enforced by Shopify Functions and applies across all function-based discount apps installed on the store

Supported Offer Types

The Functions version supports the following discount offer types:

  • Volume discounts

    • Variant-based

    • Product-based

    • Collection-based

  • Bundle discounts

  • Buy X Get Y (BXGY) discounts

  • Order (cart-level) discounts

  • Shipping discounts

All discounts are created and applied using Shopify’s native discount system.


Buy X Get Y (BXGY) Configuration

The Functions version supports flexible Buy X Get Y combinations:

  • Product + Product

  • Collection + Collection

  • Collection + Product

  • Product + Collection

For BXGY offers:

  • Quantities can be defined for both X and Y

  • The discount is applied to the Y group

  • Supported discount types include:

    • Percentage off

    • Price discount

    • Free gift

BXGY discounts are applied natively at checkout using Shopify Functions.


Checkout & Discount Behavior

The Functions version uses Shopify’s native checkout flow:

  • Discounts apply automatically at checkout

  • Uses Shopify’s native discount code box

  • Discounts are reflected consistently across:

    • Checkout

    • Order summary

    • Shopify Admin

This provides a smoother and more predictable checkout experience compared to draft-order–based flows.


Frontend & Theme Capabilities

  • Theme integration: No
     (Only the app extension needs to be enabled)

  • Product Detail Page widget: Yes
     On the product page, we display the latest eligible offer widget.
     A single product can have multiple offers, but only the most recent eligible offer is displayed.

  • Offer metafield integration: Not available

  • FOMO messages: Not available

Frontend customization is intentionally limited to comply with Shopify Functions performance and data constraints.


API & Admin Capabilities

Supported:

  • Offer Table API

  • Import / Export functionality

Not supported:

  • Admin API (Offer Create, Update, Delete)

  • Draft Order API

Platform Limitations to Keep in Mind

  • 1. 25 Active Discount Limit

  • Only 25 function-based discounts can be active per store at the same time.

  • This includes all function-based discount apps installed on the store.

  • 2. Product / Variant / Collection Limits

  • There are limits on how many products, variants, or collections can be added to a single offer due to Shopify Function input size constraints.

  • 3. Metafield Integration Not Supported

  • Metafield integration is not available in the Functions version.

  • Technical reason:
     The app already uses Shopify’s API to create and manage discounts on Shopify’s side. Combining metafield-based logic with offer create/update operations in the Functions version can negatively impact update performance and cause execution issues.

  • To ensure stability and performance, metafield integration is not supported.

  • 4. Large Cart Constraints

  • Very large or complex carts may be limited by Shopify Function query size and execution limits.

App Compatibility Notes

  • Hulk Product Options

    • ❌ Not compatible
       (Relies on Draft Order API, which is not supported by Shopify Functions)

  • Bold Product Options

    • Supported, but requires testing once implemented

When the Functions Version Is the Right Choice

The Functions version is the right choice if your priority is:

  • Native Shopify checkout discounts

  • Advanced discount types (Bundles, BXGY, Order, Shipping)

  • Automatic discount application without draft orders

  • Shopify-standard checkout behavior

If you need unlimited active offersmetafield integrationFOMO messaging, or admin-level offer APIs, the Legacy version may be a better fit.


Want to switch to the Legacy version?
Please contact our support team, and they’ll be happy to help you with the transition.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article