Skip to content

Manage an Entitlement Renewal

An entitlement is approaching its expiration date. This recipe covers checking the renewal policy, handling auto-renewal, performing manual renewal when needed, extending the expiration date, and verifying the renewed status.

Prerequisites

  • WordPress admin access.
  • An entitlement with status active that has an upcoming expiration date.
  • The Organization's Stripe subscription or payment method is active (for auto-renewal).

Steps

Part A: Check the renewal policy

Step 1. Go to MIDDAG Account > Entitlements and open the entitlement that is approaching expiration.

Step 2. Check the Expiration Date field. The system sends configurable reminders before expiration:

ReminderWhen it is sent
First30 days before expiration
Second15 days before expiration
Final7 days before expiration

Step 3. Check the Renewal Policy section on the entitlement detail page. The policy is resolved through the 5-level hierarchy (entitlement > product > organization > class > global). Key settings:

SettingWhat it controls
auto_renewWhether the system attempts automatic renewal.
renewal_periodHow long the renewal extends (e.g., 12 months).
renewal_pricePrice for the renewal period (may differ from original).
reminder_scheduleWhen reminder emails are sent before expiration.

Step 4. To check or change the policy for this specific entitlement, go to the Policy Overrides tab. Any value set here overrides the class, organization, and global defaults.

Part B: Auto-renewal flow

Step 5. If auto_renew is enabled and the customer has a valid payment method on file:

  1. The system creates a renewal charge via Stripe at the configured time before expiration.
  2. If payment succeeds, the entitlement's expiration date extends by the renewal period.
  3. The entitlement status remains active -- no interruption occurs.
  4. The customer and admin are notified of the successful renewal.
  5. A new invoice is generated in Stripe and synced to MIDDAG Account.

Step 6. To verify auto-renewal completed: open the entitlement and check that the Expiration Date moved forward. Also check MIDDAG Account > Invoices for the renewal invoice.

Step 7. If auto-renewal failed (payment declined, expired card):

  1. The system notifies the customer to update their payment method.
  2. Depending on the PaymentRecoveryPolicy, the entitlement may be suspended or given a grace period for retry.
  3. See Suspend for Non-Payment for the full suspension flow.

Part C: Manual renewal

Step 8. If auto-renewal is disabled, or if the customer wants to renew manually:

Option 1 -- Admin-initiated renewal:

  1. Open the entitlement detail page.
  2. Click Renew Entitlement.
  3. Set the new expiration date (the system pre-fills based on the renewal period).
  4. Optionally link a new WooCommerce order or quote for the renewal payment.
  5. Click Confirm Renewal.

Option 2 -- Customer-initiated renewal (via portal):

  1. The customer logs in and navigates to My Products.
  2. They see a "Renew" button next to entitlements approaching expiration.
  3. They click Renew, review the renewal terms and price, and proceed to payment.
  4. After payment, the entitlement expiration date extends automatically.

Option 3 -- Via new quote:

  1. Create a new quote for the renewal. See Issue a Quote.
  2. When the customer accepts and pays, the system can extend the existing entitlement or create a new one (depending on the product configuration).

Part D: Verify the renewal

Step 9. Go to MIDDAG Account > Entitlements and open the entitlement.

Step 10. Confirm:

  • Status is active.
  • Expiration Date has moved forward by the renewal period.
  • A renewal invoice exists under Invoices.
  • Downstream resources are unaffected: licenses remain active, environments are running, service contracts continue.

Step 11. For PLG entitlements: verify the license expiration date extended to match the new entitlement period. Existing site activations remain intact.

Step 12. For SVC entitlements: verify the linked Contract was renewed or a new contract was created. Check that the CreditBalance was replenished if applicable.

Expected result

  • The entitlement's expiration date has been extended.
  • Status remains active with no service interruption.
  • A renewal invoice or payment record exists.
  • Downstream resources (licenses, services, environments) continue uninterrupted.
  • The customer sees the updated expiration date in the portal.

Further reading