Adaptive Subscriptions

Adaptive Subscriptions
M2

TOTAL:
$699.00
Compatible With: Community 2.1, 2.2 Enterprise 2.1, 2.2

Tech Specifications

Current Version:
3.0.0
Type:
Stable Build
Updated:
17 April, 2018
Categories:
Extensions, Payments & Security, Checkout Enhancements
License Type:

Overview

The best subscriptions solution, bar none. Your store is your business. Make sure you do it right.

Overview

Back to top

Every business wants dependable revenue. Adaptive Subscriptions is a way to achieve that. You already have a product or service in mind: Product subscriptions. Autoshipments. Automatic recurring billing. You just need a way to make it work. That's where we come in. Subscriptions give your customers what they want, and give you dependable revenue and brand loyalty. The best customer is one that keeps coming back. Subscriptions help you ensure that.

We've been dealing with subscriptions since the early days of Magento. This extension is the result of all of that expertise, plus years of careful development and improvements. This is a proven, highly powerful, highly flexible subscriptions solution--the best.

This is not a service. There are no ongoing costs. If you buy a license, it's yours, along with free support and free updates.

Have a recurring revenue model in mind? Adaptive Subscriptions can probably handle it. And if it isn't supported out-of-box, get in touch with us and we'll help you figure out what's involved. We're always looking for ways to make our products better. We stand by our work.

 

Cart / Checkout

  • Our subscriptions are just normal products. You can buy any number of subscriptions and regular products at once, with any combination of intervals.
  • All shipping methods are supported. Shipping costs are recalculated for every installment, guaranteeing accurate rates. If a shipping method becomes unavailable, each subscription will automatically switch to the next best option.
  • Every item becomes a separate subscription and can be modified and canceled separately. If a customer has multiple subscriptions on the same day, they'll be combined into a single order, saving you shipping costs and overhead.
  • Guests can purchase subscriptions with no hassle. They'll be auto-registered during checkout.
  • All standard Magento checkouts and most third-party checkout solutions are compatible.

Scheduling

  • Customers can choose subscription frequency from product options. Every 30 days? Every 90 days? One time only? Make it their choice. Or don't: You can also make single-interval products that are automatically subscriptions.
  • Subscriptions can run for a limited number of installments, or forever. You can choose whether customers are allowed to cancel.
  • You have complete control over when subscriptions bill. Normally all subscriptions are billed automatically by an hourly scheduled task. But you can turn that off and run subscriptions from the command line, or by manually selecting individual subscriptions to bill from the admin grid. Want to bill subscriptions when you're ready to process them? You can do that. Want to run one ahead of schedule for a customer? You can do that too.
  • You can also set blackout dates, days, or even whole months. Installments will only be scheduled on days allowed by configuration. You can run your subscriptions on the 1st and 15th of the month, or only on weekdays. Or skip holidays. Or your birthday (you deserve it). All it takes is a setting.

Payment

You can pay for subscriptions with any Magento Vault, ParadoxLabs, or offline payment method, including:

Adaptive Subscriptions also supports $0.00 ordering with most payment methods. Every subscription installment creates a new order. Payment is immediately authorized or captured using the payment data on file. The payment method and card can be changed after purchase (subject to payment method support).

If a subscription fails because of invalid payment information, the customer will be emailed asking them to update their payment info and reactivate the subscription. As soon as a failed subscription is reactivated, it'll return to its normal schedule.

 

Pricing

  • You can define custom pricing for each subscription option on a product. You can also discount the first installment or charge a setup fee, using an adjustment price.
  • You can give customers a discount for subscribing to a product.
  • You can create cart price rules and promotions based on whether the customer is buying a subscription, what interval they chose, and what installment it is!
  • Coupons apply to the first installment only. Any price rules or custom subscription pricing takes effect when items are added to the cart.
  • All prices support Magento currency conversion, and all text can be translated.

 

Management

Customers can manage their own subscriptions: They can view current info, change payment details and shipping address, and pause or cancel (if you let them). You can also notify the customer in advance of each installment, for each order, and for any payment errors that occur.

Admin grids let you view, search, sort, filter, and export your subscriptions, as well as reviewing every billing, error, and change that's occurred.

As an admin you can look up subscriptions by name, email, description, and order ID. Admins can change many details about a subscription, including the status, next installment date, frequency, description, length, payment account, shipping address, shipping method, and admin-only notes.

You can make any product type a subscription, including simple, virtual, configurable, downloadable, and bundle products. Some product types are subject to limitations. Please see the user manual for more info.

 

Flexibility

Every business is special. We hope this extension does everything you need, but if not, it should be easy to get it there.

Adaptive Subscriptions was carefully designed to be as extendable as possible. Under the hood, you'll find clean code and an architecture that makes it easy to change or even totally replace large parts of the default functionality.

