General Settings
To configure the extension, go to Stores > Configuration > AHEADWORKS EXTENSIONS >Advanced Subscription Products. The configuration page comes in six sections:
Integration Details
In the Integration details section, you can activate our Magento 2 Subscription extension and connect it to your store - it’s an essential step for the extension to function.
More information in the Manage License Keys article.
General Settings
The General section includes the following parameters:
- Fallback Shipping Method - select the default shipping method for subscriptions: flat rate (fixed) or table rate (the best way). This shipping method will be used when the shipping method from the initial order cannot be applied. For example, if you have a setting to offer free shipping for the orders with total greater than $100: The initial order can contain more products and its total will be greater than $100, but a single recurring order can be less than $100. This is when the extension will use this backup shipping method.
- Enable Extension Log - set to Yes if you need to log subscription updates, as well as the actions of the Customer and Admin.
The logs are saved on the server in the text files and don’t contain any sensitive customer data: It is listed as entity ID's, including subscription and customer ID's, the number of payment attempts left for the related subscription, subscription status, etc. The paths of the log files are: - var/log/aw_sarp2/engine.log
- var/log/aw_sarp2/payment.log
- Use Product Advanced Pricing – set to Yes to use special, group and tier prices to calculate the prices of the subscriptions.
How Advanced Pricing options affect subscription prices?
When Use Product Advanced Pricing is set to Yes the following takes place:
- Initial Fee Price
The Initial Fee Price of a subscription remains unchanged, Advanced Pricing options do not affect initial fee prices.
If you are planning to make discounts on the total price of a subscription, including its Initial Fee Price, consider configuring a Cart Price rule.
- Trial Period and Regular prices
When the Trial Period and/or Regular prices of a subscription are set as percent (%) of the original price, these percent values are applied to the amounts of the Advanced Pricing options to calculate the Trial Period and Regular prices. Rounding is then applied to the resulting amounts, if set in the settings of the plan.
Formula
Trial Period Price = Advanced Pricing * Trial Percent
For example:
Advanced Pricing = $50
Trial Percent = 10%
Trial Price Calculation: $50 * 10% = $5
Formula
Regular Price = Advanced Pricing * Regular Percent
For example:
Advanced Pricing = $50
Regular Percent = 50%
Regular Price Calculation: $50 * 50% = $25
When a Regular Subscription price is set as a fixed amount, the lower of the two (fixed Regular subscription price and Advanced Pricing option) is used as the price of the subscription.
For example:
Advanced Pricing = $50
Regular Price = $25
Regular Price ($25) < Advanced Pricing ($50)
Subscription Price will be $25.
The fixed Trial period price is disregarded. It is up to the Merchant to set it to a reasonable amount, which can be higher or lower than the Advanced Pricing option.
Learn more about Advanced pricing of products in the official Magento 2 user guide.
- Apply Lowest Possible Price on Recurring Orders - enable this option to ensure that customers receive the best available price for their subscription products. When enabled, all Discounts, Cart Price Rules and Advanced Pricing active on the day of a new charge will be applied, ensuring the lowest price is used. Please note: the option Apply Lowest Possible Price on Recurring Orders is only for native Magento Cart Price Rules, Catalog Price Rules, Advanced Pricing.
Here's how recalculations occur when various options such as discounts, Advanced Pricing, and Apply Lowest Possible Price on Recurring Orders are available for an order during charge generation.
Example 1: Plan Discount Only Conditions: Joust Duffle Bag costs $100. Plan discount: 25% Calculation of Subscription Price: $100 - 25% = $75.99 (because Price Rounding is set up to XX.99). |
When Advanced Pricing is enabled from the backend, then the Subscription Plan discount is applied on top of the Advanced Pricing.
Example 2: Plan Discount + Advanced Pricing Conditions: Joust Duffle Bag costs $100. Advanced Price: $90 Plan discount: 25%. Calculation of Subscription Price: $90 - 25% = $67,99. |
Example 3: Plan Discount + Advanced Pricing + Apply Lowest Possible Price on Recurring Orders Conditions: Joust Duffle Bag costs $100. Advanced Price: $90 Plan discount: 25% Cart Price Rule discount: 50% Apply Lowest Possible Price on Recurring Orders: Enabled Calculation of Subscription Price: Cart Price Rule discount > Plan discount (50% over 25%), then the system chooses the best price. So the Subscription Price for the subsequent payment is $90 - 50% = $45 |
Note: An option to Apply Lowest Possible Price on Recurring Orders works for subsequent subscription payments that are made automatically according to the plan (except for the very first order - initial order).
For the initial order the discount set in the Cart Price Rule is applied on top of the plan price.
Example 4: Plan Discount + Cart Price Rule (for initial order and recurring orders) Conditions: Joust Duffle Bag costs $100. Plan discount: 25% Cart Price Rule discount: 50% Apply Lowest Possible Price on Recurring Orders: Enabled Calculation of Initial Order Price: $100 - 25% - 50%= 37.99$ Calculation of Recurring Order Price: Cart Price Rule discount > Plan discount (50% over 25%), then the system compares discounts and chooses the best price. $100 - 50% = $50 |
And vice versa, when Plan discount is greater than Cart Price Rule discount, then Cart Price Rule discount is ignored and Plan discount is applied to the product price.
- Disable Guest Checkout - If the option is set to No (by default), guest checkout will be available for subscription products. If it is set as Yes, a popup will come up on the screen and ask for registration or authorization. Pay attention that if the Magento option Allow Guest Checkout is set to No, guest checkout will be unavailable in both cases.
- Out of stock handling – the feature allows you to manage what happens when a product in a subscription order is out of stock:
- Suspend Subscription – if a product is out of stock, the entire subscription will be suspended until the product becomes available again.
- Skip out of stock products and recalculate totals – this option skips the out-of-stock item in the subscription order and recalculates the total based on the available products. The subscription continues without interruption for the rest of the products.
Scheduler
The Scheduler section has the following parameters to set:
- Merge Same-Day Subscription Orders - set to Yes to group subscriptions with the same delivery date and time (within a cron run) into single orders (so that customers can save on shipping);
How are the same-day subscriptions merged? The options are applied to subscriptions of shippable products with the same shipping addresses. In case of different shipping methods, the one set as "Shipping Method For Subscription Orders" will be used. Make sure to set up a default shipping method for subscription orders (the option above). Merging subscriptions is only possible for registered users. The same payment method should be applied for subscriptions, and customers should have their credit card details saved in their account. Subscriptions made with the Mollie payment method won't be merged. |
- Number Of Attempts to Charge Failed Subscription - a dropdown to select the number of daily retries for charging a subscription fee in case of failure (numeric values 1-10).
- Payment Delay Handling - a dropout to set how to manage the dates of subsequent orders if there's a delay in payment for current order:
- Shift Following Orders (default) - when a payment is delayed, future orders are automatically rescheduled based on the new payment date (i.g. if a payment expected on Monday is processed on Wednesday, future orders will occur on Wednesdays).
- Mantain Schedule - despite a delayed payment, this option keeps future orders on the original schedule (i.g. if a payment due on Monday is processed on Wednesday, subsequent orders will still take place on Mondays as initially planned).
Product Page
The Product Page section contains the following settings:
- Subscription Plan Selector - decide between the two modes of Subscription Plan Selector as it will appear on the storefront page: Radiobutton or Dropdown;
Radiobutton
Dropdown
- Subscribe And Save Text - suggest a title for the hint to appear between the one-off purchase option and the list of subscription options (empty by default, not displayed when empty);
- Tooltip for Subscribe And Save - suggest a description of the hint to appear in a bubble when clicking or tapping on the question mark icon next to the hint (empty by default). HTML is supported;
- Subscription Plan Display Style - the Classic/Advanced switcher to define the format of the Regular and Trial Payments passage in the subscription details block on the following pages:
- Product Page
- Cart Page
- Order Success Page
- Order Page (backend/frontend)
- Subscription Page (frontend)
- Order Email notification (native Magento)
Classic switcher
Advanced switcher
- Subscription is Selected by Default - When enabled, the default plan will be automatically selected upon opening the product page. If no default plan is set, the first plan will be selected by default.
What will I see in the alternative format of the details of a subscription? 1. Details of repeated trial payments are displayed in the following way: “{Trial payment price} / Day”, “/ Week”, “/ Month”.
2. If the number of payments is given, then the format is the following: “{Trial payment price} / {Repeat Trial Payments} for (Number of Trial Payments) {Repeat Trial Payments} starting from {date}”.
3. If the value of Number of Payments is 1, the format is the following: “{Trial payment price} / {Repeat Trial Payments} for 1 {Repeat Trial Payments}” 4. If the value of Repeat Trial Payments is “Every Xth {period}”, the format is the following: “{Trial payment price} / {Repeat Trial Payments} for {Number of Trial Payments } * {Repeat Trial Payments (numeric part of the value)} {period}”. Example
Same format is true for the details on regular payments. Read more on the variable used herein in the Creating/Editing Subscription Plans Chapter. |
Email Settings
The Email Settings section contains the following parameters:
- Email Sender - the name of the default email sender;
- Successful Billing Email - Enable to send email alerts for successful subscription billing, or Disable Magento 2 newsletter subscription success email notifications;
- Billing Successful Email Template - the email template for successful subscription billing alerts;
- Failed Billing Email - enable/disable email alerts about failed subscription billing;
- Billing Failed Email Template - the email template for failed subscription billing alerts;
- Send BCC to Admin - the email addresses of the admins to receive blind copies of the emails on subscription billing failure (use commas to separate addresses, leave empty to disable the feature);
- Send Failure Alert to Admin - the email addresses of the admin to receive notifications on the order cancellation because of failed shipping or payment;
- Failure Alerts For Admin Template - the email templates for admin about billing failure;
- Subscription Created Email Template - the email template for admin about created subscriptions;
- Subscription Canceled by Admin Email - enable/disable email alerts about canceled subscription (by Admin);
- Subscription Canceled by Admin Template - the email template for canceled subscription alerts (by Admin);
- Subscription Canceled by Customer Email - enable/disable email alerts about canceled subscription (by Customer);
- Subscription Canceled by Customer Template - the email template for canceled subscription alerts (by Customer);
- Send “Upcoming Billing Reminder” Email in - the number of days before the next billing when the corresponding email reminder must be sent. Set to 0 to disable the notification. Notifications will not be sent for subscriptions with a billing cycle shorter than the specified number of days.
- Next Billing Email Reminder Template - the email template for next billing reminders;
- Send Secure Link to - automatically generate a secure link and send it to customers via email, allowing them to view subscription details without logging in. This feature can be enabled for all customers, only guests, or disabled altogether. Use the {secure link} variable to include the link. Note: If secure links are allowed to guest users only, a regular link to subscription is sent, and users should sign in to access it.
Notifications are sent in bulk on each cron launch. This includes notifications for subscriptions canceled by both the Admin and the Customer. |
Magento enables sending invoice emails to customers. Simply navigate to the required invoice in Sales > Invoices and click on Send Email.
Notifications for free trial subscriptionsVariables used: {customer name}, {product name}, {subscription ID}, {secure link}, {store details}, {total amount}. First notification that announces the customer subscribed successfully: Dear {customer name} You have successfully subscribed to {product name}. Your subscription ID is {subscription ID}. You can access your subscription by following this link {secure link}. If you need any assistance, please feel free to contact us at {store details}. Second email flow - in case subscription was created from backend with ‘Free Trial’:
Please note: in case the secure link is allowed for guest users only then we send regular link to subscriptions and users should be forced to sign in. |
Subscription Editing Settings
The 'Subscription Editing' section allows configuring the following parameters:
- Switch Subscription Plan - by choosing 'Yes' you will allow registered buyers to swap active subscription plans at any time they wish.
When switching to a new plan, any pending payments under the old plan are canceled. The first payment for the new plan is scheduled for the same date as the next payment under the old plan. Subsequent payments for the new plan will follow the new plan's payment schedule.
Example:
Plan 1:
Regular Payments = 5
Membership = Yes
Repeat - daily
Start date = May 1
Plan 2:
Trial Payments - 3
Regular Payments = 7
Membership = Yes
Repeat - weekly
The customer subscribed to Plan 1. After two payments, including the initial fee, three remain, with the next due on May 3rd. They switched to Plan 2. Upon switching, pending payments under Plan 1 are canceled, and the first payment under Plan 2 is scheduled for May 3rd, maintaining the same payment date. Trial payments are skipped.
Proration is not supported at the moment.
- Edit Shipping Address - by choosing 'Yes' you will allow registered buyers to change their shipping address linked to an active subscription at any time they wish.
- Enable Next Payment Date Editing - by choosing 'Yes' you will allow registered buyers to edit the date of next payment related to an active subscription at any time they want.
- Enable Next Payment Date Editing for Services - set this option to "Yes" to allow registered shoppers to edit the date of the next payment date for subscription plans that are set to "Services" mode. When a client reschedules the payment date for a subscription to a later time, the 'Services' mode will remain active during this period.
- Earliest Available Payment Date (Days) - type in the number of days towards earliest next payment within a subscription (Set to 1 to allow choosing "tomorrow", and then on likewise).
- Enable Product Editing - choose 'Yes' to allow registered shoppers to edit the product options and/or the quantity within a subscription.
- Enable One-time Product Editing - set 'Yes' to enable registered users to edit product options and quantity within subscriptions, with the choice to apply changes permanently or to the next order only.
When "Enable Product Editing" is set to No the "Enable One-time Product Editing" setting is not available and hidden from the list of settings.
The options "Enable Product Editing" and "Enable One-time Product Editing" determine how products within a subscription can be edited: either permanently or for the next order only (one-time). Here's what each mode entails:
- When "Enable Product Editing" is enabled (set to Yes) and "Enable One-time Product Editing" is disabled (set to No), any changes made by customers to product options or quantity will be permanently accepted for all future orders within the subscription.
- If both configuration options are enabled (set to 'Yes'), customers will have the choice between both modes. They will encounter a popup upon completing updates to the subscription, where they can select either mode. Opting for the "For Next Order Only" mode in the popup means that any changes made to the product configuration or quantity within the subscription will only apply to the upcoming order. Subsequent orders will follow the settings of the previously delivered subscription.
If a customer makes multiple updates to a subscription in the One-Time mode between two subsequent orders (for example, Nth and N+1st), and each time selects the "For the next order only" option, they will receive the next order (N+1st) based on the most recent changes made. However, after receiving the N+1st order, all changes to the product options within the subscription will revert to their state as per the previously received order (Nth).
- Enable Subscription Cancellation – set to ‘Yes’ to allow customers to cancel/resume subscriptions by default. This value can be overridden for each subscription plan on the Plan page on Backend. When set to “No”, the Cancel/Resume buttons are not displayed on the My Subscriptions grid.
- Enable Adding To Nearest Subscription - set to 'Yes' to allow customers to add one-off and subscription products from the cart to the nearest subscription (to save on shipping). This displays an 'Add to Nearest Subscription' button on the cart page and mini-cart modal, allowing customers to easily include items in their upcoming subscription orders.
- Enable Adding To Subscription - set to 'Yes', this feature enables customers to add a new subscription to an existing one under certain conditions. These conditions include having a subscription that matches the selected plan on the product page. If the customer has multiple subscriptions with this plan, they will be prompted to choose the specific subscription to which the new product will be added.
- Enable Skipping Product in Next Payment - set to ‘Yes’ to allow customers to exclude a particular subscription product from their next subscription payment.
Quick View
In the ‘Quick View’ section, you have the option to enable product previews directly on the category page. The following fields are available for configuration:
- Enable Quick View on Category Pages - by setting Yes, a small eye icon is added next to subscription products. When customers click on it, they can instantly view product details in the popup window, select options, and add items to their cart without needing to visit the product page.
- Tooltip for Quick View Icon - define the message to display in a tooltip when users click or hover over the eye icon, providing guidance or additional information about the Quick View functionality (default is empty). HTML formatting is supported.
- Quick View Content - select the elements to be shown in the popup window upon activation:
- Image and price
- Image, price and short description
- Show all
Want to learn more about Advanced Subscription Products? Read the following articles:
Already used our product?
We would appreciate your feedback. Please, leave a review.