Skip to main content
An amendment is a mid-term commercial change to an active subscription: an upgrade, extra seats, an added product, a removed add-on, a renegotiated rate, a plan swap. In Alguna an amendment is expressed as a delta (add, remove, update) against the current version, with an effective timing; Alguna computes the resulting version, prorates advance charges where the timing is mid-cycle, and keeps the previous version as history. Use this page for what to change and when; Versioning explains the underlying draft/published model and Proration the money. See How Alguna Works for why changes are versioned rather than overwritten.

What you can amend

Proration only ever applies to advance fixed-class charges; metered and arrears charges are never prorated. Contract dates, renewal terms, discount and spend thresholds are not amendments: they change through PATCH /subscriptions/{id} with no new version. See Editing Subscriptions for the full decision table.

Choose when it takes effect

The effective field (dashboard: the version start) accepts a keyword or a date: GET /subscriptions/{id}/billing-dates returns the dates that are valid for on-cycle and mid-cycle changes.

Preview before you commit

POST /subscriptions/{id}/changes/preview takes the same body as the apply endpoint and returns what would change (changes_applied with added, removed and updated item refs, and the effective_at it resolves to) without writing anything. Use it to confirm the delta resolves as you expect, or to drive an approval step, before applying. In the dashboard the same information is shown on the save dialog.

Apply an amendment

POST /subscriptions/{id}/changes computes the new version and publishes it, unless you pass draft: true. This example adds 25 seats to a per-seat product and adds a support add-on, effective immediately:
The response carries the new version_id, its version_status (draft or published), the source_version_id the delta was computed against, and is_new_version (false when an existing draft was replaced instead). Request bodies for plan swaps, tier replacement and bundle operations are in Updating a Subscription.

In the dashboard

  1. Open the subscription and click Edit.
  2. Add, remove or re-price products in the Products section.
  3. Save, and choose the version start: From start of a billing cycle (no proration) or Mid-cycle (a prorated invoice for the difference).
  4. Add a note describing why, and confirm.
The step-by-step is in Editing Subscriptions.

Common scenarios

Upgrade mid-cycleupdate the product’s price (or send plan_id for the higher plan) with effective: "immediate". The customer is charged the prorated difference for the rest of the cycle. Add seatsupdate with adjust: { "fixed_pricing_model": { "units": <new count> } }. Mid-cycle, the extra seats are prorated; on next_billing_period, the full new count bills from the next cycle. Remove an add-on without issuing a creditremove with effective: "next_billing_period". The add-on bills through the end of the current cycle and stops. Renewal repricingupdate the affected prices with effective: "next_term_renewal". Nothing changes until the contract rolls over. For a percentage uplift every year, set price_escalation on the subscription instead. Negotiated discount — a subscription-wide discount is metadata, not an amendment: PATCH /subscriptions/{id} with discount. A discount on one product goes on that product’s price through update.

Approvals

If an approval rule matches the change (a discount above a threshold, a specific product, a non-standard term), the amendment waits in Pending approval until an approver acts. Approved amendments publish on their effective date; rejected ones are returned for editing. Track them under Approvals in the dashboard.

Getting an amendment signed

For sales-led contracts the customer often needs to sign the change. From the dashboard, stage the amendment as a draft version and issue it as an amendment quote: the customer receives a signing link exactly as for a new deal (Sending Quotes). When they sign, the staged version is published and takes effect on its date. Only one amendment quote can be open on a subscription at a time. Quotes are dashboard-only; there is no public API for issuing them.

Audit trail

Every amendment is a version with a description, so the history of what changed and when is the version list: GET /subscriptions/{id}/versions. A subscription.version.updated webhook fires each time a version is created, replaced or published.

Next steps

Proration

Exactly how a mid-cycle amendment is priced.

Versioning

Drafts, published versions and effective dates.

Updating a Subscription (API)

Every request body: adjust, replace, swap, bundles.

Entitlements

Update what the customer can access along with what they pay.