=== Subscriptions for WooCommerce, Content Restriction & Stripe Recurring Payments ===
Contributors: emranio
Tags: woocommerce subscriptions, subscription box, recurring billing, content restriction, membership
Requires at least: 6.0
Tested up to: 7.1
Stable tag: 2.0.0
Requires PHP: 8.1
License: GPLv3 or later
License URI: https://www.gnu.org/licenses/gpl-3.0.html

ArraySubs WooCommerce subscription plugin with Stripe automatic payments, subscription box builder, recurring billing, membership & content gate

== Description ==

ArraySubs is a free plugin for WooCommerce subscriptions, membership sites & recurring billing with Stripe, Paddle, PayPal, Mollie. Sell recurring products, let customers build a **subscription box**, collect automatic payments and apply **content restrictions** from one subscription system. You can also sell **one-time lifetime deal (LTD) subscriptions** for ongoing access with a single payment. Use it for physical deliveries, digital downloads, online courses, premium content or service retainers.

Start with simple and variable subscriptions, a customer portal, member access rules and store management tools in the free plugin. ArraySubs Pro adds retention offers, advanced reports, account customization and other premium workflows as your store grows.

[Visit ArraySubs](https://arrayhash.com/product/arraysubs) | [User Guides & Documentation](https://support.arrayhash.com/arraysubs/)

= Free Automatic Payments: Stripe, PayPal, Paddle and Mollie =

**All ArraySubs automatic payment gateway integrations are included free: Stripe, PayPal, Paddle and Mollie.** You do not need ArraySubs Pro to collect automatic recurring payments through these gateways. Connect your payment provider, configure your subscription plans and collect renewals on schedule.

Stripe uses WooCommerce Stripe Gateway; Mollie uses Mollie Payments for WooCommerce. PayPal and Paddle integrations are built into ArraySubs. Gateway Health helps you check setup and supported features. Payment provider fees still apply.

= Build a Subscription Box Store =

Launch a subscription box business with the free Subscription Box product type. Let shoppers choose the contents of their box through a guided builder, with a live price summary before checkout. Use it for coffee, beauty products, food selections, hobby supplies or other recurring product collections.

* Build multiple selection steps using products, categories and custom fields.
* Set minimum and maximum quantities to control box size and available choices.
* Collect preferences, text responses and file uploads during box customization.
* Offer tiered discounts and freebies based on item count or box value.
* Keep selected products and pricing attached to the box for recurring orders.
* Configure the box's own renewal plans and first-charge rules in the free plugin.

For a fixed collection chosen by the merchant, ArraySubs Pro also provides a separate Subscription Bundle product type.

= Membership, Content Gate and Content Restrictions =

Build a WooCommerce membership site where access follows the customer's subscription. Put a content gate around a course library, member resource page or premium article, then choose what visitors see when they do not qualify.

Member Access supports rules based on subscription status, plans, purchased products or variations, categories, WordPress roles and lifetime spend. Combine conditions with nested AND/OR groups to create different membership tiers.

Free content restriction and membership features include:

* Restrict posts, pages, custom post types and taxonomy-based content.
* Configure access directly in the post editor or through reusable rules.
* Protect URL paths and redirect visitors or display an access-denied message.
* Gate part of a page with shortcodes, Elementor containers or Gutenberg blocks.
* Drip content by date or membership timing instead of releasing everything at once.
* Protect WooCommerce downloadable files and members-only shop areas.
* Hide products, block purchases, limit purchase quantities or restrict commenting.
* Offer member discounts, conditional pricing and free shipping.
* Map WordPress roles to subscription status and customize member styling.

These tools let you combine recurring membership fees with content access and shopping benefits. Pro Feature Manager adds plan entitlements and feature-based access conditions when you need them.

= WooCommerce Subscription Products and Recurring Billing =

Create simple subscriptions or variable products with separate plans for monthly, annual and other billing cycles. Configure each product or variation's price, interval, trial, signup fee and subscription length. Offer digital services, physical products or membership access through the same WooCommerce store.

* **Free trials and signup fees** - let customers try a plan and optionally charge a one-time setup fee.
* **Renewal pricing** - configure a different recurring price after a chosen cycle for introductory or loyalty pricing.
* **One-time lifetime deal (LTD) subscriptions** - charge once for lifetime membership or content access, with no recurring payments or renewal invoices.
* **Subscription coupons** - apply supported discounts and recurring cycle limits according to the selected gateway's capabilities.
* **Price locking** - preserve the subscriber's purchase-time rate when you change product pricing.
* **Purchase controls** - configure customer and product limits, mixed-cart rules and direct checkout links.
* **WooCommerce checkout** - support classic and block checkout, taxes and renewal orders.

For manual recurring billing, ArraySubs creates renewal invoices with payment links. Customers pay through WooCommerce checkout using an available payment method, including offline methods such as bank transfer. This also lets you sell subscriptions without enabling an automatic gateway.

Automatic billing features vary by provider. Stripe and Mollie renewals are scheduled by ArraySubs, while PayPal and Paddle manage their subscription billing schedules. Gateway Health shows availability and restrictions, and checkout checks whether a gateway supports the selected cart and plan.

= Renewal Flexibility and Payment Recovery =

Give subscribers ways to adjust their plan and give late payments time to recover:

* Configure grace periods and access behavior when a renewal is overdue.
* Use payment retry settings for supported ArraySubs-managed gateways; PayPal and Paddle handle their own payment recovery schedules.
* Let eligible customers skip a renewal or pause and resume their subscription.
* Control customer access while a subscription is paused.
* Allow upgrades, downgrades and crossgrades between selected plans, with configurable proration.
* Set an automatic downgrade target for supported expiry, cancellation or trial transitions.
* Align eligible renewals to billing boundaries with the free global Renewal Sync settings.

Available actions depend on your settings, subscription status and payment gateway. Pro adds Flexible Renewal Sync for ordinary products, customer-selected subscription terms and early renewal options.

= Customer Subscription Portal in WooCommerce My Account =

Let customers manage subscriptions from their existing WooCommerce account. The portal shows plans, statuses, next payment dates, billing details, related orders, invoices, refund history and available actions.

Subscribers can pay renewal invoices, cancel according to your policy, undo a scheduled cancellation, pause or resume, skip an eligible renewal and switch between allowed plans. Supported automatic gateways also provide payment-method and auto-renew controls. Clear confirmations and loading states help customers follow each action.

The subscription portal is included free. Pro Profile Builder and My Account Page Builder add custom profile fields, avatars, account menu editing and custom account pages.

= Subscription Management, Emails and Reports =

Manage subscribers from wp-admin with searchable lists, filters, status views and subscription detail screens. Create subscriptions manually for assisted purchases or store administration, and follow changes through notes and the lifecycle timeline.

* Review active subscriptions, recurring revenue, collected revenue and upcoming payments in the free Overview dashboard.
* Export subscriptions to CSV with selected columns, or export JSON for further processing.
* Manage full, partial and prorated refunds through the available refund workflows.
* Send WooCommerce-style customer and admin emails for signup, trials, upcoming renewals, invoices, payments, failures, cancellations and other lifecycle events.
* Check gateway setup and subscription operations using Gateway Health and dashboard notices.
* Support WooCommerce High-Performance Order Storage (HPOS).

Authorized admins can also use Login as User to investigate a customer's account without asking for their password, then return to their own session.

= Integrations for Courses, CRM, Affiliates and Licenses =

Connect installed plugins from Settings > Integrations. The ArraySubs connectors are included free; each connected plugin must be active, and its own feature requirements apply.

* **LearnPress** - link courses to subscription products or variations and control course content access by subscription status. LearnPress continues to handle enrolment.
* **Tutor LMS and Academy LMS** - manage course enrolment as eligible subscriptions become active or lapse.
* **Affiliates Manager by WP Insider** - credit the referring affiliate on paid renewal orders.
* **CartFlows** - create subscriptions from supported upsell and downsell purchases. One-click offer steps require CartFlows Pro.
* **WP Fusion** - update CRM tags as subscription statuses and billing events change.
* **FluentCRM** - trigger automations for activation, paid or failed renewals, cancellation, expiry and trials.
* **License Manager for WooCommerce** - update license expiry on renewal and follow subscription access changes.

= What ArraySubs Pro Adds =

The free plugin includes subscription products, the subscription box builder, automatic payments, recurring billing, content restrictions and membership access. Choose ArraySubs Pro for additional customer experience and reporting tools:

* **Retention Flow Builder** - collect cancellation reasons and present targeted discount, pause, downgrade, skip or contact-support offers.
* **Retention and Refund Analytics** - examine churn, retention, cancellation reasons, offer results and refunds.
* **AI Churn Analysis and AI Revenue Forecast** - explore customer risk and revenue projections alongside advanced reporting.
* **Store Credit** - offer customer wallets, credit purchases, refund-to-credit, transaction history and expiry rules.
* **Checkout Page Builder** - customize classic checkout with fields and conditional steps.
* **Feature Manager** - define plan entitlements, show included benefits and use feature-based member access rules.
* **Subscription Bundle** - sell a merchant-curated collection as one bundle.
* **Flexible Subscription and Flexible Renewal Sync** - offer customer-selected terms and configurable billing segments for ordinary products.
* **Fixed Period Membership and Subscription Shipping** - configure fixed membership dates and recurring shipping workflows.
* **Profile Builder and My Account Page Builder** - personalize profiles and account navigation.
* **Member Insight and audit tools** - review customer activity, operational events and scheduled jobs.
* **Additional controls** - early renewal, concurrent login limits, product page redirects and cart information display settings.

= Get Started =

Install ArraySubs alongside WooCommerce and follow the Easy Setup Wizard. Configure billing and customer permissions, create your first subscription product or box, then add membership rules if you sell protected content. Settings import and export help you reuse your setup. Optional login-page, admin-bar and dashboard-access controls keep the customer experience focused on WooCommerce My Account.

== Frequently Asked Questions ==

= Is ArraySubs a free WooCommerce subscriptions plugin? =
Yes. The free plugin includes simple and variable subscriptions, Subscription Box products, all four automatic gateway integrations, manual recurring billing, the customer portal, membership rules, content restrictions, emails and the Overview dashboard. Pro adds optional features such as retention offers, advanced analytics and account customization.

= What do I need to use ArraySubs? =
Install and activate WooCommerce alongside ArraySubs to create recurring products, subscription boxes, memberships and services. To collect automatic payments, configure one of the supported payment gateway integrations.

= Are all automatic payment gateways included free? =
Yes. Stripe, PayPal, Paddle and Mollie automatic payment integrations are all included in the free ArraySubs plugin. No ArraySubs Pro license is required for automatic renewals. You need a configured payment provider account, and the provider's processing fees still apply.

= Do Stripe and Mollie need another plugin? =
Yes. Stripe requires the official WooCommerce Stripe Gateway plugin, and Mollie requires Mollie Payments for WooCommerce. ArraySubs includes its PayPal and Paddle integrations directly. Use Gateway Health to check requirements, connection status and supported capabilities.

= Can I offer manual recurring billing or bank transfer? =
Yes. ArraySubs creates renewal orders and sends customers a payment link. They can pay through WooCommerce checkout using an available method, including bank transfer. Manual renewal invoices do not require an automatic payment gateway.

= Can customers build their own subscription box? =
Yes. The free Subscription Box builder lets customers select products through multiple steps. You can set quantity limits, collect preferences or uploads, and offer discounts and freebies based on the box contents. Selected products and pricing carry into recurring orders.

= What is the difference between Subscription Box and Subscription Bundle? =
Subscription Box is free and lets shoppers customize their contents through a guided builder. Subscription Bundle is a Pro product type for a fixed collection selected by the merchant. Choose based on who selects the products in the recurring package.

= Can I sell monthly and annual plans with trials or signup fees? =
Yes. Simple products and individual variations can have their own billing cycles, trials, signup fees, subscription lengths and renewal pricing. Gateway support varies. For example, Mollie free trials require a method that supports a zero-amount first payment, such as card or PayPal.

= Can I sell one-time lifetime deal (LTD) subscriptions? =
Yes. The free plugin supports Lifetime Deal subscriptions on simple products and variations. Customers pay once for ongoing membership or content access, with no recurring charges or renewal invoices.

= Can I create a membership site with content restrictions? =
Yes. The free plugin combines membership billing with rules for posts, pages, custom post types, URL paths and WooCommerce downloads. Base access on subscription status, plans, purchases, roles or spend, and combine conditions for different membership tiers.

= Can I add a content gate to part of a page? =
Yes. Use restriction shortcodes, Elementor container controls or the Gutenberg restricted-content block to gate a section while leaving the rest visible. You can also drip content over time and choose an access-denied message or redirect for protected content.

= Can members receive discounts and shopping benefits? =
Yes. Member Access includes conditional discounts, member pricing, free shipping, product visibility, purchase restrictions and role mapping. Apply conditions based on the member's subscriptions, purchases, role or spend to control who receives each benefit.

= Can customers cancel, pause or change their subscriptions? =
Yes. Customers use WooCommerce My Account to view details, pay invoices and take the actions you enable, including cancellation, scheduled-cancellation undo, pause, resume, skip and plan switching. Availability depends on the subscription and gateway; PayPal, for example, does not support skipping a renewal.

= What happens when an automatic renewal payment fails? =
ArraySubs supports grace periods and payment recovery. Stripe and Mollie use ArraySubs retry settings; PayPal and Paddle run their own recovery schedules. Customer emails and payment actions help resolve unpaid renewals, while your grace-period settings determine access during recovery.

= Can I sync renewals to a shared billing date? =
Yes. The free global Renewal Sync settings align eligible subscriptions to billing boundaries. Subscription Box also includes its own renewal-plan configuration. Pro Flexible Renewal Sync adds configurable billing segments and first-charge choices for ordinary products. Gateway and trial restrictions apply.

= Does ArraySubs support WooCommerce block checkout and HPOS? =
Yes. ArraySubs supports classic checkout, block checkout and High-Performance Order Storage. Available payment methods depend on the cart and subscription terms. Pro Checkout Page Builder customizations are intended for classic checkout.

= Which course, CRM and affiliate plugins can I connect? =
Built-in connectors support LearnPress, Tutor LMS, Academy LMS, WP Fusion, FluentCRM, Affiliates Manager, CartFlows and License Manager for WooCommerce. Enable them under Settings > Integrations. Connected plugins must be active; CartFlows one-click offers require CartFlows Pro.

= Does LearnPress access include automatic enrolment? =
ArraySubs controls access to the LearnPress courses linked to a subscription product or variation. LearnPress handles enrolment. Course content access follows the qualifying subscription, while free preview lessons remain available.

= Can I export subscriptions and send renewal emails? =
Yes. Export subscriptions to CSV or JSON, and import or export setup settings as JSON. ArraySubs also sends WooCommerce-style customer and admin emails for trials, renewal reminders, invoices, successful payments, failures, cancellations and other subscription events.

= Are cancellation offers and retention analytics free? =
These are Pro features. The free portal supports customer cancellation. Pro Retention Flow Builder adds targeted save offers, and Retention Analytics reports churn, cancellation reasons and offer results. The free Overview dashboard covers core subscription and revenue summaries.

= Can I customize member profiles and My Account pages? =
The subscription portal is free. Pro Profile Builder adds custom profile fields and avatars, while Pro My Account Page Builder lets you reorder, rename, hide or add account pages and menu entries.

= What else does ArraySubs Pro add? =
Pro adds Store Credit, Checkout Page Builder, Feature Manager, Subscription Bundle, flexible subscription terms, Flexible Renewal Sync, fixed membership dates, subscription shipping, early renewal, Member Insight, audit tools, login limits, Refund Analytics and AI reports. Automatic payments and core membership access remain free.

== Screenshots ==

1. Admin bar visibility toggle
2. Admin store credit customer management
3. Credit history pagination read-only note
4. Customer actions cancellation timing
5. Customer search results dropdown
6. Member commerce subscriptions
7. My Account editor disabled
8. Order list overview
9. Orders type filter and column
10. Product editor helper links and active warning
11. Profile form disabled
12. Refund method store credit preview
13. Retention filters summary cards
14. Retention offers master discount
15. Scheduled URL rule builder
16. Simple linked products plan switching
17. Simple product page subscription pricing
18. Subscription performance full dashboard
19. Toolkit WordPress login settings
20. Admin dashboard access controls
21. Avatar settings enabled
22. Cancellation reason editor
23. Coupon subscription filter
24. Fixed store credit product editor
25. Member profile overview
26. Menu items enabled
27. Orders advanced type filter
28. Pause downgrade contact offer fields
29. Product page feature manager display
30. Refund as credit confirmation modal
31. Refunds settings overview
32. Retention charts
33. Store credit quick link destination
34. Subscription performance overview
35. Subscription refund order history
36. Variable variation helper links
37. Active subscriptions product usage
38. Backfill complete notice
39. Contact support offer fields
40. Custom item fields
41. Custom profile field editor
42. Customer cancellation reason modal
43. Retention analytics overview
44. Revenue subscription cards
45. Show features destination
46. Variable product selected plan display
47. WooCommerce refund method store credit
48. WordPress login page redirect controls
49. Cart subscription line item (annotated)
50. Cart subscription line item (original)
51. Customer cancellation other reason
52. Customer retention offers modal
53. Customer store credit portal
54. Login as user impersonation toggle
55. Select field options
56. File upload field settings
57. Multi-login prevention pro controls
58. Plan switching settings
59. Checkout subscription summary
60. Feature manager product configuration (annotated)
61. Feature manager product configuration (original)
62. Role mapping overview

== Changelog ==

= v2.0.0 - 5 september, 2026 =
* Added: Subscription Box product type for customer-built boxes with one recurring price.
* Added: PayPal support in the WooCommerce Checkout block.
* Added: Mollie is now in ArraySubs.
* Added: Automatic repair for disabled or incomplete Stripe secondary webhooks, with failure notices.
* Added: Overview dashboard with subscription metrics, revenue, upcoming renewals, and recent subscriptions.
* Added: Member Styling with conditional body classes and custom CSS.
* Added: Comment Restriction rules under Member Access.
* Added: Conditional purchase limits per product or order under Member Access.
* Added: Per-post access restrictions in Gutenberg and the classic editor, with All/Any conditions and optional admin bypass.
* Added: Custom denial messages or redirects for restricted posts, with self-redirect protection.
* Added: Free shipping for qualifying member discount rules.
* Added: Login status and “Has NOT Subscription/Variation” rule conditions.
* Added: Original and sale prices in the Subscription Box builder, cart, and checkout.
* Added: LearnPress course access linked to subscriptions, with custom restriction messages and free previews.
* Added: Renewal commissions for Affiliates Manager by WP Insider, with duplicate protection and subscription notes.
* Added: CartFlows subscription upsells and downsells, carrying saved payment cards into automatic renewals where supported.
* Added: WP Fusion tags for subscription status changes, renewal failures, and trial conversions.
* Added: FluentCRM subscription lifecycle triggers with product filters.
* Added: Tutor LMS and Academy LMS course enrolment linked to subscription status.
* Added: License Manager for WooCommerce expiry sync, reactivation, and duplicate renewal-key prevention.
* Added: Customer shipping and billing addresses in subscription CSV exports.
* Added: Searchable CSV column picker with 47 fields and saved per-administrator preferences.
* Added: Separate Allow Resume setting for customer pauses, linked from General settings.
* Added: Daily card-expiry checks with warnings around 30 and 7 days before expiry, reset on card replacement.
* Changed: Profile Builder, custom profile fields, and avatar uploads now require ArraySubs Pro.
* Changed: My Account menu editing now requires ArraySubs Pro.
* Changed: Retention Flow and Profile Builder show upgrade screens without Pro; unavailable Pro reports cannot open missing routes.
* Changed: Customer vacation pauses use Paused status; On Hold is reserved for payment recovery and admin holds.
* Improved: Gateway capabilities govern carts, plan changes, billing dates, and renewals across Stripe, PayPal, Paddle, and Mollie.
* Improved: Gateway Health explains unsupported capabilities for each provider.
* Improved: Renewal Sync checkout messages identify unsupported payment methods without outdated gateway lists.
* Improved: Comment and purchase limits are enforced server-side, including direct requests and REST/Store APIs.
* Improved: Cart validation uses each item's actual subscription pricing.
* Improved: Integration access changes preserve manual grants and access from other active subscriptions.
* Improved: Trashing subscriptions no longer triggers integration cancellations.
* Improved: CSV exports respect gateway, search, and status filters.
* Improved: CSV exports stream in batches and neutralise spreadsheet formulas.
* Improved: Access-Rule Conflicts explains per-post overlaps and lets admins disable conflicting site-wide rules with audit notes.
* Improved: Pause-access policy changes update roles and third-party access for already-paused subscriptions.
* Improved: Plan-switch searches show eligible published, in-stock plans, daily rates, and crossgrade guidance; selections are revalidated on save.
* Fixed: Paddle checkout totals include taxed fees and shipping, with clear errors for unsupported discounts and line-item limits.
* Fixed: Incompatible gateways no longer block carts supported by another enabled gateway or silently empty payment choices.
* Fixed: Checkout keeps payment methods available and skips Renewal Sync when no method supports it.
* Fixed: Renewal grace periods wait for pending gateway settlements before resuming payment recovery.
* Fixed: Late-settling renewals advance past billing dates to the next valid date and record unbilled cycles.
* Fixed: Reactivation preserves shared Renewal Sync billing dates.
* Fixed: Order-type shortcuts open correctly filtered WooCommerce Analytics Orders reports.
* Fixed: Retention report charts and tables are included in release builds.
* Fixed: Product types managing their own subscription data can save and publish without invalid-price errors.
* Fixed: Initial checkout order items retain their subscription IDs.
* Fixed: Helper text appears on Skip & Pause, Feature Manager, and Cancellation settings without console warnings.
* Fixed: Easy Setup skips Pro-only imports when Pro is inactive, preserving stored settings.
* Fixed: Per-post access decisions consistently override site-wide URL and archive-hiding rules.
* Fixed: Paused access respects None, Limited, and Full policies; Limited allows protected viewing without member benefits.

= v1.8.12 - 15 august, 2026 =
* Added: Stripe, Paddle, PayPal, and Mollie automatic payment gateways and renewal automation to the free core plugin.
* Added: Subscription Box products, including the admin box wizard, storefront builder, pricing rules, renewals, and included-subscription lifecycle, to the free core plugin.
* Improved: Existing gateway IDs, settings, tokens, webhook routes and events, and scheduled renewal jobs continue without payment reauthorization during upgrades.
* Improved: Customer portal auto-renew controls now use the shared confirmation, toast, and visible loading systems.

= v1.8.11 - 16 july, 2026 =
* Added: [new] Cart Info Editor settings to hide first billing cycle, shipping charge, and duration details across classic and block carts, checkouts, emails, and mini/flying carts.

= v1.8.10 - 14 july, 2026 =
* Added: Support for customer-selected subscription terms.
* Improved: Clearer trial and recurring billing details in carts and checkout.
* Fixed: Customer-selected billing terms now carry reliably through checkout, renewals, and plan changes.

= v1.8.9 - 9 july, 2026 =
* Improved: UI.
* Fixed: Renewal prorate issue.

= v1.8.8 - 30 june, 2026 =
* Improved: UI in classic checkout.
* Fixed: Double checkout button in cart page.

= v1.8.7 - 29 june, 2026 =
* Fixed: Fatal error when a third-party plugin changed the global `$product` value to a string and ArraySubs later called `is_type()` on it.

= v1.8.6 - 27 june, 2026 =
* Added: Gutenberg block UX improvement.

= v1.8.5 - 27 june, 2026 =
* Added: Gutenberg block support for content restriction and member access.
* Added: UX improvement.

= v1.8.4 - 25 june, 2026 =
* Added: Elementor widget controls for content restriction and member access.

= v1.8.3 - 20 june, 2026 =
* Fixed: CustomEndpoints status-counts and select-options REST routes now require `manage_woocommerce` or `manage_options`, preventing lower-privileged users from enumerating private admin data such as subscription counts, titles, and terms.
* Fixed: Admin input, select, and button heights now stay aligned under WordPress 7.0 across subscription lists, Activity Audits, Gateway Logs, Role Mapping, Grace Period, and related admin screens.
* Improved: Activity Audits table readability by allowing audit and renewal-failure columns to size to their content, replacing separate Author / Type / Visibility columns with a stacked Meta column, and restoring centered icon-and-label filter buttons.
* Improved: Restriction Rule Builder condition separators now align more cleanly with nested condition rows.
* Improved: Admin UI primary colors now follow the active WordPress admin color scheme through `--wp-admin-theme-color`, including DataList, FormBuilder, admin pages, shared components, and customer portal styles.
* Improved: FormBuilder and DataList theme variables now use WordPress admin color variables with safe fallback values for older WordPress and frontend contexts.
* Improved: Async CSS chunks now include a content hash in their filenames so rebuilt chunk styles invalidate browser caches correctly.

= v1.8.2 - 7 june, 2026 =
* Added: Renewal Sync settings in General Settings so new non-trial subscriptions can renew on the next billing-cycle boundary (next day, next store week, first day of next month, or January 1 for yearly plans).
* Added: Renewal Sync first-charge options for either a prorated signup charge until the synced renewal date or a full recurring charge at signup.
* Added: Easy Setup wizard questions for enabling Renewal Sync and choosing the first-charge behavior during initial store configuration.
* Improved: Checkout, cart, and subscription summaries now show synced first-charge wording, the first full renewal date, and the correct next charge amount/date when Renewal Sync is active.
* Improved: Renewal Sync now applies prorated signup pricing in cart and checkout, stores renewal-sync metadata on created subscriptions, and keeps future renewal dates anchored to the expected billing-cycle boundary.
* Improved: Renewal Sync checkout support is now limited to manual/offline gateways and Stripe, with unsupported automatic gateways hidden or blocked when a synced subscription is in the cart.
* Improved: Skip Renewal now accepts, stores, and returns a skip reason through the REST API and skip history metadata.
* Improved: General Settings save actions now show a spinner/loading state while settings are being saved.
* Improved: Updated readme product links from `arrayhash.com/arraysubs` to `arrayhash.com/product/arraysubs`.

= v1.8.1 - 1 june, 2026 =
* Added: Add New Subscription now prefills customer information when an admin selects a user, including invoice email, billing email, billing phone, billing address, primary shipping address, shipping phone, and saved additional shipping addresses.
* Added: Manual subscription billing data now includes a dedicated Billing Email field, and shipping data now includes a Phone field.
* Added: Saved Shipping Address selector on the Add New Subscription form, allowing admins to switch between the customer's primary and additional shipping addresses before saving.
* Added: Manage Members profile editing UI for account details, billing address, primary shipping address, and multiple additional shipping addresses, with a shared SpinnerButton loading state during save.
* Improved: Manage Members displays additional shipping addresses in the Addresses panel.
* Improved: Core/pro customer profile data now stays aligned so member information edited in Manage Members can be reused by the manual subscription form.
* Improved: Stripe automatic payment sync support in the pro companion now creates and repairs the ArraySubs Stripe webhook connection through the official WooCommerce Stripe API, syncs test/live webhook secrets, and keeps Gateway Health aligned with the connected webhook.
* Fixed: Feature Manager invalid-row cancel leaves blank feature.
* Fixed: Pro Plan fixture price mismatches QA plan.
* Fixed: Feature Manager settings controls do not toggle from browser clicks.
* Fixed: Subscription detail missing Feature Log entry point.

= v1.8.0 - 23 may, 2026 =
* Fixed: Shop Manager role can now access the ArraySubs admin menu and settings pages (required capability changed to manage_woocommerce).
* Fixed: Admin top-level menu now labeled "ArraySubs" instead of "Subscription".
* Fixed: Automatic Payments settings section is now hidden when ArraySubsPro is inactive.
* Added: Customer Action controls with pause and resume managed from Skip & Pause settings.

= v1.7.10 - 8 may, 2026 =
* Added: Loading state added to all action buttons on admin panel and My Account.
* Fixed: include error - order-subscriptions.php

= v1.7.9 - 2 may, 2026 =
* Added: Enhanced subscription action button styling and improved the customer portal layout.
* Added: Enhanced subscription status handling and payment processing logic.
* Added: Improved guest-customer subscription handling and status management.
* Added: Enhanced retention and skip management logic with improved order handling and validation.

= v1.7.8 - 29 april, 2026 =
* Added: Enhanced subscription cancellation logic and loading styles in activity audits.
* Added: Custom WooCommerce query vars for subscription endpoints and loading styles.

= v1.7.7 - 29 april, 2026 =
* Added: Payment retry controls with pre-retry charge verification, gateway-specific retry settings, manual retry actions, and gateway sync endpoints.
* Added: Pending cancellation workflow with customer portal indicators, undo support, and customer/admin email notifications.
* Added: Customer-facing subscription reactivation with a dedicated REST endpoint, portal button, and success/error handling.
* Added: Enhanced plan switching with server-side proration enforcement and explicit switch fee handling.
* Added: Pending switch details and cancellation controls in the subscription admin and customer portal.
* Improved: Plan switching now resolves product prices through the centralized proration calculator and handles quantities consistently.
* Improved: Renewal orders, notes, and timeline events now use structured event types for clearer tracking and display.
* Improved: Customer portal API calls now use REST URL building helpers for better permalink compatibility.
* Improved: Cancellation handling now consolidates subscription ID resolution and removes redundant meta updates.
* Improved: Renewal order creation now handles shipping context dynamically.
* Fixed: Scheduled cancellation checks now skip subscriptions that are already cancelled or expired.
* Removed: Legacy sync-renewal settings, helper functions, UI cards, and unused styles.
* Removed: Legacy portal action and suspension toggles from settings payloads and Easy Setup.

= v1.7.6 - 15 april, 2026 =
* Fixed: Suppression of add-to-cart success notice for one-click checkout.
* Fixed: One subscription per customer validation in cart and checkout processes.
* Fixed: Filter to hide cash on delivery for subscription checkout products.
* Fixed: Trial quantity validation for subscription products in cart.
* Fixed: Subscription gateway validation on reactivation to ensure proper billing setup.
* Fixed: Next payment date is now calculated automatically from the billing schedule; manual editing, related hooks, and admin UI were removed.
* Fixed: REST methods now use POST for retention offers and undo skip actions.
* Fixed: Cancellation reasons handling now uses a single source-of-truth function for consistency.
* Fixed: Customer portal settings no longer include menu title and position options.
* Fixed: Renewal sync alert in General Settings now displays conditionally based on sync_enabled status.
* ImpFixedroved: Localization for date and duration strings in formatting functions.
* Removed: arraysubs_next_payment_date_changed hook and its AutoNotes handler.

= v1.7.5 - 12 april, 2026 =
* Improved: All action buttons are now position-fixed at the bottom for better UX.
* Improved: Setup wizard next/prev navigation now auto-scrolls to the top.
* Fixed: Free trial subscription checkout now handles payment skipping or enforcement per setting, with trial-only cart and signup fee detection, $0 trial pricing during order processing, preserved $0 prices during checkout migration, and trial-started hook firing at the correct time.
* Fixed: Free trial label no longer shown with an incorrect 'every' prefix.

= v1.7.4 - 10 april, 2026 =
* Fixed: Header was sent before session start due to an unwanted newline.

= v1.7.3 - 5 april, 2026 =
* Improved: Added the user documentation URL.
* Fixed: Minor bug fix.

= v1.7.2 - 5 april, 2026 =
* Fixed: Minor bug fix.

= v1.7.1 - 28 march, 2026 =
* Improved: CSS improvements.
* Fixed: Minor bug fix.

= v1.7.0 - 24 march, 2026 =
* Added: [hot] [new] Automatic downgrade targets that can move a subscription to another plan when it expires or is cancelled.
* Added: [hot] Multiple-subscription cart controls with new mixed-cart and billing-cycle settings, classic cart and Store API validation, and General Settings UI toggles.
* Added: [new] A retention analytics page with overview and detailed logs.
* Added: Checkout-time subscription migration flow with an auto-migrate-on-checkout setting, cart and order migration handling, and migration processing safeguards.
* Improved: Settings sanitization and REST settings output for renewal sync, proration, automatic payments, feature manager options, and new multiple-subscription controls.
* Improved: Cart validation and checkout messaging for mixed carts, multiple subscriptions, differing billing cycles, distinct subscription products, and one-per-product quantity rules.
* Fix: A styled Help page with the correct help email address.
* Fix: Renewal payment failure hooks and gateway failure handling for emails, notes, and renewal processing.

= v1.6.0 - 20 march, 2026 =
* Added: [new] Subscription tag in the WooCommerce product list.
* Fixed: Product edit UI issues on larger screens.
* Fixed: Different time zones being shown in different places.
* Fixed: Duplicate note entries by standardizing subscription notes and the creation event.
* Removed: Default subscription fields settings.
* Removed: Place Order Text settings.

= v1.5.0 - 18 march, 2026 =
* Added: Toolkit settings for hiding the frontend admin bar and restricting `/wp-admin` and `/wp-login.php` access for non-admin users.
* Added: Member Access discount rules for subscriber-only product discounts across products, categories, tags, cart, and checkout.
* Added: Member Access ecommerce rules for members-only product visibility and purchase restrictions.

= v1.4.0 =
* Added: [hot] When a user accepts any retention offer, he will get an email confirmation as well.
* Improved: [hot] System notes are now more detailed.
* Improved: Separated retention flow.
* Improved: Better UX.
* Improved: Improved member access.

= v1.3.0 =
* Added: [new] Notes are added after a user takes an offer from the retention flow.
* Added: [new] Already taken options are hidden in the next retention flow step.
* Improved: CSS improvements.
* Improved: Improved the retention flow UI in the customer portal.
* Fixed: The retention flow secondary modal does not show up.
* Fixed: Taking a retention offer does not update the next scheduled price.
* Removed: Early renew due to payment gateway limitations.

= v1.2.0 =
* Improved: Improved the AJAX select field and its CSS in the Restriction page.
* Fixed: Customer search not working in the Add New Subscription page.
* Fixed: Product search not working in the Restriction page.

= v1.1.0 =
* Added: [new] Content restriction module.
* Fixed: JS error and styling issues.

= v1.0.0 =
* Added: Initial release.
* Added: Subscription product creation and management.
* Added: Recurring billing system.
* Added: Customer subscription portal.
* Added: Email notifications.
* Added: Refund and proration system.

== Support ==

For setup help, feature guides, and troubleshooting, visit the [ArraySubs User Guides](https://support.arrayhash.com/arraysubs/).

For product information, visit [ArraySubs](https://arrayhash.com/product/arraysubs).
