HikaSubscription Tutorial

Component Installation

First, you should have a Joomla! website with HikaShop installed.
The HikaShop edition does not matter, you can use HikaShop starter, HikaShop essential or HikaShop business.

HikaSerial Subscription could be installed like a classical Joomla! component, in the Extension Manger.

Once HikaSerial Subscription installed, his menu would be merged with the HikaShop menu. So at any time, in HikaShop or HikaSerial, you would have access to both component features.

Understanding the workflow

The workflow of a subscription system is based on plans and subscription.
The plan is what your customer will subscription and the subscription is the relation between the plan and the customer.
Because HikaSubscription is an add-on for HikaShop, the sell of these subscription will be made via HikaShop products.

When a customer buy a product which is related to a plan, HikaSubscription will create a subscription for that plan, associated with the customer.
Depending the order status, the subscription will be active or not.

Afterwards, your customer will be able to renew, automatically or not, his subscription.
That action can be done via recurring (when using a recurring payment plugin and a specific relation between the product and the plan) ; but also manually by letting the customer buy specific renewal products.
If you want that the renewal have a different price or different duration, you would have to use several products for that task (usage of variants is also possible).

Since the renewal of a subscription must have the information of which subscription will be renew ; the customers can just renew their subscription via the specific interface in the customer panel.

Plan relation

There is different type of relation between a plan and a product.

  • Creation will only create subscription.
    Buying multiple products in the same order will create multiple subscriptions.
  • Creation then Renewal will create subscription and can be use for renewal (manually or recurring).
    Buying multiple products in the same order will create multiple subscriptions.
  • Renewal or Creation will create subscription and can be use for renewal (manually or recurring).
    Buying multiple products in the same order will create one single subscription and extend its duration.
  • Renewal can only be use for renewal in the HikaSubscription interface.
    Buying multiple products in the same order will extend more the duration of the selected subscription.

Subscription life - Plan actions

One important part of the HikaSubscription workflow is the life of a subscription : It can be Active, expired or closed.
The difference between expired and closed is that an expired can be renewed and when it's too late, it will be change to closed.

When a subscription became active or became not active (expired or closed), the plan actions are processed.
Depending the plugins you're using for the plan, they can act differently depending the state of the subscription.
For example, the group subscriber will add the account into a specific Joomla group(s) when the subscription is active and will remove the account from the group(s) when it expires.

First configuration

The HikaSerial (Subscription) configuration screen does not contain a lot of options.
Some specific settings are in the dedicated tab, but the main tab also contains some important setting, specially regarding the Assignable order statuses.
It is important to check and configure that setting which list the order statuses defining an order as confirmed and paid by the customer.
An order with one of these status will make a subscription as active, otherwise it will mark it as expired (or closed).

Settings in the subscription tab are mostly to define the rules regarding the renewal.
You can define if you accept the customer to perform a renewal before or/and after the subscription expiration date.
In that screen you can also configure the notification emails.

For more details about the other settings, you can see the global configuration documentation page.

Creating the first plan

Unlike pack/serial, the configuration of a plan do not require to configure some plugins before. Due to its define workflow, all the settings are centralized in the plan.
By default, a random generator will be used to create the unique subscription key ; but you can configure the format of that key in the plan itself.
For more details about the format, do not hesitate to consult the random generator documentation page.

The central part of the plan are the actions that you can find in the second tab.
Most use case just requires the group subscriber features ; so the Joomla account will be put in specific user groups and you can use Joomla ACL afterwards to authorize or refuse actions (or pages) in your website.

Associate the plan with a product

Once the plan is created, you will want to associate it with one of several HikaShop product(s).
That configuration will determine how you're selling your subscription. You can have different products selling the same plan but with different duration.
You can use the Creation then Renewal if you want to use a recurring payment plugin (like paypal recurring).

Just like the association of HikaSerial packs, the association of HikaSubscription plan are in the HikaShop product interface, in a dedicated block.

You can use the "Add" button to select your HikaSubscription plan, the type of relation and the wanted duration.

Please note that you don't want to let the renewal products be visible in your shop.
Because a renewal must be related to a subscription, the selection is only made via the subscription section of the HikaShop customer control panel.
That is why the renewal products should be placed in a hidden category ; best is to create a category next to the product category so the product won't be visible in HikaShop product listings.

Here we are, HikaSubscription is configured !

Going further - Creation of a Subscription document

The plugins attach serial and pdf serial are also compatible with HikaSubscription.
So you can also create instances for these plugins if you want to add an image or a PDF in the confirmation emails