Skip to content

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.

Selling subscriptions with Ciklik takes seven steps, split between the Ciklik app and the PrestaShop back office.

StepWhereDetailed page
1. Create your Ciklik account and PrestaShop spaceCiklik appInstall the Ciklik module
2. Install and configure the modulePrestaShop back office, Modules > Module ManagerInstall the Ciklik module
3. Make your products available by subscriptionPrestaShop back office, product pageConfigure the subscription
4. Choose your options (commitment, upsell, consent)Module configurationConfigure the subscription, Require subscription consent
5. Customize the payment page, retries and emailsCiklik app, Settings > Sites and Content > Email TemplatesCustomize subscription renewals
6. Promote subscriptionsPrestaShop storePromoting subscriptions
7. Follow renewals and manage subscribersCiklik app, Sales, and PrestaShop back officePrestaShop renewals explained, Manage your subscribers

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 /api and /ciklik/gateway paths 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.

The module installs like any PrestaShop module, from the zip file that matches your server’s PHP version.

  1. Download the latest release of the module from GitHub, file ciklik-raw-<PHP version>.zip.
  2. In the PrestaShop back office, go to Modules > Module Manager, click Upload a module and select the file.
  3. 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.

You choose between two modes to make a product available by subscription: combinations or frequency mode.

Combinations modeFrequency mode
How it worksOne combination per purchase type and frequency, using the purchase type and subscription frequency attributesFrequencies ticked in the Modules tab of the product page
Where to create frequenciesCatalog > Attributes and Features (PrestaShop 8 and later; on 1.7.7, a database change)Improve > Ciklik, Frequency Management tab
Subscriber benefitA price for each combination (Price Impact (excl. tax))A percentage or fixed discount per frequency
ActivationDefaultUse 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.

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).

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.

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.

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).

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).

You manage subscribers from the Ciklik app, Sales section, and some actions from PrestaShop.

NeedWhereDetailed page
See subscribers, orders, transactions and KPIsCiklik appManage your subscribers
Bring forward or postpone a renewalCiklik appModify the next payment date of a subscription
Replace a product in a subscriptionCiklik appModify the product of a subscription
Cancel or reactivate for the customerCiklik appModify the status of a subscription
Refund an orderPrestaShop back officeProcess a refund
Plan stock for upcoming renewalsPrestaShop back officeStock forecast
Get the daily renewal reportSlackReceive 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.