Configuring Submarine
Making Submarine your own.
1. Configuration options
We have ambitious plans to allow merchants to inject their very own custom business logic directly into Submarine (think Shopify Scripts, but better), but that’s a little way off.
For now, there are a number of ways that you can configure Submarine to better suit your requirements. These can all be managed via the Submarine UI.

1.1. Notifications
As mentioned in Submarine and Shopify Flow, we expect most merchants to hook into Submarine’s Flow triggers in order to keep themselves and their customers up to date. However, Submarine can send out some basic transactional emails to both parties out of the box, just to get you started. You can opt in or out of these at any time.
Customer emails
- Email customer when campaign has been ordered Disabled by default
- Email customer when campaign shipment date has been updated Disabled by default
Merchant emails
- Email merchant when a webhook is failing Enabled by default
- Email merchant when a campaign order cannot be fulfilled Enabled by default
1.2. Presale campaigns
These configuration options affect the behaviour of presale campaigns.
- Payment terms alignment When an order contains items for multiple campaigns, when should Submarine capture the balance owing?
- Align terms to the first campaign
- Align terms to the last campaign This is the default setting (and goes against Shopify’s native behaviour)
- Selling-plan name The selling plan name is displayed throughout the theme (product page, cart, checkout). This option configures the default that should be used for each new presale campaign. It can be overwritten for each individual campaign. See As mentioned elsewhere, Submarine integrates very closely with Shopify’s purchase options, and relies heavily on their concept of selling plans (to the extent that each Submarine campaign creates and maintains a Shopify selling plan under the hood). The name and description of the selling plan is automatically exposed to the customer in the theme, and this screen allows the merchant to configure what values these fields should take. for details.
- Selling-plan description The selling plan description is displayed on the product page. This option configures the default that should be used for each new presale campaign. It can be overwritten for each individual campaign. See As mentioned elsewhere, Submarine integrates very closely with Shopify’s purchase options, and relies heavily on their concept of selling plans (to the extent that each Submarine campaign creates and maintains a Shopify selling plan under the hood). The name and description of the selling plan is automatically exposed to the customer in the theme, and this screen allows the merchant to configure what values these fields should take. for details.
1.3. Additional access tokens
In order for Submarine to be able to communicate with Shopify, it needs a special token to access Shopify’s various APIs. When you first install the Submarine app in your store, we request a token on your behalf. Usually, this single token is enough. However, if you have a particularly high-volume store, or regularly experience peaks in traffic, you might need to generate new Shopify tokens and instruct Submarine to make use of them.
You can apply two sets of tokens: one for general use (e.g. creating selling plans, updating metafields, opening fulfilments) and one dedicated to high-priority use (e.g. capturing payments). The process for both sets of tokens are the same.
- Follow the Shopify instructions for the creation and installation of custom app.
- When prompted to configure the Admin API access scopes for your custom app, grant the following:
- write_customers
- write_merchant_managed_fulfillment_orders
- write_orders
- write_own_subscription_contracts
- write_payment_mandate
- write_payment_terms
- write_products
- write_purchase_options
- write_shipping
- write_third_party_fulfillment_orders
- Copy the Admin API access token for each custom app you create and paste it in the relevant field in the Submarine settings page.
You are able to add or remove tokens at any time.