Enable promotional offers
Promotional offers are part of the Workflow Builder preview.- In your Firmhouse project, open New Features.
- Enable Workflow Builder.
- Open Offers from the sidebar.
Create an offer
- Open Offers and select New offer.
- Enter an internal name and choose whether the offer is a draft, active, or archived.
- Set its priority and acceptance window.
- Add the customer-facing headline, explanation, and benefit summary for every language enabled on the project.
- Add any eligibility conditions.
- Choose one benefit and, optionally, a minimum term.
- Save the offer and make it active when it is ready for customers.
Choose who qualifies
You can target an offer using:- Cancellation reason
- Subscription status
- Number of completed deliveries
- Revenue for the current subscription
- Current plan
- Current products
- Synchronized subscription segments
- Shopify order tags
Exclude subscriptions from an offer
In the Eligibility tab, add a condition and choose Exclude when this condition matches:- Exclude a prepaid plan: Choose Current plan, then select the prepaid plan under Plan is. Add a separate exclusion for each plan. New prepaid plans are not excluded automatically.
- Exclude subscriptions that already have a product: Choose Current products, select Has any of, and choose the products. Having any selected product active on the subscription makes it ineligible.
Target subscriptions using Shopify order tags
Choose Shopify order tags as a condition, then search and select one or more tags in the dropdown. The choices come from Shopify tags synchronized to this project’s orders. For example, selectSUMMER_SALE to target subscriptions with an order carrying that campaign tag. Tags already saved on the offer remain selected even if they no longer appear on an order.
A subscription qualifies when any of its orders has any of the entered tags. Tags match exactly, including capitalization. Orders from another subscription do not qualify it, even when both subscriptions use the same email address.
Firmhouse synchronizes tags from Shopify when an order is linked and when Shopify sends an order update. Removing a tag can make the offer unavailable, including for a link sent earlier. Previously linked orders need their tags synchronized before they can qualify; contact Firmhouse if historical campaign orders are missing tags.
For a campaign shown only in the second-order reminder, use the order number to control the email block. Add an order-count condition to the offer only if acceptance should also stop after that order.
Choose the benefit
Each active offer has one benefit:- Apply an existing active promotion
- Add a complimentary one-off product
- Swap a current product
- Switch to another plan in the same plan group
Show offers during cancellation
After a customer selects a cancellation reason, Firmhouse can show the first matching promotional offer before the normal churn-prevention action. The customer can accept or decline the offer, or choose the existing pause, skip, postponement, discount, or cancellation option shown with it. In the offer editor’s Eligibility tab, add a Cancellation reason condition to show an offer during cancellation for that reason. The selected reason shows its configured alternative action and an Edit cancellation reason link. Offers without a cancellation-reason condition are not shown during cancellation. You can also start from Settings → Churn prevention. Open a reason, check Create an offer for this reason, and choose Save and create offer to open a draft with that reason preselected. Save the offer to return to the reason. Existing offers can be edited from the same reason screen. Only active, automatic offers are selected automatically during cancellation. Draft, archived, and manual offers are not. Inactive or deleted cancellation reasons cannot be selected by customers, and pause-flow reasons do not trigger promotional offers. The reason’s Alternative action is independent of offer eligibility. Pause or skip remains available alongside an eligible promotional offer and when the offer is unavailable or declined. Continue to cancellation adds no pause or skip alternative; it does not prevent a promotional offer from appearing. Accepted offers apply their configured benefit and optional minimum term, and record the churn request as prevented. Declining returns the customer to the normal cancellation flow. For the surrounding cancellation setup, see Cancellation feedback and winback flows.Share an offer outside cancellation
Workflow Builder and the GraphQL API can issue a customer-specific offer and return its plain acceptance URL. In a Liquid email or notification, pipe that URL throughssc_hotlink before sending it to a customer. Configure the project’s public URL before sending offer links.
Show offers in Customer Portal v2
The default Customer Portal v2 dashboard shows the highest-priority pending eligible offer. Custom dashboard templates can use{% promotional_offer %} or loop over subscription.eligible_promotional_offers.
See the dashboard template reference for Liquid examples.
Review issued offers
Open a subscription in Firmhouse to review its issued promotional offers and their current status. An issued offer records whether it was viewed, accepted, rejected, or expired.Troubleshooting
- Offers is missing from the sidebar: Enable Workflow Builder under New Features.
- No offer is shown: Confirm that the offer is active, has not expired, and that every condition and selected benefit applies to the subscription.
- A segment condition is unavailable: Confirm that subscription segments have been synchronized for the project.
- An offer hotlink cannot be created: Configure the project’s public URL, ensure the issuing project has Workflow Builder enabled, and apply
ssc_hotlinkto the returned acceptance URL in Liquid.