Sell subscriptions on PrestaShop
Key points
To sell subscriptions on PrestaShop, install the Ciklik subscription module on your store and connect it to your PrestaShop space in Ciklik with an API token. The module works with PrestaShop 1.7.7 to 9.2 and PHP 7.2 to 8.4. You then make your products available by subscription, through combinations or through frequency mode, with a subscriber discount if you wish (subscribe and save). On each due date, Ciklik charges the subscriber and, if the payment is accepted, creates the order in PrestaShop. If a payment is declined, Ciklik schedules up to 4 payment attempts by default and emails the subscriber a payment link.
The journey at a glance
Section titled “The journey at a glance”Selling subscriptions with Ciklik takes seven steps, split between the Ciklik app and the PrestaShop back office.
| Step | Where | Detailed page |
|---|---|---|
| 1. Create your Ciklik account and PrestaShop space | Ciklik app | Install the Ciklik module |
| 2. Install and configure the module | PrestaShop back office, Modules > Module Manager | Install the Ciklik module |
| 3. Make your products available by subscription | PrestaShop back office, product page | Configure the subscription |
| 4. Choose your options (commitment, upsell, consent) | Module configuration | Configure the subscription, Require subscription consent |
| 5. Customize the payment page, retries and emails | Ciklik app, Settings > Sites and Content > Email Templates | Customize subscription renewals |
| 6. Promote subscriptions | PrestaShop store | Promoting subscriptions |
| 7. Follow renewals and manage subscribers | Ciklik app, Sales, and PrestaShop back office | PrestaShop renewals explained, Manage your subscribers |
What you need before you start
Section titled “What you need before you start”You need a Ciklik account, a PrestaShop space in Ciklik, a compatible payment provider and a store running a supported version.
- A Ciklik account: created in the Ciklik app and validated with a code sent by SMS.
- A PrestaShop space in Ciklik: you enter your store name, its domain, your payment service provider (PSP) and its API key, plus your company details. Outside the test environment, the first monthly Ciklik fee is paid by credit card at this step. Pricing is on ciklik.co/prix.
- A compatible payment method: in your checkout, the module offers credit card via Stripe, credit card via PayPlug or PayPal, depending on the methods active on your site (see Subscribers’ payment methods). GoCardless SEPA direct debit is not available with the PrestaShop module.
- PrestaShop 1.7.7 to 9.2 and PHP 7.2 to 8.4.
- A store Ciklik can reach: the
/apiand/ciklik/gatewaypaths must answer over HTTPS, without a password and without a redirect. Your firewall and maintenance mode must let Ciklik through (see Rebill and PrestaShop site unavailability). - Access to your domain’s DNS zone: Ciklik asks you to add 5 DNS records for the subscription subdomain and email deliverability.
Install the Ciklik module
Section titled “Install the Ciklik module”The module installs like any PrestaShop module, from the zip file that matches your server’s PHP version.
- Download the latest release of the module from GitHub, file
ciklik-raw-<PHP version>.zip. - In the PrestaShop back office, go to Modules > Module Manager, click Upload a module and select the file.
- Click Configure and enter the API Token provided by Ciklik, the Mode (Production/Dev/Test), the attribute groups and the Order status given to Ciklik orders.
Each field, store preparation and how to generate a new token are covered in Install the Ciklik module.
Set up subscriptions on your products
Section titled “Set up subscriptions on your products”You choose between two modes to make a product available by subscription: combinations or frequency mode.
| Combinations mode | Frequency mode | |
|---|---|---|
| How it works | One combination per purchase type and frequency, using the purchase type and subscription frequency attributes | Frequencies ticked in the Modules tab of the product page |
| Where to create frequencies | Catalog > Attributes and Features (PrestaShop 8 and later; on 1.7.7, a database change) | Improve > Ciklik, Frequency Management tab |
| Subscriber benefit | A price for each combination (Price Impact (excl. tax)) | A percentage or fixed discount per frequency |
| Activation | Default | Use frequency mode module option |
On installation, the module creates the Monthly frequency, then every 2, 3, 4, 6, 8, 10 and 12 months. Step by step: Configure the subscription.
Enable the module options
Section titled “Enable the module options”Options are set in the module configuration and apply to the whole store.
- Commitment: the subscriber cannot cancel during the chosen period after subscribing.
- Upsell: a logged-in subscriber adds one-off products to their next order (see Add a product to your next order (upsell)).
- Frequency modification, Allow next payment date modification and Allow skipping the next delivery: what the subscriber can change on their own from their account.
- Enable customer group assignment: your active subscribers join a PrestaShop customer group (see Manage your subscribers in a PrestaShop customer group).
- Require subscription consent at checkout: a mandatory checkbox at the payment step makes the customer acknowledge the automatic renewal (see Require subscription consent).
Customize payment, retries and emails
Section titled “Customize payment, retries and emails”From the Ciklik app, you brand the payment page hosted by Ciklik (logo, favicon, colors, fonts), set the payment retry schedule and choose the emails sent to your subscribers. It is all in Customize subscription renewals.
When the cart contains a subscription, the module hides other payment methods on PrestaShop 8 and later. On PrestaShop 1.7, this filtering requires a theme change, described in Configure the subscription.
Promote subscriptions
Section titled “Promote subscriptions”The subscription option appears on the product page, blended into your theme: it is up to you to make it visible. Our advice (wording, discount badge, banner, dedicated page, reassurance) is in Promoting subscriptions and Defining your subscription offer.
What the subscriber sees
Section titled “What the subscriber sees”The subscriber picks the subscription on the product page, pays through the Ciklik module, then manages their subscriptions from My account.
- On the product page: they choose the purchase type (one-time or subscription), then the frequency, and see the discount if you set one.
- At checkout: a cart that contains a subscription is paid through the Ciklik module. Products with the same frequency form a single subscription; different frequencies create as many subscriptions.
- In My account, Your subscriptions section: they see the status, product, frequency, delivery address and renewal date, and can cancel then resume their subscription. Depending on the options you enabled, they can also reschedule their next order, skip their next delivery, change frequency or add products to their next order.
The full journey is described in Subscribe and manage your subscription and Cancel and reactivate a subscription.
Renewals: a PrestaShop order on each due date
Section titled “Renewals: a PrestaShop order on each due date”Ciklik handles renewals: on each due date, it checks in PrestaShop that the product exists and at what price, charges the subscriber, then creates the order in PrestaShop if the payment is accepted. The order gets the Order status chosen in the module and carries the Ciklik label.
An order only reaches PrestaShop when the payment is accepted. If the store does not respond, a product is out of stock or a combination was deleted, the renewal is blocked: the subscription’s Renewal situation panel, in Ciklik, shows the cause and what happens next (see PrestaShop renewals explained).
In the PrestaShop back office, the Improve > Ciklik > Subscriptions and Orders page shows your Ciklik subscriptions and orders, read-only (see Subscriptions and orders in PrestaShop).
Declined payments: automatic retries
Section titled “Declined payments: automatic retries”When a payment is declined, Ciklik schedules new attempts: by default, up to 4 attempts 3 days apart. You can change the number of attempts and their spacing.
- After each failure, the subscriber receives a declined payment email with a link to pass the 3D Secure check and pay for their order.
- While attempts keep failing, the order stays pending in Ciklik and is not sent to PrestaShop.
- After the last attempt, the order for that due date is closed; the subscription stays active and will be charged on the next due date.
You can also send the retry link yourself (see Send a payment link to a customer) or a card update link (see Send a credit card update link).
Manage your subscribers day to day
Section titled “Manage your subscribers day to day”You manage subscribers from the Ciklik app, Sales section, and some actions from PrestaShop.
| Need | Where | Detailed page |
|---|---|---|
| See subscribers, orders, transactions and KPIs | Ciklik app | Manage your subscribers |
| Bring forward or postpone a renewal | Ciklik app | Modify the next payment date of a subscription |
| Replace a product in a subscription | Ciklik app | Modify the product of a subscription |
| Cancel or reactivate for the customer | Ciklik app | Modify the status of a subscription |
| Refund an order | PrestaShop back office | Process a refund |
| Plan stock for upcoming renewals | PrestaShop back office | Stock forecast |
| Get the daily renewal report | Slack | Receive a renewal report in Slack |
Frequently asked questions
Which module can I use to sell subscriptions on PrestaShop?
The Ciklik module adds subscription purchasing to your PrestaShop store. It connects to your PrestaShop space in Ciklik with an API token, and Ciklik then handles payments and renewals.
Which PrestaShop and PHP versions does the Ciklik module support?
The module works with PrestaShop 1.7.7 to 9.2 and PHP 7.2 to 8.4. You download the zip file that matches your server's PHP version.
Which payment methods can my subscribers use?
Depending on the methods active on your site: credit card via Stripe, credit card via PayPlug or PayPal. GoCardless SEPA direct debit is not available with the PrestaShop module.
Is a PrestaShop order created on each renewal?
Yes. On each due date, Ciklik charges the subscriber and creates the order in PrestaShop if the payment is accepted. While the payment keeps failing, no order is sent to PrestaShop.
What happens when a renewal payment is declined?
Ciklik schedules new attempts, up to 4 by default 3 days apart, and sends an email with a payment link after each failure. After the last attempt, the order is closed and the subscription stays active for the next due date.