Discount Ninja requires control over the checkout button to ensure that, when the button is clicked, the visitor can be directed to a discounted Shopify checkout, prepared by Discount Ninja.
Other third-party solutions (typically shipping, pick-up, pre-order apps) may need to add logic before Discount Ninja takes over and handles the redirect to the checkout.
To resolve this, third-party solutions can use the following approach:
- Add a class
limoniapps-discountninja-ignoreto the checkout button when your app needs control over the button.
- Handle the checkout button
- When ready, click the checkout button again after removing the ignore class
- Alternatively, trigger the checkout programmatically (cf. https://support.discountninja.io/en/articles/3579852-client-side-api#h_b138fcd954)
Note that Discount Ninja automatically takes into account all parameters put in place by third-party apps that influence the checkout, including:
- hidden input fields in the checkout form to prepopulate (typically shipping address) fields at checkout
- a discount code applied in the checkout form
- the selected currency
- the selected locale
- the note field