This extension includes full Magento API support, with comprehensive documentation and additional technical info in the user manual.

 

Documentation

The user manual covers:

  • Installation
  • Configuration
  • Features and usage
  • Common questions and issues
  • Technical info

View: Adaptive Subscriptions User Manual (PDF)

 

Quality

We are experienced, certified Magento developers. All of our code is clean, well-documented, and follows all Magento standards and techniques. We make sure to do things the right way.

Our source code is 100% unencoded (viewable source). When you purchase this extension, you get full access to view and modify it any way you need to (within the license terms).

ParadoxLabs is a proud Magento Solution Partner and member of ExtDN.org, the Extension Developers Network.

Support

We pride ourselves on excellent support, which includes free bug fixes and updates for the lifetime of this extension. If you find that it doesn't work as we intended in a standard installation, we'll help you make sure that it does.

ParadoxLabs has been building and maintaining Magento payment solutions for years. Our extensions process nearly $2 billion dollars in transactions every year for thousands of stores like yours, and our support is top-notch.

Our staff are all located in the United States, with an office in downtown Lancaster, PA, open weekdays from 8 AM to 5 PM Eastern Time. Have a question, or want to try it out? Give us a call at 717-431-3330, or email us at sales@paradoxlabs.com.

 

Release Notes

Back to top

3.0.0:

  • Compatible with CE: 2.1 2.2
  • Compatible with EE: 2.1 2.2
  • Stability: Stable Build
  • Description:

    - Added guest checkout support (auto-registers customer if a subscription is purchased).
    - Added pre-bill email notifications.
    - Added Magento multi-currency conversion support.
    - Added support for $0 checkout.
    - Added support for offline payment methods (PO, COD, Check/MO, Free, etc.).
    - Added subscription intervals grid to the product form, for more advanced configuration of subscription options.
    - Added setting to change shipping method on admin subscription view/edit.
    - Added shipping method fallback on generation. If order shipping method is unavailable, will switch to cheapest method available.
    - Added scheduling customization (control billing days of week, days of month, months, and blackout dates).
    - Added 'paradoxlabs_subscription_collect_totals_before' event on rebilling, between quote initialization and totals collection.
    - Added 'Subscription Installment Number' condition option for promotion rules.
    - Added a Notes field to admin subscription view/edit.
    - Added ability to lookup subscriptions by subscription ID, customer name, customer email, description, and order IDs, via the admin subscription grid keyword search.
    - Added ability to customize subscription option labels, type, and required, per-product.
    - Added increment_id for subscriptions (distinct ID number from entity_id, separate per store like orders, managed via sales sequence).
    - Added internal config to override default subscription custom option type (drop_down).
    - Added internal config to override shipping method for subscriptions.
    - Added store and subtotal to admin subscription view/edit.
    - Added subscription grid columns 'last notified' and 'times billed'; added filtering to columns ID, description, name, email, item count, item qty.
    - Changed limited-length text from 'Every N days for N days' to 'Every N days for M installments'. The installments term is configurable in settings.
    - Changed some subscription product attributes to be available to bundle (and other custom) product types. Bundles will throw error if multiple intervals entered.
    - Fixed 'No such entity.' errors on product save with MDVA-4499 / 2.1.10+ / 2.2+.
    - Fixed admin grids paging.
    - Fixed card matching for Vault methods on admin subscription view.
    - Fixed changes to customer name or email not reflecting on subscriptions.
    - Fixed error handling when a subscription-linked product no longer exists.
    - Fixed inactive/deleted cards not showing as the active payment account on subscription edit.
    - Fixed issues with shipping address matching and saving (thanks Scott).
    - Fixed logging issues in Magento 2.2.
    - Fixed stock handling on subscription rebilling. Will now fail and pause subscription if product is out of stock, as expected.
    - Fixed subscription 'payment failed' emails to cover some Vault payment method exceptions.
    - Fixed subscription log -> order linking issue in certain circumstances.
    - Fixed subscription price handling with configurable product subscriptions.
    - Fixed subscription tab showing up on admin customer creation.
    - Improved codebase with substantial refactoring of config, helpers, and service models.
    - Rebuilt custom option handling to eliminate option churn and improve translatability and flexibility.
    - Removed checkout login/register requirement.
    BACKWARDS-INCOMPATIBLE CHANGES:
    - Added getIncrementId(), setIncrementId(), getLastNotified(), setLastNotified() to ParadoxLabs\Subscriptions\Api\Data\SubscriptionInterface.
    - Changed param type of setMethodInstance() in ParadoxLabs\TokenBase\Api\Data\CardInterface.
    - Moved subscription generation from event sales_order_place_after to sales_model_service_quote_submit_success.
    - CONSTRUCTOR ARGUMENT CHANGES THROUGHOUT MODULE.

