About the Custom Discount Triggers Service Plugin
As a discount trigger provider, you can integrate with Wix to provide a merchant's stores or businesses with custom triggers that specify when a discount applies on the site's cart and checkout pages. Together with discount rules, custom triggers define the necessary conditions for a discount to apply. For example, a trigger that only fires between 4pm-6pm on Mondays through Thursdays.
The integration is done via an app in the Wix App Market and by implementing the Custom Discount Triggers service plugin. After the app is installed on a site, Wix triggers a call to your service whenever actions are performed on the cart or checkout entities/pages. For example, when adding an item to the cart.
Using the service plugin, you can design your app to:
- Offer a happy hour discount.
- Offer a sale on digital products.
Before you begin
To use a custom trigger to apply a discount, you must first create a discount rule. Create an automatic discount using the dashboard, or by using the Discount Rules API.
Get started
Follow these steps to begin implementing your service plugin.
Choose a framework
You can implement this service plugin with the following framework:
- Self-hosted: Learn how to implement a self-hosted service plugin with the SDK and the Wix Dev Center.
Configure your service plugin
To configure and customize your plugin, you need to provide important information in the service plugin configuration file. You can configure your plugin in the Wix Dev Center.
Define handler functions
Use customTriggers.provideHandlers()
to define the following handler functions that implement your custom business logic. Make sure you define all required functions.
Function | Required |
---|---|
getEligibleTriggers() | Yes |
listTriggers() | Yes |
Code examples
Below is an example for implementing the Custom Discount Triggers service plugin in your code.
Self-hosted: Basic code structure
This is the basic code structure for implementing a self-hosted Custom Discount Triggers service plugin:
1