Subscriptions and Shopify discounts

Submarine supports attaching Shopify discounts, both automatic and codes, as well as individual manual discounts, to a subscription. These discounts apply on the subscription level, not on the subscription order level. This is so if an order is skipped or fails payment, the discount is automatically moved to the next order.
If a discount code is valid for ongoing subscription use at checkout then Submarine will display the discount when the Subscription is created. Once the code has been used or becomes invalid the Submarine UI will display it as inactive.

Supported discount types

Amount off order
We support both fixed price and percentage-based amount-off-order discount codes and automatic discounts. If these code types are applied at checkout, we will attach them to the subscription via the Submarine UI or the API. We endeavour to validate or invalidate a discount code if changes are made after it’s been applied to a discount. Ways to invalidate an already applied discount would be deleting the code, increasing the restrictions or decreasing the limit usage of the discount.
Free shipping
We support both discount code and automatic discount application types for free shipping discounts. If these code types are applied at checkout, we will attach them to the subscription via the Submarine UI or the API. If changes are made to the discount code or the discount limit has been exhausted on Shopify, we will check its validity and amend the discount status on the subscription to Active or Inactive depending on the result.

Unsupported discount types

The following discount types are currently not supported in the Submarine platform when creating a subscription. These types are on our roadmap and coming soon. If a discount code of this type is set at checkout then Submarine will remove it from the subscription when creating it.
  • Amount off products discount types
  • Buy X get Y discount types

Managing discounts on subscriptions

Adding a discount to a Subscription: We support discounts being added to subscriptions via the checkout order, the Submarine UI and API. You can add an Automatic, Code or Manual discount type.
Automatic - To add an automatic discount to a subscription you can simply search the discount Title in the discount modal. We expect the exact code and do not show partial matches.
Code - To add a discount code to a subscription you can simply search the discount code in the discount modal. We expect the exact code and do not show partial matches.
Manual - To add a manual discount to an existing subscription open the Discounts modal and select the Manual option, select the type of manual discount - Amount off order or Free shipping. Set a unique title for the discount, you cannot use a discount code title that has been used on that subscription before, define the fixed $ amount or percentage discount you would like and how many recurrences you would like the discount to apply for.
Image without caption
Removing discounts: You can remove discounts from an existing subscription via the Submarine UI and API. To remove a discount from a Subscription, hover over the discount on the Subscription UI and click Remove. This will set the discount to inactive.
Image without caption
Subscription level discounts: Discounts are applied at the Subscription level and when added will apply to the next upcoming order, if the order is skipped or the subscription is paused the discount will stay active until used. A discount cannot be attached to a single future Subscription order instance at this stage.
Editing active discounts on Shopify: When updating a discount in Shopify that has previously been applied to Subscriptions the changes will apply to the next subscription order. Example: Decreasing a 15% amount off order discount to 10% would then change the ongoing subscription discount.
End dates and Deactivating discounts: The end date of a discount code and deactivating it is only there to stop a customer from adding the discount to a checkout or subscription, the code is still valid to apply after that date or if it is already applied to a subscription.
Subscription status changes: Moving a subscription from one status (Active to Paused or Cancelled) will not impact the discounts applied so if a customer Pauses or Cancels and then Resumes their subscription at a later date the discount will apply unless it has been deleted or is now invalid.
Bulk changing discounts: If you wish to inactivate a discount code that’s been applied to subscriptions we’d recommend deleting it or increasing the restrictions to have a limit of 1 use so it is no longer valid to apply to the next orders. You can also reach out to our support team via the help@getsubmarine.com email for any other bulk actions you would like completed

Limitations

  • Support for Amount-off products and Buy X get Y discount types is not yet supported.
  • Discount codes are not exposed in our Exports but will be coming soon.
  • Discount updates will not trigger a Subscription updated Flow trigger but will be coming soon.

Customer portal support

Support for adding discounts via our customer-facing portal is coming soon, please reach out to help@getsubmarine.com if you are interested in activating this feature on your portal.

Loyalty program discount code generations

Support for applying discounts generated from loyalty apps can be done on a per-merchant basis and will depend on the loyalty program and the behaviour you wish to implement. Please reach out to help@getsubmarine.com if you are interested implementing this.

API Documentation

Adding, removing, and validating discounts can all be done via our API. To view these details please use our graphql documentation. The subscriptionDiscount* mutations will be of the most interest.