2.0.0:

  • Compatible with CE: 2.1 2.2
  • Compatible with EE: 2.1 2.2
  • Stability: Stable Build
  • Description:

    - Compatibility fixes for Magento 2.2.
    - Improved API support, particularly for subscription create/update.
    - Added 'bill' command to API.
    - Added AdditionalInformation storage to Log models.
    - Added ExtensionAttributes implementation to Subscription and Log models.
    - Changed 'Always add custom option' setting default from 'Yes' to 'No'.
    - Changed DI proxy argument handling for Magento 2.2 compatibility.
    - Changed payment command classnames to fix PHP 7.1 compatibility.
    - Fixed error on subscription view if payment card does not exist.
    - Fixed possible address data mismatch after editing address book.
    - Fixed possible PHP error from improper Address helper inheritance chain.
    - Fixed possible static content deploy issues with template comments.
    - Fixed REST API permissions handling.
    - Fixed subscription price calculation handling of 'initial order adjustment'.

    BACKWARDS-INCOMPATIBLE CHANGES:
    This release adds support for Magento 2.2. It is still compatible with Magento 2.1, but there are some notable code changes from earlier releases. If you have customizations around the extension, these may be significant:
    - Added bill(), billbyId() to ParadoxLabs\Subscriptions\Api\SubscriptionRepositoryInterface.
    - Added ExtensionAttributesFactory and AttributeValueFactory constructor arguments to ParadoxLabs\Subscriptions\Model\Log.
    - Added ExtensionAttributesFactory and AttributeValueFactory constructor arguments to ParadoxLabs\Subscriptions\Model\Subscription.
    - Added getId(), setId(), getSubscriptionId(), setSubscriptionId(), getOrderId(), setOrderId(), setCreatedAt(), getAdditionalInformation(), setAdditionalInformation(), getExtensionAttributes(), setExtensionAttributes() to ParadoxLabs\Subscriptions\Api\Data\LogInterface.
    - Added ProductMetadata constructor argument to ParadoxLabs\Subscriptions\Model\Service\Subscription.
    - Added Service\Subscription constructor argument to ParadoxLabs\Subscriptions\Model\SubscriptionRepository.
    - Added setId(), setCreatedat(), setUpdatedAt(), setLastRun(), setRunCount(), getExtensionAttributes(), setExtensionAttributes() to ParadoxLabs\Subscriptions\Api\Data\SubscriptionInterface.
    - Changed argument type of ParadoxLabs\TokenBase\Api\Data\CardInterface::setExtensionAttributes().
    - Changed paradoxlabs_stored_card 'address' and 'additional' fields from serialized to JSON.
    - Changed Proxy constructor arguments throughout modules to inject Proxy via DI configuration.
    - Removed Unserialize constructor argument from ParadoxLabs\TokenBase\Model\Card\Context.
    - Set quote_payment.additional_information.is_subscription_generated=1 on initial subscription generation in addition to rebilling.

1.2.2:

  • Compatible with CE: 2.1
  • Compatible with EE: 2.1
  • Stability: Stable Build
  • Description:

    1.2.3:
    Added 'Bill Now' button to admin subscription view.
    Added split database support
    Added validation to Intervals product attribute.
    Fixed 'no such entity' error on rebilling when customer has no default address.
    Fixed button sorting on admin subscription view.
    Fixed initialization of subscription AdditionalInfo.
    Fixed Magento_Vault compatibility for Magento 2.1.3+.
    Fixed shipping not being charged on rebilling (not factoring into grand total).
    Fixed unnecessary layout definition on customer account.
    Fixed version setting to not reference the database, to allow DB-less compilation.

    1.2.2:
    Added ability to restrict cart promotional rules by the customer's chosen subscription interval.
    Fixed totals not being calculated before fetching shipping rates when rebilling (affecting totals-based rates).
    Fixed error on subscription edit if customer has no saved addresses.
    Fixed multi-website configuration issues on subscription generation.
    Fixed multi-website configuration issues on payment method availability check in admin.
    Fixed potential pruning of inactive cards associated with active subscriptions.
    Fixed admin menu ACL issue.

1.1.0:

  • Compatible with CE: 2.1
  • Compatible with EE: 2.1
  • Stability: Stable Build
  • Description:

    - Added a setting to skip the custom option for subscription products that have only one option available.
    - Improved code for Marketplace Level 2 validation.
    - Fixed a composer dependency for Magento 2.1.

Support

Back to top
The best place to start if you need help with a specific extension is to contact the developer. All Magento developers have both a contact email and a support email listed.

Q & A

Back to top

Reviews

Back to top