This subscriptions version is flagged as (legacy) because it’s the first version we ever released, maintained and updated since we launched in 2021.

This version will continue to be kept up to date, receive bugfixing and security patches, but will not receive any new features.

It has simpler functionalities compared to the 2.0 version and a simpler API; the full breakdown can be seen at Subscriptions (legacy) vs 2.0.

Features

Also referred as , subscriptions enable you to bill your customers at a customized interval decided by you.

We take care of the logic and backend operations as well as managing and updating your customers; you only have to create the products and set up a webhook endpoint.

We currently support Daily, Weekly, Monthly and Yearly intervals with a minimum interval count of 1. Subscription invoices to be paid are sent within 60 seconds of expiration, and webhook events are retried up to 5 times without delay from when an update or creation occurs.

Configuring Webhooks

Subscription webhooks are handled through our Webhooks standard.

Subscription Object

Check out the subscription object, which will be sent through webhooks, by clicking here.

The events that you need to handle for Subscriptions are the following

EventDescription
subscription:trial:startedA trial for the subscription has started
subscription:trial:endedA trial has ended. This is usually followed by an order:created event
subscription:createdA subscription has been created
subscription:updatedA subscription status changed
subscription:renewedA subscription has been renewed after successfully receiving a payment
subscription:cancelledA subscription has been cancelled by the customer or the merchant
subscription:upcomingA customer will be charged for his subscription in the next 72 hours

Subscription journey

1

Trial Started

Event subscription:trial:started

Optional, sent only if the product has a trial period enabled.

A trial for one of your product subscriptions has been started. We will not create an invoice for this event.

If this webhook is sent, it’s preceded by a subscription:created event with a unique status

Keep in mind

Although a subscription has been created, an invoice for it has not been created. TRIALING means that the subscription has been created in a trialing state, waiting for subscription:trial:ended.

Please note that if the product has a trial period, the trial period must be used.
2

Trial Ended

Event subscription:trial:ended

Optional, sent only if the product has a trial period enabled and it has come to an end.

A trial for one of your product subscriptions has ended, we will create an invoice in relation to this event.

3

Subscription Created

Event subscription:created

If the product has a trial period, this webhook has already been sent. If not, it is sent right after an invoice PRODUCT_SUBSCRIPTION has been successfully paid.

Once your customer’s subscription has been started and the payment has succeeded, you should implement any logic that you might deem necessary to activate the subscription.

We highly suggest the usage of our custom fields to act as a metadata object in order to recognize which customer purchased your subscription and activate it for them.

4

Subscription Updated

Event subscription:updated

If the customer updates his preferred gateway for the subscription through the Customer Billing Portal, you will receive a webhook event with the updated subscription object.

5

Subscription Cancelled

Event subscription:cancelled

Should you or the customer decide to cancel the subscription, this webhook event is sent.

A subscription is canceled if the payment fails, or is not sent within your settings’ grace period (in days). We handle every email for payment failures and renewal updates. You can also update customer notification settings on the Subscription settings page (access it through your Profile > Settings).

6

Subscription Upcoming

Event subscription:upcoming

The event is sent a few days before a subscription is about to be renewed

7

Subscription Renewed

Event subscription:renewed

When the payment for a subscription renewal happens, this webhook is sent to let you know that everything went well. You do not need to be listening to this event specifically as you can manage your subscriptions through only the created and cancelled events.

Customer Billing Portal

Every customer will have access to their customer billing portal, where they can view, cancel, and update any active subscription purchased from you or any other business on our platform.

They will authenticate using their personal email address, used to purchase your product subscription. The customer billing portal can be found at YOUR_DOMAIN/customer/auth

Integrations

Three ways to integrate subscriptions into your website.

Sellix Hosted Experience

You will be using our hosted experience through YOUR_DOMAIN, asking customers for their ID/Email/Username through product custom fields to activate the subscription on their account.

Customized embeds

Through product embeds. You can embed subscription products on your website, and automatically set hidden custom fields to uniquely identify your customers when the webhook events are sent.

Developers API

Brandless implementation with our API. Use your own logo and website to manage customers and subscriptions. Currently, the documentation is hosted on dev-openapi.sellix.io. However, it will soon be available on this page as well, with an improved document.

Cryptocurrencies

From the get-go, we support subscriptions billed automatically through cryptocurrencies.

This works by approving X recurring payments on the customer’s cryptocurrency wallet and automatically sending a transaction for each renewal period.