Shift Happens
Week of Jul 20, 2026
·
2
new
·
7
improved
Reactivate cancelled subscriptions
Shipped
Areas
Developers, Shopify, Subscriptions, Products
Reactivate cancelled subscriptions

Recover a cancelled subscription without creating a replacement. Customers can reactivate in Customer Portal v2, while merchants can reactivate from the Firmhouse Portal or connect the flow to custom workflows through the GraphQL API.
Track cancellation and pause journeys with webhooks
Connect integrations to four new outgoing webhook events for cancellation and pause journeys: churn_request_initiated, churn_request_prevented, churn_request_completed, and churn_request_feedback_updated. Their Liquid payloads include the request, flow, lifecycle status, selected reason, winback action, and customer feedback.
Improvements
·
7
Push scheduled orders to Shopify from the admin
You can now push scheduled orders to Shopify directly from Firmhouse, without using the API. Open the order page or the order actions menu on the customer’s subscription, then select Push to Shopify.
Control plan and product availability
You can now mark plans and products as unavailable from their settings in every project. This prevents new signups or product additions while keeping them available to existing subscriptions.
Apply eligible discounts after checkout
Tiered automatic discounts can now be applied after checkout when a subscription later meets the discount conditions. Customers can receive the eligible discount after products are added, even if their subscription did not qualify during checkout.
Choose when orders are confirmed
Order-based projects can now confirm orders immediately on the scheduled shipment date, or keep them pending until payment succeeds. The setting is available under Settings → Payment dunning and also applies when you use Ship now.
More subscription lifecycle timestamps in Liquid
Custom templates and webhook payloads can now use subscription.paused_at, subscription.paused_until, subscription.rejected_at, and subscription.stopped_at. These timestamps make it easier to tailor messages and automations to a subscription’s current lifecycle state.
Show the Checkout Button Injector for selected currencies
Multi-currency stores can now choose which cart currencies display the Checkout Button Injector. Add comma-separated currency codes such as EUR,CHF, or leave the setting empty to keep the checkout route available for every currency.
Edit customer emails faster in the redesigned editor
Managing customer emails is now faster and easier in a redesigned two-pane editor. Browse emails by activity with clear on/off states, then edit the selected email without navigating a long list of templates.