Work recurrabee Guides Manage subscription contracts

Manage subscription contracts

Pauses, swaps, skips, and cancels — done through the state machine.

Updated

Operational

Every subscription contract in recurrabee is a state machine instance. The allowed transitions are:

active → paused
active → cancelled
active → past-due (on billing failure)
paused → active
past-due → active (on successful retry)
past-due → cancelled (on terminal failure or manual cancel)

Every transition is logged with timestamp, actor, and reason. You can see the full history from the contract’s detail page in the console.

Pause

Pauses halt billing and shipment without cancelling. Subscribers keep their plan, discount, and cadence.

  • From the console: any active contract → Pause. Choose an optional resume date.
  • From the customer account block: subscriber-initiated, same effect.

When a pause resume date arrives, the contract returns to active and resumes the cadence from that date.

Skip

Skip advances the next billing date by one cycle without changing state. Useful when a subscriber is travelling or has too much product.

Swap

Swap changes the product/variant on an active contract mid-cycle. recurrabee updates the Shopify Subscription Contract and preserves the billing anchor.

  • Simple swap: same price point, same cadence. No proration.
  • Tier swap: different price. Proration behavior is configurable (off by default — simpler, fewer edge cases).

Cancel

Cancels the contract. Shopify’s cancel reason codes are surfaced so you can build cancel flows with structured data.

  • From the console: Cancel contract. Choose a reason code, optionally add a note.
  • From the customer account block: if self-serve cancel is enabled, subscribers pick from a merchant-defined list of reasons before confirming.

Observing state

Every state transition emits:

  • An entry in the contract’s activity log (console).
  • A Shopify Flow trigger (if you’ve opted in — see Flow integration).
  • A webhook to any URL you’ve configured (Settings → Webhooks).
  • An email to the subscriber (if the merchant opted in for that transition — off by default for pause/skip, on for cancel).

Bulk operations

For ops scenarios (migrating subscribers, emergency pauses), Contracts → Bulk actions supports CSV upload of contract IDs with the desired action.