Skip to main content
A subscription binds a customer to an agreed offer: which products, at what prices, on what contract and billing terms. It is the object every downstream stage reads from: usage is rated against its prices, invoices are generated from its billing schedule, entitlements are read from it, and revenue schedules are derived from it. Subscriptions are versioned, so the agreement can change over time without losing history. See How Alguna Works for the full chain. There are three ways a subscription comes into existence, and all three produce the same object:
  1. From a plan, in the dashboard or via POST /subscriptions. See Create your first subscription.
  2. From a signed quote, for sales-led deals. See Sending Quotes.
  3. From self-serve checkout, created automatically when the buyer completes hosted checkout.

The subscription object

The priced items themselves are not on the subscription; they live on its versions. Read the current ones with GET /subscriptions/{id}/versions/current.

Subscription statuses

Subscriptions list with subscription ID, name, customer, status and updated date columns and a New Subscription button

Create and activate via the API

Create from a plan and activate in one call with auto_activate: true. Omit it to create a draft you can review first, then call Activate a subscription.
To define the priced items in the request instead of using a plan, or to override individual plan prices for one customer, see Creating a Subscription.

Activate via the dashboard

Once the products are added, click Activate Subscription. You are offered two options:
  • Activate Subscription — use this when the contract was signed outside Alguna and billing should start on the contract start date.
  • Request Customer Signature — sends the subscription to the customer as a quote for acceptance and e-signature. It activates only once the customer signs and the start date is reached. See Sending Quotes.
Subscription Activation Flow

After activation

Alguna emits subscription.activated when the subscription goes live, subscription.started at the start of each billing period, subscription.updated when a top-level attribute changes, and subscription.version.updated when pricing changes through a version. See Webhooks.