Find what you're looking for

What are you looking for?

Search instructions:

Search for a single terms or two-word term instead of a sentence.
For example "subscriptions", "recurring payments", "webhooks" etc., instead of "how to start a subscription" or "where can I find recurring payments".
Account & Setup
circuly privacy policy

Data Privacy Statement when using circuly

When using circuly, you need to inform your customers about the use of our services. Please do so in your Privacy Statement by including the following snippet.

When using circuly, you need to inform your customers about the use of our services. Please do so in your Privacy Statement by including the following snippet. A privacy policy is a document contained on a website that explains how a website or organization will collect, store, protect, and utilize personal information provided by its users.

This is only a sample for orientation and that we do not guarantee any liability for the legal validity.

For English version, please see below

DE - German

Beschreibung und Zweck

Auf dieser Website nutzen wir für unseren Checkout und das Subscription Management circuly. circuly ist ein Software-Unternehmen aus Deutschland mit dem Hauptsitz in Deutschland, 33602 Bielefeld, Obernstr. 50, Telefon: +49 176 552 884 77. Hierbei handelt es sich um eine integrierte Software-Lösung, mit der wir verschiedene Aspekte unseres Subscription Management abdecken. Dazu zählen unter anderem: Checkout, Kundenlogin, Rechnungen und Zahlungsabwicklungen, Kommunikation, Returen-Management und Reporting. Diese Informationen werden auf Servern unseres Softwarepartners circuly gespeichert. Sie können von uns genutzt werden, um mit unseren Kunden in Kontakt zu treten und unsere Abo-Leistungen zu erbringen. Alle von uns erfassten Informationen unterliegen dieser Datenschutzbestimmung. Wir nutzen alle erfassten Informationen ausschließlich zur Verarbeitung der (Abo-)Bestellung.

Rechtsgrundlage

Die Rechtsgrundlage für die Nutzung der Dienste von circuly ist Art. 6 Abs. 1 lit. f) DSGVO (berechtigtes Interesse). Unser berechtigtes Interesse an dem Einsatz dieses Dienstes ist die effiziente und kundenfreundliche Abwicklung von Abo-Verträgen.

Empfänger

Empfänger ist circuly GmbH, Obernstr. 50, 33602 Bielefeld, Deutschland.

Übermittlung in Drittstaaten

Durch den Einsatz des Dienstes werden ggf. personenbezogenen Daten in ein Drittland übermittelt. Im Falle einer Übermittlung von personenbezogenen Daten stellt der Anbieter das Schutzniveau der DSGVO durch die Einhaltung der Art. 44 ff. DSGVO sicher. Sofern kein Angemessenheitsbeschluss mit dem Drittland besteht, in dem der Datenimporteur seinen Sitz hat, erfolgt die Übermittlung vorbehaltlich geeigneter Garantien. Bei Rückfragen wenden Sie sich gerne an unseren Datenschutzbeauftragten.

Dauer der Datenspeicherung

Die Daten werden gelöscht, sobald sie für die Erreichung des Zweckes ihrer Erhebung nicht mehr erforderlich sind. Darüber hinaus werden die Daten gelöscht, sofern Sie Ihre Einwilligung widerrufen bzw. die Löschung der personenbezogenen Daten verlangen.

Widerspruchsmöglichkeit

Sie haben nach Art. 21 Abs. 1 DSGVO jederzeit das Recht, Widerspruch gegen die Verarbeitung Ihrer personenbezogenen Daten einzulegen. Sofern Sie von Ihrem Recht Gebrauch machen, findet eine Verarbeitung zu diesem Zweck nicht mehr statt. Weitere Informationen hierzu finden Sie weiter oben in unserer Datenschutzerklärung unter “Rechte der betroffenen Personen”.

Vertragliche oder gesetzliche Pflicht

Es besteht keine vertragliche oder gesetzliche Pflicht für die Bereitstellung der Daten.

Weitere Datenschutzhinweise via Link

https://www.circuly.io/data-privacy
https://www.circuly.io/data-processing-agreement

EN - English Version

Description and purpose

On this website we use the circuly checkout and subscription management software. circuly is a software company based in Germany, headquartered at 33602 Bielefeld, Obernstr. 50, phone: +49 176 552 884 77. This is an integrated software solution that we use to cover various aspects of our Subscription Management. These include: Checkout, customer login, invoices and payment processing, communication, return management and reporting. This information is stored on servers run by our software partner circuly. It may be used by us to contact our customers and provide our subscription services. All information we collect is subject to this Privacy Policy. We use all information collected exclusively for processing the (subscription) order.

Legal basis

The legal basis for the use of circuly services is Art. 6 para. 1 lit. f) DSGVO (legitimate interest). Our legitimate interest in using this service is the efficient and customer-friendly processing of subscription contracts.

Recipient

The recipient is circuly GmbH, Obernstr. 50, 33602 Bielefeld, Germany.

Transfer to Third Countries

Through the use of the service, personal data may be transferred to a third country. In the event of a transfer of personal data, the Provider shall ensure the level of protection of the DSGVO by complying with Art. 44 et seq. DSGVO. If there is no adequacy decision with the third country in which the data importer is based, the transfer is subject to appropriate safeguards. If you have any queries, please contact our data protection officer.

Duration of data storage

The data is deleted as soon as it is no longer required to achieve the purpose for which it was collected. Furthermore, the data will be deleted if you revoke your consent or request the deletion of the personal data.

Possibility of objection

In accordance with Art. 21 (1) DSGVO, you have the right to object to the processing of your personal data at any time. If you exercise your right, processing for this purpose will no longer take place. Further information on this can be found above in our data protection declaration under "Rights of data subjects".

Contractual or legal obligation

There is no contractual or legal obligation to provide the data.

Further data protection information via link.

Further data protection information via link

https://www.circuly.io/data-privacy
https://www.circuly.io/data-processing-agreement

Please also make sure, that you include your Privacy Statement into the circuly Checkout. To do so, paste the URL to your Privacy Statement into the settings in the circuly operations backend. If you do not have access to that setting, please create a service desk ticket with the link to your privacy statement.

Read more
Orders
Wrong product

Process Orders With Wrong Product

Here's how you can process orders with a wrong product.

Mistakes happen—sometimes customers order the wrong product, or the wrong product is shipped to them. Depending on whether the product has already been sent and whether a subscription has started, there are different ways to resolve the issue using the circuly Operations Backend.

Introduction

Wrong product situations can occur either due to customer error or operational mishandling. circuly offers several workflows to correct these errors depending on the order and subscription status. This article outlines the different cases and the recommended actions.

  • Case 1: the product has already been sent. 
  • Case 2: the product has not been sent yet. 

Here’s what you can do about it:

Case 1: Product Has Already Been Sent

Scenario 1.1: Subscription Has Already Started

Subscription Status: Active

  • In this scenario, initiate a product swap to replace the incorrect item.
  • A new order will be created, and the current subscription’s status will be set to Pending Replacement to trigger the return process for the incorrect item.
  • This keeps the subscription active while you manage the return and replacement.

Do not manually cancel the order or set the subscription to "pending return" before swapping, as swap/replacement is only available for active subscriptions.

Scenario 1.2: Subscription Has Not Yet Started

  • In this case, you should still recover the incorrect product.
  • Since swaps are only possible for active subscriptions, the first step is to start the subscription.
  • Then, initiate the swap process, which will create a new order and set the original subscription to Pending Return.

Case 2: Product Has Not Been Sent

If the product has not yet left your warehouse, here’s what to do:

  • Stop the shipment immediately using your shipping partner's tool.
  • Determine the issue:
    • Was it the wrong product (SKU mismatch)?
    • Or the wrong variant (serial number issue)?

Once identified, you can either:

Option 1: Edit the Order Item

Use this if the wrong product, SKU, duration, price, or frequency needs to be corrected.

To enable this option, go to: Settings > Orders > ORDER and toggle on Allow order item editing.

Option 2: Replace the Serial Number

Use this if the product is correct but the wrong serial number was assigned.

  • Start the subscription first.
  • During the subscription creation, enter the correct serial number for the product that will be shipped.
Read more
Integrations
Tool integration

Connect Any Tool to circuly

With circuly you can export data from the circuly operations backend and plug it into a tool of your choice. Here's how you can connect any tool to circuly

With circuly you can export data from the circuly operations backend and plug it into a tool of your choice. The best way to do this is via Zapier where you can also create automations. 

If you decide to use Zapier, then the first thing you need to do is to make sure that the tool you want to send information to from circuly is available on Zapier. 

Webhooks in circuly

circuly also provides you with the option of using webhooks to take data out of circuly and plug it into a tool of your choice to create automations. You can use an API endpoint of our choice or work with Zapier (our recommendation is to use Zapier) to make two apps talk to one another.

About Webhooks

Webhooks are automated messages sent from one app to another in case something happens or something is updated/changed. It’s a way for different tools to “communicate” to each other and get automated information when something new happens. With webhooks you can push data from one app to another. 

Here’s a simple analogy from Zapier about Wehbooks

“There are two ways your apps can communicate with each other to share information: polling and webhooks. As one of our customer champion's friends has explained it: Polling is like knocking on your friend’s door and asking if they have any sugar (aka information), but you have to go and ask for it every time you want it. Webhooks are like someone tossing a bag of sugar at your house whenever they buy some. You don't have to ask, they just automatically punt it over every time it's available.” 

Using webhooks with Zapier

When you use Webhooks there’s a sender that send the data and a receiver that receives that data. So there is a place where the action is “triggered”, and a place this action goes to, to convey that something has happened. 

You can use Webhooks to create all sorts of automations. You can use an API endpoint of our choice or work with Zapier (our recommendation is to use Zapier) to make two apps talk to one another.

There’s a lot of room for creativity when it comes to creating automations. The automations you make depends on what exactly you want to automate. Based on that you can think what information you will need from a tool to make that automation work. 

Note: Webhooks by Zapier is only available to Zapier users on a paid plan. 

Requirements

Create a Zapier account - to work with zapier, you need to create an account. 

Create an account on the tool you want to use - you also need to create an account on the tool you want to use with Zapier. 

Understanding what you need

With webhooks you first have to figure out what you want to automate and the information you will require to automate it. Then you need to match it with the information that is available and can be used to create the automation. 

Example

Connecting a shipping tool (we’re using Easyship as an example) to circuly via Zapier and using webhooks to transfer data to the shipping tool. 

Overview

  • Set up trigger by selecting Webhooks by Zapier > A URL will be generated by Zapier > Copy the URL. This is the URL where the information will be sent to everytime there is something being changed or updated. 
  • Go to your circuly operations backend and create a Webhook > Paste the URL from Zapier. Any updates or changes will be sent to this URL. 
  • Search for the tool in the action window while creating a Zap and connect it to Zapier. 
  • Done. Your tool is connected to circuly via Zapier. 

Detailed steps given below 

Setup in Zapier and circuly

  • In your Zapier home > Click on the button that says + Create Zap.

Screenshot of Zapier to connect tool to circuly

  • In the Zapier Editor > Start by giving the Zap a name.

Screenshot of Zapier to connect tool to circuly

  • In the same window > Search for “Webhook” in the search field > And click on “Webhooks by Zapier

Screenshot of Zapier to connect tool to circuly

  • Under Events > Select Catch Hook > And click on the Continue button. 

Screenshot of Zapier to show webhook connection feature in circuly

  • Leave the field Pick off a Child Key blank for now > And click on the Continue button. 
  • Copy the URL given under Your webhook URL

Screenshot of Zapier to show how zapier works with webhooks and circuly

  • Login in to your circuly Operations Backend > Go to the Webhooks tab > Click on the   + CREATE WEBHOOK button. 

circuly operations backend screenshot to the the circuly webhook feature

  • In the Create webhook window > Under Event Type select subscriptions > Under Event Code select updated > Give the webhook a Name > Set a Password > Paste the URL that you copied from Zapier into the URL field. 

Screenshot of how to create a webhook

Now everytime anything in a Subscription is updated, Webhook will catch that update/change and send it to Zapier.

Optional: If you have test orders and subscriptions in your operations backend, you can change something in the subscription to test the trigger. But if no change or update has been made in the Subscription at the time you are creating a Zap then the Test trigger button will not lead to any results. 

  • To test the trigger > Go back to your Zapier account > Click on the button that says Test trigger

screenshot of zapier to test the connection with webhooks

  • If you’ve made any changes in the Subscription, clicking on the Test trigger button will show you that a Request was found

  • If you dont want to make any changes to a subscription > You can also skip the test by clicking on the button that says Skip test.


  •  Then click on the button that says Continue to next step

Sending data to a tool

  • In the Action window > Search the name of the tool you want to connect (we are using Easyship as an example).  

Note: Make sure to connect your tool with Zapier. Here’s how it works for Easyship > In your Easyship account > Go to Connect in the left nav bar > Click on + New Integration  > Select Zapier from the list > Click on the Connect button. 

Once you’ve completed the necessary steps in the tool, go to Zapier

  • Under Event > Select an Event (we are using Create a Shipment as an example) > Choose an account > Click on the Continue button. 

  • Under Set up actions fill in all the necessary details in the given input field. 

To fill in details, either type in the input field or click on the field to get a list of values that can be automatically taken from the data retired via webhooks. 

  • If everything is right, you’ll get a success message. See image below.

  • Check your shipping tool to see if you’ve received a shipment from zapier. 

  • Done.

Read more
Account & Setup
Subscriptions
Subscription settings

Subscription Settings: Explained

An overview and explanation of the subscription settings.

Introduction

Subscription settings in circuly allow you to control how subscriptions are created, activated, renewed, cancelled, and managed. By adjusting these settings in the circuly Hub, you can streamline operations, automate customer journeys, and stay compliant with local regulations.

This article gives you a complete overview of the subscription-related settings available in circuly, what they do, and when you should use them.

Feature Overview

The subscription settings cover areas like:

  • Subscription creation logic (e.g., auto-activation, unpaid orders)
  • Renewal rules (e.g., auto-renewal, max duration)
  • Cancellation policies (e.g., early cancellation, refund automation)
  • Return and reactivation flows (e.g., pending return, reactivate if not returned)
  • Customer communication (e.g., cancellation reasons, notice periods)

These settings give you granular control over how subscriptions behave throughout their lifecycle.

Settings and Their Functions

1. Subscription Metadata

  • Purpose: Add custom fields (e.g., driver’s license, plate number) during subscription creation.
  • Default: 0 (No additional fields)
  • Where to find: Settings > Subscriptions > General > Subscription meta data.

2. Subscription Start Date

  • Purpose: Automates the default start date when creating a subscription.
  • Default: 5 (start date = today + 5 days)
  • Use case: Matches your delivery window to subscription activation.
  • Note: Only applies to manual subscription creation.

3. Allow Start Date in Past

  • Purpose: Enables creating subscriptions with a past start date.
  • Default: Disabled

4. Allow Unpaid Subscriptions

  • Purpose: Allows creating subscriptions even if the initial payment hasn’t been collected.
  • Default: Disabled
  • Use case: For businesses that delay the first charge manually or use invoicing workflows.

5. Auto Activate Subscriptions

  • Purpose: Automatically creates a subscription when an order is marked as completed.
  • Default: Disabled
  • Use case: For fulfillment flows where you want to skip manual subscription creation.
  • Dependent on: Auto Activate Offset

6. Auto Activate Offset

  • Purpose: Defines the start date for auto-activated subscriptions.
  • Default: 0 (start date = today)
  • Use case: Add buffer time between order completion and subscription start.

7. Auto Renew Subscriptions

  • Purpose: Automatically renews subscriptions at the end of their duration.
  • Default: Disabled
  • Options:
    • Renew by original subscription duration
    • Renew by a custom duration (requires enabling below setting)

8. Custom Auto-Renew Subscription Duration

  • Purpose: Enables setting a custom duration for renewals (e.g., monthly renewal instead of annual).
  • Default: Disabled
  • Use case: Align with consumer protection laws that restrict long-term renewals.

9. Custom Auto Renew Duration

  • Purpose: Specifies the number of months for custom renewals.
  • Default: 1 (One month)

10. Maximum Duration

  • Purpose: Sets an upper limit on how long a subscription can be extended through renewals.
  • Default: No limit
  • Use case: Comply with legal or product lifecycle constraints.

11. Early Cancellation Period

  • Purpose: Defines the window in which customers can cancel without a reason.
  • Default: No value
  • Use case: Mandatory for EU compliance (e.g., 14 days for Germany).
  • Affects: Self-service cancellation flows and refund automation.

12. Auto Refund Immediately Cancelled Subscriptions

  • Purpose: Triggers refunds automatically when customers cancel within the early cancellation period.
  • Default: Disabled
  • Use case: Avoid manual refunds for legal right-of-withdrawal cases.

13. Notice Period

  • Purpose: Sets how many days before the end of a subscription a cancellation request must be made.
  • Default: No value
  • Example: If set to 7, cancellations must be made at least 7 days before the end date.

14. Return Until Period

  • Purpose: Specifies how many days the customer has to return a product after cancellation/swap.
  • Default: 14 days
  • Triggers: Reminder emails and return status tracking

15. Reactivate Subscription

  • Purpose: Reactivates a subscription if the product hasn’t been returned within the return period.
  • Default: Disabled
  • Use case: Prevent revenue loss from unreturned items.

16. Reactivate Subscription Period (Days)

  • Purpose: Defines how many days after the Return Until period a subscription should be reactivated.
  • Default: 7 days

17. Cancellation Reasons

  • Purpose: Allows customers to select a reason when cancelling via the Self-Service Portal.
  • Default: Empty list
  • Types: Normal and Extraordinary cancellations
  • Use case: Understand customer churn and improve retention strategies.

Final Notes

These settings give you full control over your subscription logic. You can combine multiple settings to automate processes like:

  • Subscription activation after order completion
  • Enabling early cancellation with automatic refund
  • Managing unreturned products through reactivation flows
  • Controlling renewal behaviour to stay compliant

Make sure to align these configurations with your fulfillment capabilities, legal obligations, and customer experience strategy.

Read more
Customer Self Service
Refer a friend

Refer a Friend Feature Setup & Settings

Refer a friend is a feature that allows your existing customers to get some monetary incentive for encouraging other people to become your customer. Read more

Introduction

The Refer a friend feature in circuly allows your existing customers to share unique voucher codes with their friends. When a friend uses the voucher code during checkout, they receive a discount—and the referring customer earns a reward, added to their account balance.

This win-win setup helps you acquire new customers while rewarding loyal ones.

Feature overview

  • Customers with active subscriptions (past the early cancellation period) see a Refer a Friend button in the Self-Service Portal.
  • A unique voucher code is generated for each eligible customer.
  • When a friend uses the code during checkout, they receive a discount.
  • The referring customer receives a reward added to their account balance, used toward future recurring payments.
  • Both reward and discount amounts, as well as voucher validity, are fully customisable in the settings.

Step-by-step guide

Step 1: Enable the feature

  • Go to the Settings tab in your circuly Hub.
  • Navigate to Refer a Friend.
  • Toggle Enabled to turn on the feature.
  • Define the values:
    • Reward amount: Amount the referring customer receives.
    • Voucher amount: Discount given to the new customer.
    • Valid until days: How long the voucher remains valid (in days).

Step 2: Set up email templates

  • Go to Email Templates.
  • Scroll to Refer a Friend and click Create Template (choose language if applicable).
  • Also update your Order Confirmation, Invoice, and One-time Transaction templates:
    • Option 1: Reset to circuly’s default templates and adjust branding.
    • Option 2: Manually insert the required HTML code snippet that supports the account balance logic.

Variables used include: is_account_balance, from_account_balance, and final_invoice_amount.

Step 3: Inform your customers

Clearly explain how the reward will be used (account balance, not cashback), and ensure transparency to avoid misunderstandings.

Customer experience flow

  • A customer with an active subscription logs into the Self-Service Portal.
  • They click the REFER A FRIEND button.
screenshot of refer a friend feature in circuly operations backend

  • A unique voucher code appears, which they can copy and send to a friend.
screenshot of refer a friend feature in circuly operations backend

  • The friend applies the code at checkout and enters their email address.
screenshot of refer a friend feature in circuly operations backend

  • If the email is not already associated with a circuly customer, the code is validated and applied.
screenshot of refer a friend feature in circuly operations backend

  • The referring customer receives a balance update.
  • This balance is automatically used for future recurring payments and reflected in the invoice.

Good to Know

  • The feature becomes available only after the early cancellation period is over.
  • The customer balance can only be used for recurring payments, not for new orders at checkout.
  • If the balance exceeds the recurring amount, the remainder is carried over to the next payment.
  • A new column in the Recurring Payments section shows whether account balance was used.

FAQ

Q: Can customers use their balance for new checkouts?
A: No, account balance is only applied to future recurring payments.

Q: What happens if the balance is greater than the recurring amount?
A: The surplus remains in the account and is used for upcoming payments until exhausted.

Q: Why is the feature only available after the early cancellation period?
A: To reduce fraud and ensure the referring customer remains subscribed for a certain period.

Read more
Integrations
Automation, webhooks, return label.

Automation With Webhooks and Zapier: How to Generate Return Labels

You can export data out of circuly via webhooks and create endless automation. Learn how you can create a return label with webhooks using zapier

About Webhooks

Webhooks are automated messages sent from one app to another in case something happens or something is updated/changed. It’s a way for different tools to “communicate” to each other and get automated information when something new happens. With webhooks you can push data from one app to another. 

Here’s a simple analogy from Zapier about Webhooks

“There are two ways your apps can communicate with each other to share information: polling and webhooks. As one of our customer champion's friends has explained it: Polling is like knocking on your friend’s door and asking if they have any sugar (aka information), but you have to go and ask for it every time you want it. Webhooks are like someone tossing a bag of sugar at your house whenever they buy some. You don't have to ask, they just automatically punt it over every time it's available.” 

If you want to become a webhooks pro and show off your webhooks knowledge to a colleague (or your boss), we recommend reading this article by Zapier. 

Test your knowledge after you’re done reading the article by Zapier: How did webhooks get’s it name? 

But you don't really need to be a webhooks pro to use them. Let’s jump right in. 

Webhooks in circuly

circuly also provides you with the option of using webhooks to take data out of circuly and plug it into a tool of your choice to create automations. You can use an API endpoint of our choice or work with Zapier (our recommendation is to use Zapier) to make two apps talk to one another.

If you decide to use Zapier, then the first thing you need to do is to make sure that the tool you want to send information to from circuly is available on Zapier. 

As mentioned above a webhooks catches data and send it to a destination every time something is updated or changed. Webhooks only catches the events that are changed or updated (this is relevant for creating zaps and will be discussed later).

Using webhooks with Zapier

When you use Webhooks there’s a sender that send the data and a receiver that receives that data. So there is a place where the action is “triggered”, and a place this action goes to, to convey that something has happened. 

You can use Webhooks to create all sorts of automations. You can use an API endpoint of our choice or work with Zapier (our recommendation is to use Zapier) to make two apps talk to one another.

There’s a lot of room for creativity when it comes to creating automations. The automations you make depends on what exactly you want to automate. Based on that you can think what information you will need from a tool to make that automation work. 

Note: Webhooks by Zapier is only available to Zapier users on a paid plan. 

Requirements

Create a Zapier account - to work with zapier, you need to create an account. 

Create an account on the tool you want to use - you also need to create an account on the tool you want to use with Zapier. 

Creating a return label when a subscription ends

A return label is a shipping label that’s prepaid and pre-addressed. Let’s see how you can get relevant data out of circuly via webhooks and send it to an app (we’re using Easyship) to creates a return label via Zapier. 

Understanding what you need

With webhooks you first have to figure out what you want to automate and the information you will require to automate it. Then you need to match it with the information that is available and can be used to create the automation. 

IMPORTANT: When you use circuly to manage your subscriptions, a subscription has a start date and an end date. If you do not use any of the auto-renewal features, then active subscriptions go into a “pending return” stage when the subscription end date as arrived. If you use the auto-renewal feature then subscriptions stay active until a customer makes a cancellation request from the customer self-service portal or write an email requesting a cancellation. When that happens, you can approve or disapprove the the cancellation based on whether or not the minimum subscription duration has passed and set it to pending return. You ideally want to generate a return label when a subscription goes into the “pending return” and “pending replacement” state.

Creating a return label when a customer makes a cancellation request from the customer self-service portal and you have enabled the auto-cancel subscription setting. 

When a customer makes a cancellation request from the customer self service portal and if you work with the auto-cancel subscription setting, then active subscriptions are immediately and automatically set to pending return and bypass the minimum subscription duration period. 

When the subscription status is set as pending return, the return workflow is triggered, meaning that the customer has to return the subscription product within a certain time period. 

It is at this stage that you ideally want to generate a return label and send it to the customer so that your customer can return the product. 

To create a return label for such subscriptions, follow these steps:

Steps:

Step 1: Setup in Zapier and circuly

  • In your Zapier home > Click on the button that says + Create Zap.

Screenshot of zapier to the automation feature with webhooks

  • In the Zapier Editor > Start by giving the Zap a name.

Screenshot of zapier to the automation feature with webhooks

  • In the same window > Search for “Webhooks” in the search field > And click on “Webhooks by Zapier

Screenshot of zapier to the automation feature with webhooks

  • Under Events > Select Catch Hook > And click on the Continue button. 

Screenshot of zapier to the automation feature with webhooks

  • Leave the field Pick off a Child Key blank for now > And click on the Continue button. 
  • Copy the URL given under Your webhooks URL

Screenshot of zapier to the automation feature with webhooks

  • Login in to your circuly Operations Backend > Go to the Webhooks tab > Click on the   + CREATE WEBHOOK button. 

Screenshot of circuly operations backend - Webhooks tab

  • In the Create webhook window > Under Event Type select subscriptions > Under Event Code select updated > Give the webhook a Name > Set a Password > Paste the URL that you copied from Zapier into the URL field. 

Screenshot of circuly operations backend - Webhooks tab

Now every time anything in a Subscription is updated, Webhook will catch that update/change and send it to Zapier.

Optional: If you have test orders and subscriptions in your operations backend, you can change something in the subscription to test the trigger. But if no change or update has been made in the Subscription at the time you are creating a Zap then the Test trigger button will not lead to any results. 

  • To test the trigger > Go back to your Zapier account > Click on the button that says Test trigger

Screenshot of zapier to show automation with webhooks feature

  • If you’ve made any changes in the Subscription, clicking on the Test trigger button will show you that a Request was found

  • If you dont want to make any changes to a subscription > You can also skip the test by clicking on the button that says Skip test.


  •  Then click on the button that says Continue to next step

Step 2: Creating a filter

Webhooks will send information to Zapier every-time something is updated in a subscription which includes all changes to all subscriptions such as subscription extension, subscription renewals, status changes etc.. But you don’t want to create a return label when the subscription is being extended or when a subscription amount is being changed. Therefore you need to set filters. To create a return label, all that you need is the status of the subscription and that’s the filter you can set while setting up your Zap. 

  • In the Action window > Select Filter

  • Under Filter setup & testing > Go to the first option “Choose field” and search for status in the search field > Select Subscription Status from the available list. See image below. 

  •  Under Choose condition > Select (Text) Contains > And under Enter text or insert data > Type pending return. (see image below for reference)

Testing the filter 

When you test the filter, you might get the message that Your Zap would not have continued. Reason being that the data webhook is sending to Zapier does not contain a sample for pending return because this was not one of the changes that was made to Subscriptions and caught by webhook. See image below. 

However this doesn’t mean that the filter doesnt work. If you change the value in the Enter test or insert data field from “pending return” to “active” and click on continue, you’ll see that you know have a success message. See image below.

You can ignore this and click on continue to move to the next step, that is sending info to your shipping tool.

Step 3: Sending data to a tool

  • In the Action window > Search the name of the tool you want to connect (we are using Easyship as an example).  

Note: Make sure to connect your tool with Zapier. Here’s how it works for Easyship > In your Easyship account > Go to Connect in the left nav bar > Click on + New Integration  > Select Zapier from the list > Click on the Connect button. 

Once you’ve completed the necessary steps in the tool, go to Zapier

  • Under Event > Select an Event (we are using Create a Shipment as an example) > Choose an account > Click on the Continue button. 

  • Under Set up actions fill in all the necessary details in the given input field. 

To fill in details, either type in the input field or click on the field to get a list of values that can be automatically taken from the data retired via webhooks. 

  • If everything is right, you’ll get a success message. See image below.

  • Check your shipping tool to see if you’ve received a shipment from zapier. 

Step 4: Send it to your customer

  • To send the details to your customer > Go back into your Zap > In the Action window > Search for the Shipping tool you use > And under Events select Find a Shipment > Click on the Continue button. 

  • Choose an Account > And continue to Set up action
  • Fill in the details in the input field > Click on Continue > Test it if you want or skip the test. 
  • Then add another action to send the shipment to your customer via email > Either select your mailing provider or  Email by Zapier > In the Events field > Select Send Outbound Email > Click on the Continue button. 

  • In the Setu up action window > Fill in all the details that you need to complete the email > Insert the Return Label in the Attachment field > Click on Continue > Test the step of Skip it > Click on the Publish Zap button. 
  • When you’re done, this is how the automation looks. 

Read more
Subscriptions
Reactivate subscription

Reactivate a Subscription

Subscriptions can be automatically (when return workflow settings are enabled) and manually reactivated. Learn more about reactivating a subscription.

Introduction

In circuly, subscriptions may automatically or manually move into an inactive state when they reach their end date or when a customer initiates a return or cancellation request. However, there are situations where a subscription needs to be restarted—for example, when the customer does not return the product on time, or when you want to reverse a cancellation. That’s where the Reactivate Subscription feature comes into play.

Feature overview

The Reactivate Subscription feature allows circuly users to manually restart a subscription that is no longer active but still eligible for reactivation. When a subscription is reactivated:

  • The subscription status is set back to “active.”
  • If applicable, recurring payments resume based on prior billing logic or updated settings.
  • Reactivation ensures continuity for subscriptions that were paused due to returns, swaps, or buyout considerations, but where the product remains with the customer.

Important rules for reactivation

  • You can only reactivate subscriptions with the status "pending return" or "pending buyout."
  • Subscriptions with the status "active," "ended," or "bought out" cannot be reactivated.
  • If auto-renewal was manually turned off, it must be enabled first before the subscription can be reactivated.
  • Reactivating a subscription can also restart recurring payments, depending on your settings.

Setting to review:
Settings > Subscriptions > Recurring Payments > Past billing dates

This setting determines if missed recurring payments from the time the subscription was inactive should be charged once the subscription is reactivated.

Step-by-step: How to reactivate a subscription

  • Log in to your circuly Hub.
  • Go to the Subscriptions tab.
  • Locate and select the subscription that needs to be reactivated.
  • Click on the three dots to open the action menu.
  • Click on "Reactivate subscription".
  • In the Reactivate Subscription window, review the message.
  • Click "CONFIRM" to complete the reactivation.

What happens after reactivation?

  • The subscription status changes to “active.”
  • Any planned or missed recurring payments are evaluated and triggered based on your system settings.
  • The customer will be charged again if the system detects unpaid cycles (based on your past billing dates setting).
Read more
Products
Initiating product buyout

Initiating product buyout when customer wants to buy the product

Learn more about initiating a product buyout in the circuly operations backend when a customer requests to buy the product in the middle or during the subscription period.

Introduction

In a rental or subscription model, customers may eventually want to keep the product they've grown to love. Whether it's at the end of their subscription period or somewhere in between, circuly gives you the flexibility to manage buyouts efficiently—without disrupting your operations.

This article explains how to initiate and manage product buyouts from the circuly Hub, especially when you want to offer custom prices. It also covers what changes take place in the subscription and what happens after the buyout is processed.

Feature Overview

There are two ways to initiate a product buyout in circuly:

  1. From the Customer Self-Service Portal
    Once enabled, customers can initiate a buyout themselves. The process is fully automated.
  2. From the circuly Hub
    You (or a circuly user) initiate the buyout manually—ideal when offering custom pricing for specific cases without affecting other product prices, or if you do not offer buyouts as a default option but accommodate them on special request.

The difference between the two options:

The key difference between the two buyout methods lies in how much control you want over pricing.

  • If you want to offer a custom price for a specific customer—without changing the default price for all products of that type—the best option is to manually initiate the buyout from the circuly Hub.
  • If you're using standard pricing and don't need to set individual buyout prices, the Customer Self-Service Portal is the more convenient choice, allowing customers to handle the process on their own. Learn more here.
Note: If you have enabled the Only allow customer-portal buyout after minimum duration is reached setting, this restriction applies only to the Customer Self-Service Portal. Hub- or admin-initiated buyouts are not affected and can be processed at any time, regardless of how long the subscription has been active. This makes the Hub the right option for accommodating buyout requests from customers who have not yet reached their minimum contract duration.

What a product buyout changes in the subscription:

When a product buyout is initiated, several things happen in the background to update the subscription and inventory status:

  • Outstanding amount is charged (if applicable)
    The system calculates and charges any remaining amount based on:
    Buyout price – total already paid = amount due
  • The product is marked as "Bought Out"
    This tells the system that the product is no longer expected to be returned.
  • Inventory is updated
    The product is removed from your shop system's available stock, reflecting that it's been purchased by the customer.

Why you should always use the buyout process (not just cancel the subscription)

In circuly, products are expected to be returned at the end of the subscription period. If a product isn't returned by the "Return until" date, the system automatically reactivates the subscription and resumes charging the customer for the unreturned product.

However, when a product is purchased through a buyout, no return is expected. That's why it's important to formally initiate the buyout process—so circuly can:

  • Properly mark the product as "bought"
  • Prevent the return workflow from triggering
  • Ensure the subscription doesn't reactivate unnecessarily

Skipping this step could cause confusion for your operations team and frustration for your customers.

If you wish to enable your customers to request buyouts on their own from their customer portal, follow this guide on Enable And Process Buyout/Purchase of Subscription Products.

For information on how to handle buyouts from the circuly Hub, continue reading this article.

Step-by-step guide

  • Step 1: Check the retail price
  • Step 2: Initiate the buyout

Step 1: Check the retail price

Before initiating a buyout, make sure the retail price of the product is correct:

  • Go to the Products tab in the circuly Hub.
  • Locate the product and verify the retail price.
  • If needed, edit the price to ensure the correct amount will be charged during the buyout.

Step 2: Initiate the buyout

  • Navigate to the Subscriptions tab in the circuly Hub.
  • Find the subscription from the list > Click on the three dots to see the subscription action menu.
  • Choose buyout subscription from the dropdown menu.
  • In the Buyout Overview window:
    • Review the Buyout Price. This is calculated based on the product's retail price minus payments already made, in line with your Share of payments and Maximum number of recurring payments settings. You can override this amount if you want to offer a custom price for this specific customer.
    • Add a message in the Invoice Line Item Text field—this will appear in the invoice email sent to the customer.
    • Click Buyout to confirm the transaction.

Make sure the email template you use includes the {{description}} variable so the custom message appears correctly in the customer communication.

What happens next

  • The status of the asset is marked as bought out. Assets with bought out status do not trigger the return workflow because they are not expected to come back (no further action is required from your side).
  • Recurring payments are stopped so that the customer is not charged additionally for the bought-out subscription.
  • The customer receives the "Buyout Order Confirmation" email first from the email templates to confirm the subscription buyout.
  • After the "Buyout Order Confirmation" email is sent, a one-time transaction is triggered with the amount in the Buyout Price input field. The amount is charged immediately using the customer's stored payment method.
  • Once the payment is successfully charged, an invoice is generated for the one-time payment (the email template "One time transaction" is used to generate an invoice) and sent to the customer (the email template "Payment was successful" is used to send the invoice confirming that the payment was successful).

Additional things to note

Buyout payments can take some time to process when SEPA is chosen. This should be mentioned in the email communication with the customer. Example text you can include in your buyout email: "Thank you for your order. You will receive an order confirmation by e-mail shortly. Depending on the payment method, it may take several days to process your payment. As soon as the payment has been successful, your subscription will be changed to "{statusBoughtOut}" and you will receive an email with your purchase invoice. If your payment cannot be processed, we will also notify you by email."

Learn more about the buyout process.

Read more
Account & Setup
Subscriptions
Auto renew subscriptions

Auto Renew Subscriptions

If your customers do not actively cancel their subscription from the Customer Self-Service Portal or write an email to you to cancel the subscription, you can auto-renew the subscription either manually, or you can automate the process.

Introduction

In subscription-based businesses, renewing a subscription is a crucial process that helps maintain ongoing customer relationships and ensures continued access to your products or services. Renewing a subscription means extending its duration, typically after the initial subscription period ends, allowing the customer to continue using the service without interruption. Depending on the business model, subscription renewals can be handled in two main ways: either manually, based on specific customer requests or circumstances, or automatically, where the system renews the subscription at the end of the term.

This article will guide you through the different methods available for renewing subscriptions in your circuly system—whether you want to manually extend a subscription or automate the renewal process to save time and ensure consistency.

Feature overview

Typically, when customers place an order on your website, they agree to a specific subscription duration. This duration is considered both the minimum and the full length of the subscription by the circuly system. Once this period ends, several outcomes are possible, including subscription renewal, cancellation, product return, or product buyout. You have the flexibility to choose whether or not to have the Circuly system automatically renew a subscription at the end of the term. If preferred, you can manually extend the subscription contract based on your specific needs or individual customer cases.

Step-by-step guide for manual renewal

  • Navigate to the subscription that needs to be renewed.
  • Click on the three dots to open the menu options.
  • Select "Extend Subscription" from the menu.
  • In the Extend Subscription window, enter the desired number of months or duration to extend the subscription.
  • Click Save to confirm the extension.
  • When you use this option to change the end date of a subscription, there is no impact of this action on the auto renew button in the subscription overview window.

    Step-by-step guide for automated renewal: Renew by original duration

    If you want to renew or extend the subscription by its original duration then turn on the switch for the Auto renew subscriptions setting. From now on subscriptions will be renewed by the original subscription duration. For example if it was a 12 months subscription then towards the end of the subscription period it will be extended for another 12 months.

    Step-by-step guide for automated renewal: Renew by custom duration

    If you do not want to renew the subscription by its original subscription duration then you can define a custom value for the renewal. To do this > First go to the Auto renew subscriptions setting and turn on the switch > Next go to the Custom auto renew subscription setting and turn on the switch for this setting > Then add a numeric value in the Custom auto renew duration input field. From now on the subscription will be renewed by the value defined in this input field.

    Important: Do not enable the switch for the Auto renew subscriptions setting if you want to renew subscriptions manually on on individual subscription level as every subscription will be renewed automatically at the end of the subscription period if you enable the auto-renew subscription setting.

    When a subscription has been auto-renewed because of the auto-renew subscription setting, the auto-renew switch in the subscription overview window will be enabled. The button provides a visual reference to determine which subscription is renewed and which is not.

    Buyout eligibility and minimum contract duration

    If you use the Only allow customer-portal buyout after minimum duration is reached setting, the subscription's auto-renew status is used to determine whether the buyout option becomes visible in the Customer Self-Service Portal. Specifically, the buyout option is only shown once the minimum contract duration has passed (auto_renew = true).

    This means that how you configure auto-renewal directly affects when customers can initiate a buyout from their portal. If you want customers to be able to buy out their subscription product before the minimum term is up, a Hub- or admin-initiated buyout remains available regardless of auto-renew status.

    Learn more about the buyout settings.

    Read more
    Customers
    Edit customer information

    Edit the Customer Information

    Customer information can be edited either by the customer in the Customer Self Service and it can also be edited by you in the Customer Profile and in Orders. Learn more about editing customer information

    Introduction

    Customer information in Circuly can be updated in three ways:

    • Manually by a circuly user through the circuly Hub
    • Directly by customers through the Customer Self-Service Portal
    • Programmatically via the circuly API.

    Editing customer details is essential for keeping records accurate—whether it's correcting a typo, updating a phone number, or changing the delivery address for a specific order.

    However, not all customer-related data is editable in one place. This is intentional: a customer might have multiple orders or subscriptions, and changes like address updates (shipping and billing) may apply only to a specific order—not their entire profile.

    Tip: You can also update customer details using circuly's API. refer to the Update a customer endpoint for more information.

    Step-by-step guide

    Editing email address and phone number

    • Go to the Customers tab in your circuly Hub.
    • Select or search the customer you wish to edit from the Customer list.
    • In the Customer Overview, go to the Billing information section on the bottom right.
    • Click the edit (pencil) icon to make the fields editable.
    • In the Edit Customer window, update the email or phone number.
    • Check the box to consent to the update, then click Submit.
    • You will see the changes reflected under Billing information.

    In B2C contexts, the email and phone number typically belong to the customer themselves. However, in B2B scenarios, one customer profile may be used to place orders on behalf of multiple individuals. In such cases, the contact information (email and phone) may reflect the person placing the order rather than the actual recipient. This information may need to be updated over time, especially when responsibilities shift within a company, while the shipping address remains tied to the end recipient.

    Editing the address details and date of birth of the customer

    When editing the address, you'll see separate fields for the shipping address and the billing address. Make sure to update the correct one based on what the customer needs changed—for example, the delivery destination versus the invoicing contact.

    • Go to the Orders tab in the circuly Hub.
    • Select the relevant order from the Order List.
    • In the Order Overview, go to the Billing information section on the bottom right.
    • Click the edit (pencil) icon.
    • In the Edit Customer window, update the address and/or birth date.
    • Check the box to consent to the update, then click Submit.

    In many cases—especially B2B—orders are placed by one contact person but delivered to different recipients. For this reason, address and birth date updates are made per order rather than globally across a customer profile. This ensures the right delivery information is applied where it's needed without affecting other subscriptions or orders linked to the same account.

    Editing customer details via the Self-Service Portal

    Customers can also update their own information through the Customer Self-Service Portal.

    However, similar to how it works in the circuly Hub, address changes are made on a per-order basis. If a customer needs to change their shipping address, they must do so from the specific order view—ensuring that address updates apply only to the relevant order and not universally across all active subscriptions.

    These updates are reflected directly in the circuly Hub.

    For a detailed breakdown of how customers can update their information in the portal, refer to:

    Read more
    Account & Setup
    Subscriptions
    Add swap/replacement reasons

    Add Swap/Replacement Reasons

    When you swap a product for an existing subscription you can specify the reason for the said action. Learn more about adding swap/replacement reasons.

    Introduction

    When processing a product swap within an active subscription, you can define specific reasons for the swap. These reasons serve internal communication purposes and help keep your operations team aligned on the context of product exchanges.

    Feature overview

    Swap reasons are shown in the Replacement Window when a swap is initiated. This makes it easy for your team to choose the appropriate reason for the product exchange and document it for future reference. Swap reasons are only visible internally and do not affect the customer’s view or experience.

    Step-by-step guide: Add swap reasons

    1. Log in to the circuly Hub
    2. Navigate to the Settings tab.
    3. Go to Swapping > General.
    4. Scroll down to the Swap Reasons section.
    5. Click the plus (+) icon to add a new reason.
    6. In the input field, type the swap reason (e.g., "damaged product", "wrong size", etc.).
    7. (Optional) In the Tag after swap field, type replacement to automatically tag orders associated with this swap.

    Good to Know

    • Tags help differentiate swap orders from standard subscriptions.
    • The "replacement" tag will be visible in the Order List view, making it easier to filter or search for such cases.
    • These reasons are flexible—adapt them to suit your internal processes.
    Read more
    Subscriptions
    Edit subscription start date

    Edit the Subscription Start Date for an Existing Subscription

    Learn how you can edit the subscription start date of a subscription that has already been created.

    Introduction

    In a typical eCommerce flow, a customer places an order, the product is shipped, and the seller estimates a delivery time—usually within a few days. The subscription is created, either manually or through automation, and a start date is assigned accordingly.

    When creating a subscription manually, the circuly user has the option to select the subscription start date. By default, this field is pre-filled with a date influenced by the Subscription start date setting (e.g., “+3” to indicate a start date 3 days from today). If no such setting is defined, the field may default to a random future date. In automated flows (bulk upload or API), the start date is included in the incoming data and adopted directly by the Circuly system.

    It's important to note: if a subscription has not yet been created for an order, the start date can be freely defined or adjusted during the subscription creation process. However, if a subscription already exists and the start date needs to be changed, then the approach is different—and that’s where the Edit Recurring Payments feature becomes relevant.

    This is especially useful in scenarios where the initial billing plan—let’s say starting on the 2nd of the month—no longer aligns with reality due to delays (e.g., the product was only delivered on the 15th). Instead of canceling and recreating the subscription, you can shift the start date and all future billing to the 15th of each month going forward, while preserving the subscription structure.

    Step-by-step guide

    • In your circuly Hub > Go to the Recurring payments tab.
    • Locate the subscription that needs an updated start date by selecting the appropriate entry from the Recurring Payment List.
    • Click on the three dots (•••) next to the entry.
    • Choose Edit Recurring Payment(s) from the dropdown menu.
    • In the Edit Recurring Payment(s) window, turn on the toggle for Change all future payments.
    • Select a new start date from the calendar—this date must be in the future and should reflect the estimated delivery or actual product usage date.
    • Save your changes.

    The subscription’s billing will now align with the new start date, and the end date will shift accordingly to maintain the original contract duration.

    circuly gives you the flexibility to correct subscription timelines when things don’t go as planned. By adjusting the start date after delivery delays or other operational reasons, you ensure billing fairness and maintain customer trust—without disrupting the overall contract terms.

    Read more
    damn.
    Sorry, but we couldn't find what you were looking for. Please try again with a different keyword or write us your question below - then we'll get our content ninjas right on it.

    did not find what you were looking for?

    We are constantly expanding and improving our knowledge loop to give you the information you need to make the best out of circuly.
    You can request articles about features that you yet do not know how to best use.
    Just tell us what you want to know and we’ll get our content ninjas right on it.

    Fields marked with an asterisk (*) are required.
    Thank you! Your submission has been received!
    Oops! Something went wrong while submitting the form.
    Orders
    Admin
    Right to withdrawal

    Order Revocation Law (EU) & Withdrawl Button in circuly

    How to comply with the EU directive of Right to Withdrawal? Heres how you can set up a seamless experience for your customers.

    Introduction

    Since 19 June 2026, EU Directive (EU) 2023/2673 requires anyone selling online to EU consumers, subscription or one-off, to offer a "withdrawal button": a clearly labelled, easy-to-find way for customers to withdraw from a contract made online, without logging in.

    circuly's Order Revocation feature lets you offer this directly from your Self-Service Portal environment, so you can meet the new requirement without custom development.

    Feature overview

    Order Revocation allows your customers to withdraw from an order by simply submitting their email address and order number, no login required. This is different from a normal cancellation made through the Customer Self-Service Portal, which requires the customer to log in first. Two things make this compliant with the new EU rule.

    1. Easy accessibility

    The withdrawal option needs to be visible and easy to find, not buried behind a login page.

    We recommend adding a clearly labelled text (for example "Withdraw order") to your website footer and/or header.

    The text has the link to the withdrawl form behind it.

    circuly also adds a withdrawal link to the order confirmation page, so customers see it right after checkout as well.

    2. No login required

    The link points to a dedicated withdrawal form on your white-label circuly Self-Service Portal, not to the portal's login page. On this form, the customer only enters their email address and order number to check their order.

    3. Withdrawal window

    The withdrawal option is only available while the order is still within its legal withdrawal period. If a customer tries to withdraw after this period, the withdrawal simply isn't possible.

    Prerequisite

    1. Fulfilled status for orders: Before you begin, please keep in mind that you should only use this feature if you use the "Fulfilled" status in circuly since the withdrawal feature relies on the Fulfilled status in the circuly Hub.

    If you don't use the Fulfilled status in your workflow, we recommend not enabling this feature, as the withdrawal window can't be calculated correctly.

    Without a reliable Fulfilled date, all orders, regardless of whether they're actually still within their legal withdrawal window, would remain eligible for revocation, which isn't correct.

    2. Early cancellation period: Please make sure that you've set a value for the early cancellation period in your settings. Read the article on the early cancellation period if you haven't set it up yet.

    Step-by-step setup guide

    To enable and configure Order Revocation, follow these steps:

    • Go to Settings > Self-Service Portal > Features > Allow Order Revocation and enable the switch.
    • Go to Settings > Order > Cancellation > Withdrawal Buffer and add a numeric value (in days).

    What is the withdrawl buffer?

    The withdrawal buffer accounts for your delivery window.

    Most merchants have a standard delivery time, for example 5–7 days. Since the legal withdrawal period only starts once a customer actually receives their order, and circuly doesn't track exact delivery dates, the buffer is added on top of your order's Fulfilled status to approximate when delivery happens.

    In practice: withdrawal window = withdrawal buffer + statutory withdrawal period (your early cancellation period), counted from the date the order enters Fulfilled status.

    Example: a 5-day buffer plus a 14-day statutory withdrawal period gives customers 19 days from the order's Fulfilled date to submit a withdrawal.

    • Go to your customer Self-Service Portal login page. Next to the one-time password button, you'll now see an additional button called Revoke your order. Click it to open the withdrawal form, then copy the URL from your browser.

    Alternatively, a simpler way to get this link is to take your Self-Service Portal login URL and replace auth/login with public/revoke.

    For example, if your login URL is https://subscription.circuly.io/en/auth/login?company_id=5550-37496638dl, your revoke URL is https://subscription.circuly.io/en/public/revoke (with or without the company ID)

    • Use this URL as the link behind your "withdraw" text in your footer, header, or wherever else you add it.

    Customer journey & steps for making a withdrawal

    • The customer goes to your website and clicks the withdrawal link, wherever you've placed it (footer, header, etc.).
    • The link takes them to the withdrawal form on your circuly Self-Service Portal.
    • The customer enters their email address and order number on the form, then clicks Check order.
    • If eligible, the customer sees the order they're withdrawing from and can optionally add a withdrawal reason. Once confirmed, they see a confirmation screen.
    • If the withdrawal window has passed, the customer sees a message that withdrawal is no longer possible.
    • If the withdrawal has already been made for the order, the customer sees a note that that the order has already been cancelled.

    What happens in the background in circuly

    1. Validating the withdrawal request

    When the customer clicks Check order after entering their email address and order number, circuly checks in the background whether the withdrawal request is valid.

    Validity is based on the following calculation: withdrawal window = withdrawal buffer + statutory withdrawal period (defined in your settings as the early cancellation period).

    2. Sending the order cancellation email

    After a successful withdrawal, the customer receives the order cancellation email from circuly's email templates. If you've added the order cancellation reason and cancellation date variables to that template, the withdrawal reason appears in the email too. You'll also see the revoke reason on the order in the circuly Hub.

    3. Refunding the payment

    If any payments were charged for the order, they're automatically refunded to the customer's original payment method.

    Read more
    No items found.

    Cancel an Order

    Cancellation of an order is done in the Orders section.

    Introduction

    In circuly, cancellation requests can be processed in two different ways, depending on whether a subscription is already active for the order. Understanding the difference is essential to correctly manage product returns and maintain accurate records.

    This guide explains:

    • When to cancel an order
    • When to set a subscription to “pending return”
    • Where to cancel orders in the circuly Hub

    Feature Overview

    Order cancellations in circuly follow two paths:

    Subscription has been created: Do not cancel the order → Set status to Pending Return

    No subscription has been created (e.g. change of mind, cancellation within return period): Cancel the order in circuly Hub

    When a subscription is active, cancelling the order is not recommended—you’re expected to get the product back, and the return flow must be triggered. Use the Pending Return status instead.

    To learn more about marking a subscription as pending return, refer to the linked guide: How to Set Subscription Status to Pending Return

    Step-by-Step Guide

    You can cancel an order from two places in the circuly Hub:

    Option 1: Cancel an Order from the Orders Tab

    • Log in to the circuly Hub
    • Navigate to Orders
    • Select the relevant order from the Order List
    • Click the three-dot menu in the top right
    • Click on Cancel Order

    In the Cancel Order popup:

    • Optional: Add a message to customer (sent via email)
    • Mandatory: Check the box for "I understand the consequences"
    • Click CANCEL THIS ORDER

    Upon cancellation, the subscription status will automatically be set to Pending Return, and the return process will begin.

    If the product was never shipped:

    • Go to Returns tab
    • Locate the subscription → Click Mark as returned.

    This skips the physical return flow and closes the loop. A success message will confirm the cancellation, and the order status will update to Cancelled.

    Option 2: Cancel an Order from the Customers Tab

    • Go to Customers
    • Select a customer from the Customer List
    • In the Customer Detail View, navigate to the Orders section
    • Click on the three-dot menu next to the order
    • Click Cancel Order

    In the Cancel Order popup:

    • Optional: Add a message to customer
    • Optional: Choose Fully refund this order
    • Mandatory: Check "I understand the consequences"
    • Click Cancel order

    A success message will confirm the cancellation, and the order status will update to Cancelled

    Additional Settings

    • Email Templates: If you add a message in the “Message to customer” field, it will be sent automatically using circuly’s configured email templates.
    • Refund Checkbox: Not required for the cancellation to proceed but helpful if you want to automate refunds in the same action.
    • Return Workflow Trigger: Always triggered if a subscription was active, even if the product hasn't left your warehouse.

    What Happens Next

    • The order status updates to Cancelled
    • The subscription status updates to Pending Return
    • A return is expected (unless manually marked as returned)
    • Any messages you entered are emailed to the customer
    • Refunds are processed if selected

    This ensures both the customer and your team have clarity on the cancellation process, and all systems stay in sync.

    Read more
    Products

    Create Products in circuly Hub

    circuly enables merchants to be independent of shop systems by offering them the functionality of creating Products (with SKUs, images & more) directly in the circuly Hub.

    Traditionally, circuly syncs product and variant information from a connected shop system such as Shopify, WooCommerce, Saleor and more. 

    This works well for businesses that rely on an eCommerce storefront to manage and display their product catalogue. However, the way businesses build and operate their digital infrastructure is changing.

    More and more companies are going headless, decoupling their frontend experience from the backend, or building fully custom shops powered by their own tech stack. 

    In many of these setups, there is no conventional shop system acting as the source of truth for product data, which means the standard sync approach doesn't apply.

    Beyond technical architecture, there is another common scenario: businesses that don't operate an online store at all. 

    This is especially true in B2B contexts, where subscription orders are created manually and on demand directly from the backend, with no customer-facing eCommerce flow involved. For these businesses, maintaining a separate shop system purely to feed product data creates unnecessary overhead.

    The Create Product feature is built specifically for these use cases. It allows you to create products and their variants directly inside the circuly Hub no external shop system required.

    Feature Overview

    With this feature, you can build and manage your product catalogue entirely within circuly.

    Products created in the Hub behave the same way as synced products: they can be used for creating subscription orders, assigned to product collections, and managed from the circuly Hub.

    This makes the circuly Hub a fully self-contained environment for businesses that operate without a traditional eCommerce storefront, or for teams that need to add products quickly without going through an external system.

    Key things you can do with this feature:

    • Create products with all relevant details including title, SKU, and pricing
    • Upload a product thumbnail via URL
    • Create and manage product variants under a parent product
    • Control whether a product is active for subscription orders
    • Control whether orders for the product can be created directly from the circuly Hub
    • Assign products to product collections for better organisation

    Step-by-step guide

    To create a product in the circuly Hub, follow these steps:

    • In your circuly Hub, navigate to the Products tab in the left navigation bar.
    • Click on the + Create Product button.
    • In the Create Product window, fill in the required details. Fields marked with an asterisk (*) are mandatory and must be completed before the product can be saved.
    • Click Save to create the product. It will now appear in your product list.

    Explanation of input fields

    Title*

    The name of the product. This is used internally and may also be visible depending on your setup.

    SKU*

    The Stock Keeping Unit identifier for the product. Each product and variant should have a unique SKU to ensure accurate tracking and order management.

    Price*

    The rental or subscription price for the product. This is the amount that will be used when creating subscription orders for this product from the Hub.

    Thumbnail Image

    You can add a product image by entering a valid image URL. The image will be displayed as a thumbnail in the product list and in the order creation view, making it easier to identify products at a glance.

    Active

    This toggle is enabled by default. When active, the product is available for use in subscription orders. Disabling this switch deactivates the product, preventing it from being selected when creating new orders — without permanently deleting it.

    Allow Order Create

    When this switch is enabled, it is possible to create a subscription order for this product directly from the circuly Hub using the Create Order feature. This is particularly useful for businesses that manage their subscription operations entirely from the backend. If disabled, the product exists in the system but cannot be selected during manual order creation. Learn more about creating orders in the circuly Hub.

    Product Variants

    Similar to how variants work with synced products, products created in the Hub can have multiple variants. A variant represents a specific version of a product,  for example, different sizes, colours, or configurations, each with its own SKU and pricing.

    Product Collections

    Products created directly in the Hub can be assigned to product collections, just like synced products. Collections help you organise your catalogue into logical groups, which is useful for reporting, filtering, and order management within the circuly Operations Backend.

    To assign a product to a collection, select the relevant collection when creating or editing the product.

    How products created in the Hub interact with other circuly modules

    Once a product has been created in the circuly Hub, it becomes available across several other circuly modules and workflows — the same way a synced product would behave.

    circuly Store Connect

    circuly Store Connect is the in-store module that allows store staff to create subscription orders on behalf of customers at any point of sale, without needing access to the full circuly Hub. Products created directly in the Hub are available for selection in Store Connect, making it possible for businesses without an online store to also equip their physical retail staff with everything they need to create orders on the spot.

    Create Order and Create Quote

    Products created in the Hub can be selected when creating an order or quote directly from the circuly Hub via the Draft Order feature. These two options work differently:

    • Create Quote sends the customer a PDF quote along with a pre-filled checkout link. The order stays in draft until the customer completes checkout and adds their payment details. Alternatively, the order can be confirmed immediately using the customer's existing payment method.
    • Create Order directly creates and confirms an order without any action required from the customer. Payment is either charged via the customer's existing payment method, or handled by invoice — in which case the payment needs to be manually marked as settled.

    In both flows, the circuly checkout operates independently of any external eCommerce storefront, so customers can review their order and complete payment regardless of whether a shop system is in place.

    Vouchers

    Product-specific vouchers created in the circuly Hub can be applied to products created directly in the Hub, just as they would for synced products. This means discount campaigns and targeted promotions remain fully available even without an external shop system.

    Self-Service Portal

    Subscriptions tied to products created in the Hub are fully manageable through the circuly Self-Service Portal. Customers can view their subscription details, request cancellations, update payment details, and download invoices — all without any additional configuration required on the product side.

    Use cases

    Headless and custom-built storefronts

    If your shop frontend is built on a custom stack or a headless architecture, you may not have a traditional shop system managing your product data. Instead of setting up a third-party integration purely to sync products, you can create and manage them directly in circuly.

    Businesses without an online store

    If your business model involves creating subscription orders on demand — for example, in a B2B context or through direct sales — you likely don't need a customer-facing shop at all. This feature lets you build a working product catalogue inside circuly without any external system dependency.

    Quick product additions

    Even for businesses that do use a shop system, there may be cases where a product needs to be added to circuly quickly for a one-off order or a pilot run. Creating it directly in the Hub avoids the need to update the external system and wait for a sync.

    Read more
    Invoices
    Invoice types

    Invoice Types in The circuly Hub

    Learn about the different invoice types in circuly — from initial and recurring payments to refunds, buyouts, and cumulated invoices — and when each one is generated.

    Introduction

    Invoices in circuly are generated automatically based on the events and actions that occur throughout the subscription lifecycle. Different types of charges, from the initial payment at checkout to recurring billing cycles, ad-hoc fees, and end-of-subscription buyouts, each produce a distinct invoice type.

    Understanding the different invoice types helps your finance and operations teams accurately interpret billing records, reconcile accounts, and handle exceptions such as cancellations, refunds, or corrections.

    Below is an overview of each invoice type available in circuly and what it represents in a subscription context.

    Invoice Types

    Initial

    The initial invoice is created for the first payment of a subscription order when the charge occurs at checkout. Depending on your setup and the nature of the order, it can include a combination of the following:

    • First billing period charge
    • Prepaid duration charge
    • Setup fees
    • Shipping costs
    • Deposits

    Recurring Payment

    Recurring payment invoices are generated automatically on each regular billing cycle — for example, monthly — for each active subscription. There is a one-to-one relationship between a recurring payment and its invoice, meaning each billing cycle produces exactly one recurring payment invoice per subscription.

    Cumulated Invoice

    A cumulated invoice is a consolidated invoice that groups multiple recurring payment invoices into a single document. This is commonly used to simplify billing and accounting by combining recurring charges into one invoice rather than issuing several separate ones.

    A few requirements and configuration details to be aware of:

    • Only recurring payment invoices can be grouped into a cumulated invoice.
    • The recurring payments being grouped must share the same billing date.
    • Invoices can be grouped either by order ID or by customer ID, depending on the configuration set up for your account.

    One-Time Payment

    One-time payment invoices are issued for ad-hoc charges that fall outside the regular subscription billing schedule. Common examples include:

    • Damage fees
    • Manual charges
    • Extra services

    Delayed Payment

    A delayed payment invoice serves the same purpose as an initial invoice, but is issued when the first charge for a subscription order does not occur at checkout. This invoice type is commonly used by merchants who want to verify or process orders before charging the customer — for example, to avoid issuing refunds for orders that may later be cancelled due to failed or invalid credit card checks.

    Cancellation

    A cancellation invoice is issued when an existing invoice is cancelled. It reverses the original invoice for accounting purposes.

    Refund

    A refund invoice is issued when money is returned to the customer. It acts as a credit invoice and is used to accurately reflect the reimbursement in your accounting records.

    Replacement

    A replacement invoice is generated when an existing invoice needs to be corrected or superseded. Common reasons for issuing a replacement invoice include:

    • Corrections to invoice details
    • Changes in tax information

    Buyout

    A buyout invoice is issued when a customer chooses to purchase the product out of their subscription. It covers the remaining buyout value owed for the product at the time of purchase.

    Read more
    Account & Setup
    support

    Submitting and Managing Support Tickets in the circuly Hub

    The circuly Hub includes a dedicated Support tab, accessible directly from your navigation, where you can create and track tickets without ever switching tools.

    Introduction

    The circuly Hub includes a dedicated Support tab, accessible directly from your navigation, where you can create and track tickets without ever switching tools. Whether you are reporting something that is not working, asking for help with a configuration, or suggesting an improvement, you can do it all from within the Hub.

    This article explains how the support feature works, how to submit a ticket, and how to stay on top of any ongoing communication with the circuly team.

    Feature Overview

    The Support tab is designed to centralise all communication between your team and circuly. Here is a quick overview of the key concepts:

    • Request Types — When creating a new issue, you choose from three request types: Bug Report (something is not working as expected), Support Request (you need help with something), and Feature Request (you have a suggestion for improvement). Selecting the right type helps the circuly team route and prioritise your ticket appropriately.
    • Ticket statuses — Each ticket moves through a set of statuses that reflect where things stand. The tabs in the Support overview let you filter by All, Open, In Progress, and Closed, so you always have a clear picture of your active and resolved tickets.
    • Ticket thread — Every ticket has its own activity thread. Both you and the circuly support team can leave comments directly inside the ticket. This keeps all communication in one place — no need to search through email inboxes or external channels.
    • Visibility and notifications — All tickets created within your organisation are visible to every user in the Hub. However, only the user who originally created a ticket will receive notifications about updates, such as new comments, requests for additional information, or ticket closure.

    Step-by-step guide

    Creating a new ticket

    • Navigate to the Support tab in your circuly Hub.
    • Click the + New issue button in the top right corner.
    • On the New Issue page, select the Request Type that best matches your situation: Bug Report, Support Request, or Feature Request.
    • Use the Subject dropdown to select the topic area that applies to your issue.
    • Enter a clear Title for your ticket. A descriptive title helps the support team understand your issue at a glance.
    • Add a Description with as much relevant detail as possible.
    • If helpful, attach files using the Attachments area. You can drag and drop files or click to upload. A maximum of 3 files, up to 10 MB each, can be attached.
    • Once you have filled in all the details, scroll down and click Submit Request. Your ticket is now sent to the circuly team.

    Tracking your tickets

    • After submitting, you are taken to the Support overview, where all tickets submitted by your organisation are listed.
    • Use the status tabs — All, Open, In Progress, and Closed — to filter your view and focus on what matters at any given moment.
    • Click on any ticket to open the full detail view. Here you will see the original description, the ticket status and type, the creation date, and the full activity thread.

    Communicating with the circuly team

    • If you realise you forgot to include something after submitting, or if the circuly team has left a comment requesting more information, open the relevant ticket and scroll to the activity section.
    • You will see all comments from the circuly support team displayed in the thread. To respond, type your message in the Leave a comment field.
    • You can also attach additional files to your reply using the attachment area below the comment field — same file limits apply: max 3 files, 10 MB each.
    • Once you are ready, click Send Reply. Your comment is added to the thread and the circuly team is notified.

    Important things to know

    • Who can see tickets? All users within your organisation can view all tickets submitted through the Hub, regardless of who created them. This makes it easy for team members to stay informed.
    • Who gets notified? Only the user who created the ticket receives notifications about updates — such as new comments, status changes, or ticket closure. If someone else on your team needs to stay in the loop, make sure the right person submits the ticket, or share updates manually within your team.
    • Centralised communication — All back-and-forth with the circuly support team happens inside the ticket thread. There is no need to check email or external systems — everything is in one place.
    Read more
    Invoices
    Export invoice data

    Exporting Invoice Line Items in Circuly

    Learn how to export invoice line items in circuly for detailed revenue and product analysis.

    Introduction

    Previously, when exporting invoices from circuly, you could only export the summary data — that is, whatever was displayed in the invoice list under the various column headings. This made it difficult to perform deeper revenue or product-level analysis.

    Now, circuly makes it possible to export invoice line items directly. This means you can analyse your data in far greater detail — for example, by SKU, product type, or any other details included in an invoice line item.

    Note: This feature is only available for invoices created in 2025 or later.

    Feature Overview

    With invoice line item exports, you can:

    • Perform detailed revenue analysis: Break down invoices by individual items, SKUs, and more.
    • Support advanced reporting needs: Use the data for deeper accounting, profitability, or inventory insights.
    • Choose between exports and webhooks: Download a CSV when needed, or automate data delivery through a webhook directly into your systems.

    Step-by-Step Guide

    1. Export invoice line items via CSV

    How to export

    • In the circuly Hub, navigate to the Invoices tab.
    • Select the invoices you want to export by checking the boxes next to them.
    • Click on the Export button.
    • In the Export Data window, check the option “Export invoice line items only.”
    • Once your export is processed, you’ll receive a notification under the bell icon in the circuly Hub.
    • Click on the notification to download your CSV file.

    2. Automate data exports with webhooks

    If you’d like to receive invoice line item data automatically — without manually exporting every time — you can use circuly’s webhook functionality.

    How to set up the webhook

    • Go to the Webhooks tab in the circuly Hub.
    • Click on Create Webhook.
    • Under Event Type, select the new option “Invoice with Items.”
    • Continue the usual steps to configure your webhook, setting the destination URL where you want the data to be sent.

    As with any webhook, data will be pushed to the destination URL whenever the event is triggered.

    Read more
    Admin
    Retailer portal

    circuly Retailer Portal & Point of Sales

    Discover how Circuly’s Retailer Portal streamlines subscription orders for retail employees, with easy management and integration with the self-service portal.

    Introduction

    circuly Store Connect is the fourth module in the circuly ecosystem. It is a lightweight web app designed for one purpose: enabling store staff to create subscription orders on behalf of customers — from any device, at any point of sale.

    It gives retailers everything they need to create orders without having access to the full circuly Hub. The interface is intentionally simple. Staff see only what they need to do their job: create orders, track them, and handle returns.

    Store Connect works on any device — tablet, iPad, desktop, or shared POS terminal — and requires no installation.

    Use cases

    In-store orders at physical locations

    • Customers walk in, and store staff creates the subscription for them on the spot.
    • Staff do not need Hub access — just the Store Connect URL, a location ID, and a password.

    Multiple store locations

    • A company with multiple physical stores can create a separate store profile for each location in the circuly Hub.
    • Each location has its own location ID, making orders traceable by store.

    In-person verification before activation

    • A customer fills out a contact form online to express interest.
    • The subscription is only finalised once the customer comes into the store in person, shows their ID, and completes the checkout on-site.

    How circuly Store Connect fits into the ecosystem

    circuly Store Connect is the fourth module in the circuly product family. All four modules are connected — data flows between them, and customers always have a unified view of their subscriptions regardless of where they were created.

    circuly Hub: The backend where admins manage products, orders, subscriptions, retailers, returns, payments, and all operational workflows.

    circuly White-Label Checkout: The online checkout through which customers subscribe to products on your website or ecommerce store.

    circuly White-Label Customer Self-Service Portal: The portal where customers manage all their active subscriptions, update payment details, download invoices, and more.

    circuly Store Connect: The simplified in-store tool that lets store staff create subscription orders on behalf of customers at any point of sale.

    The unified customer journey

    circuly uses the customer's email address as the linking identifier across the entire ecosystem. This means:

    • A customer who subscribes online through the White-Label Checkout and then subscribes again in-store through circuly Store Connect — using the same email address — will see both subscriptions in their Customer Self-Service Portal.
    • There is no manual merging or additional setup required. The linking is automatic.
    • No matter where the subscription journey starts — online, in-store, or via a sales rep — the customer always has a single, unified view.

    💡 This is why it is important for store staff to confirm the customer's email address carefully when creating an order. If a different email is used, the in-store subscription will appear as a separate customer profile and will not be linked to existing subscriptions.

    → See also: Everything about the circuly Self-Service Portal→ See also: Actions and operations your customers can do and see in the Self-Service Portal

    Feature overview

    Once an order is created through circuly Store Connect, it follows the same logic as all other orders in circuly — including cancellations, swaps, buyouts, payment retries, and returns — based on the settings configured in your circuly Hub.

    Here is a brief overview of the end-to-end flow:

    • Store profile creation: Hub admins create store profiles in the circuly Hub, each with a unique location ID and password.
    • Product availability control: Admins decide which products are available in Store Connect. Only enabled products appear in the store interface.
    • Login: Store staff log in using the shared Store Connect URL, their location ID, and password.
    • Order creation: Staff select the product, variant, quantity, subscription start date, and customer details. Orders can be created in minutes.
    • Pre-filled checkout link: Once an order is created, an email is automatically sent to the customer with a pre-filled checkout link. The link is also available in Store Connect for the staff to share or resend manually.
    • Customer payment: The customer adds their payment details — either on their own device or on the store's device — to finalise the subscription.
    • Order confirmation: Once payment is completed, the order appears in the circuly Hub and is processed like any other order.
    • Order management: Store staff can view all orders created from their location, track statuses, resend checkout links for pending orders, and initiate returns for active subscriptions.

    Setup guide (Hub admin)

    Here is an overview of the setup steps:

    1. Set up branding for the Store Connect interface.
    2. Create store profiles in the circuly Hub.
    3. Make products available in Store Connect.
    4. Share login credentials with the store staff.

    Step 1: Set up branding

    Customise how Store Connect appears to your staff and customers, so it reflects your brand.

    • In your circuly Hub > Go to the Theming tab.
    • Add Logo: Upload your company logo to appear in Store Connect.
    • Add Favicon: Upload a favicon for the browser tab.
    • Customise colours and fonts: Set other available options to match your branding.

    Step 2: Create store profiles

    Each store location needs its own profile with a unique location ID and password.

    • In your circuly Hub > Go to the Retailers tab.
    • Click + Create retailer.
    • In the Create retailer window, fill in:
      • Name — the store or location name.
      • Location ID — a unique identifier for this store (used to log in).
      • Password — set a password for this store profile.
      • Address — the physical address of the location.
    • Turn on the Active switch so the store can log in.

    💡 Repeat this process for every store location. Each location gets its own location ID and password, which allows you to track orders by store.

    → See also: Create a User for managing user-level access in the Hub.

    Step 3: Make products available in Store Connect

    Products are not visible in Store Connect by default. You control which products appear there.

    • In your circuly Hub > Go to the Products tab.
    • Find the product you want to make available in Store Connect.
    • Click Edit.
    • Scroll to the right and enable the switch under Allow Order Create.
    • Only products with this switch enabled will be visible in Store Connect for order creation.

    💡 Product availability applies globally across all store locations. You cannot restrict specific products to individual stores — it is an all-or-nothing setting per product.

    Step 4: Share login credentials

    • Go to Settings > Company settings > Company data > Retailer domain.
    • Copy the Store Connect URL from this section.
    • Share the URL along with the location ID and password with your store staff.

    All three pieces of information are required to log in: URL + location ID + password.

    Order creation guide (store staff)

    Logging in

    • Open the Store Connect URL on any browser or POS device.
    • Enter your location ID and password.
    • Click Log in.

    Creating an order

    • On the main screen > Click Create New Order.
    • Select product and variant: Choose the product, variant, and quantity. You can add multiple products to the same order by repeating this step.
    • Select subscription start date: Pick when the subscription should start.
    • Add customer details: Enter the customer's contact information, shipping address, and billing address.
    • Review the order: In the Review window, check all details.
    • Click Create Order.

    Once the order is created:

    • The customer automatically receives an email with a pre-filled checkout link.
    • The link is also visible inside the order in Store Connect, so you can copy and share it manually if needed.

    Customer completing the checkout

    After receiving the link, the customer:

    1. Opens the link — all product and contact details are already filled in.
    2. Adds their payment details to finalise the subscription.

    💡 The customer can complete this on their own device or on your device in the store. The payment method is saved for future recurring charges just as it would be for any online subscription.

    Once payment is made, the order appears in the circuly Hub and the subscription is active.

    → See also: All Different Ways to Start a Subscription in the circuly Hub→ See also: Create a Subscription

    Managing orders in Store Connect

    Store staff can view and manage all orders created from their location directly within Store Connect.

    Understanding order statuses

    StatusWhat it meansOpenThe order has been created and the checkout link has been sent to the customer, but payment has not yet been completed. The order is not yet visible in the circuly Hub.ActiveThe customer has completed payment. The order is now in the circuly Hub and the subscription is running.

    Viewing your orders

    • Log in to Store Connect.
    • The Orders overview shows all orders created from your location, with the customer name, product, status, and creation date.
    • Click on any order to view its full details.

    Resending or copying the checkout link

    If a customer has not completed the checkout — for example, they left before finishing — you can follow up without creating a new order.

    • In Store Connect > Go to the Orders overview.
    • Find the order with the status Open.
    • Open the order.
    • From the order detail view:
      • Copy the link and share it directly with the customer (via SMS, WhatsApp, email, etc.).
      • Resend the email to send the pre-filled checkout email to the customer again automatically.

    Handling a return

    Store staff can initiate a return for an active subscription from within Store Connect.

    • In Store Connect > Go to the Orders overview.
    • Find the order with the status Active.
    • Open the order.
    • Click Return and follow the steps to confirm.

    💡 Returns initiated from Store Connect follow the same return logic configured in your circuly Hub. If you are unsure about return conditions, check with your Hub admin.

    → See also: The Return Workflow and the Associated Settings→ See also: Process a Return Request Made by the Customer

    FAQ's

    Will the customer have access to the Self-Service Portal if the order was created in Store Connect?

    Yes. All orders created through Store Connect are fully integrated with the customer Self-Service Portal. The customer can manage their subscription, update payment details, download invoices, and more — just like any other subscription.

    What if the customer already has an online subscription?

    As long as the customer uses the same email address for both the online and in-store subscriptions, both will appear in their Self-Service Portal and both will be visible in the circuly Hub under the same customer profile.

    Can I control which products appear in Store Connect?

    Yes. In the circuly Hub, go to Products, edit a product, and enable the Allow Order Create switch. Only products with this switch enabled will be visible in Store Connect. This setting applies globally — you cannot restrict different products to different store locations.

    What happens if a customer doesn't complete the checkout?

    The order remains visible in Store Connect with the status Open. It will not appear in the circuly Hub until the customer completes payment. Store staff can resend or copy the checkout link at any time to follow up with the customer.

    Can a store create multiple orders for the same customer?

    Yes. A store can create multiple orders for the same customer as long as each order is submitted separately through the Create New Order flow.

    Can store staff cancel an active subscription?

    No. Cancellations of active subscriptions are managed in the circuly Hub by Hub admins. Store staff can initiate returns from Store Connect but cannot cancel subscriptions directly.

    Can I restrict which stores can access certain products?

    No. Product availability is controlled globally across all store locations. You can control which products are available in Store Connect, but this applies to all stores equally.

    Does the customer need to create an account for the in-store subscription to appear in their portal?

    No. The customer simply needs to use the same email address when completing the checkout link. circuly links subscriptions by email address automatically — no account creation is required.

    Read more
    Subscriptions
    Account & Setup
    past start date

    Setting: Allow start date in past

    Learn how to enable and use the circuly setting that allows subscription start dates in the past.

    Introduction

    When creating a subscription manually, you have the option of selecting a start date for the subscription. selecting a start date is important because this impacts the end date of the subscription. By default, circuly only allows you to set a subscription start date in the future. However, in some operational scenarios—such as aligning with a shipment date or correcting delayed data entry—you may need to set a start date in the past.

    circuly provides a setting that enables this flexibility, allowing you to manually create subscriptions with a past start date.

    Setting Overview

    The setting to allow past start dates can be found in your circuly Hub. Once enabled, it lets you manually choose a start date that lies in the past when creating a new subscription. This setting only affects manual subscription creation via the circuly Hub.

    Use Cases:

    • The product was shipped earlier, and the subscription needs to match that timeline.
    • Subscription data (e.g., billing cycle, usage tracking) should reflect actual usage.

    Step-by-step guide

    To enable the option to create subscriptions with a past start date:

    • Log in to your circuly Hub.
    • Go to the Settings tab in the navigation menu.
    • Navigate to Subscription settings > Create Subscription.
    • Find the setting labeled "Allow start date in past".
    • Enable the switch next to this option.

    Once enabled, the date picker in the subscription creation flow will allow you to select both past and future dates.

    Read more
    No items found.

    Edit user permissions

    In the circuly Hub, you can manage user access with precision — deciding who sees what, and what actions they can perform.

    Introduction

    In the circuly Hub, you can manage user access with precision — deciding who sees what, and what actions they can perform. This helps keep your operations secure, focused, and aligned with your team’s responsibilities.

    Feature Overview

    With Advanced User Management, you can define access per individual tab giving you full control over what each user can view or manage.

    Example Use Case:

    If someone in your team only needs to download invoices at the end of the month, you can give them access to just the Invoices tab — without exposing other sensitive data like customers or operations.

    Step-by-Step Guide

    1. Log in to the circuly Hub
    2. Go to the Users tab
    3. Find the user whose permissions you want to update
    4. Click on the user’s name to open the Access Scope window
    5. You’ll see a list of all Hub sections (Orders, Customers, Invoices, Email History, etc.)
    6. For each tab, you can check or uncheck the available permission types:
    7. Once done, simply close the window — changes are saved automatically

    ✅ The user’s access is updated immediately.

    Read more
    No items found.

    Edit customer balance

    The Customer Balance is a flexible way to apply credits or discounts to a customer's next recurring payment. Whether you're offering a goodwill gesture or rewarding loyalty, the balance amount is automatically deducted from the next payment due.

    Introduction

    The Customer Balance is a flexible way to apply credits or discounts to a customer's next recurring payment. Whether you're offering a goodwill gesture or rewarding loyalty, the balance amount is automatically deducted from the next payment due.

    Feature Overview

    In the circuly Hub, the customer balance can be manually customised for any subscriber.

    • This feature also interacts with Refer a Friend, where referral rewards are added as customer balance.
    • If the customer has a balance, it is automatically applied to their next recurring payment.
    • If the balance exceeds the upcoming payment, the remaining amount is carried forward to future payments until fully used.
    • You can add or reduce the balance as needed — but the balance can never go negative.

    Common Use Cases:

    • Offering a discount due to a product issue during the subscription
    • Providing a one-time loyalty credit for long-term or returning customers

    Step-by-step guide

    • Go to the Customers tab in your circuly Hub
    • Find and select the customer you'd like to update
    • On the right-hand side, click the Customer Balance button
    • In the popup:
      • Enter a positive value to add credit (e.g. 20)
      • Enter a negative value to reduce the balance (e.g. -10)
    • Click Submit
    • Refresh the page to see the updated balance reflected in the customer profile

    The full balance (if available) will be automatically deducted from the customer's next payment.

    Read more
    Debt Collection

    Debt Collection & Dunning in circuly: circuly x Debtist Integration.

    circuly has partnered with Debtist to offer automated collection of unpaid invoices natively within circuly. Learn more

    Introduction

    Subscription-based business models have an increased exposure to payment failure due to the recurring nature of the business. Effective and efficient dunning and debt collection is needed at all costs but can often be messy, frustrating and time-consuming. Additionally, since Inkasso processes typically operate offline, they result in unsynchronised data and cumbersome post-collection tasks, like manually entering information into bookkeeping systems and other needed platforms. 

    To solve this problem, circuly has partnered with Debtist to offer debt collection natively within circuly so that you can save your time, nerves, internal resources and lost revenue. 

    Benefits on a native solution

    A native integration for debt collection, offers the following benefits:

    • Automated processes eliminate manual workload and errors.
    • Expert communication and professional expertise eliminate misunderstandings and maintain consistent communication with your customers. 
    • Automated synchronisation of data between circuly and Debtist keeps data clean and ready for bookkeeping. 
    • Available within circuly in an easy-to-understand dashboard that eliminates the need to work in two systems. 

    Integration Overview

    Our new debt collection feature (powered by Debtist) enables you to recover lost revenue easily and professionally, thus improving your bottom-line cash flow while eliminating the need to allocate additional time or human resources to manage unpaid invoices. The native integration ensures that you have a full and detailed overview within circuly of all your unpaid payments that Debtist is currently handling. 

    Additionally, our native debt collection integration eliminates the need for maintaining and checking two different systems and ensure that you have all the information you need in one system, that is circuly. The two systems speak with each other seamlessly to provide you a smooth and consistent user experience and clean data for bookkeeping purposes. 

    Process overview

    Once you have enabled the integration and completed the setup, all unpaid invoices will be transferred to the Debt Collection tab for collection by Debtist as soon as the maximum number of payment retrials have been made. Debtist then works fully automated to bring the unpaid invoices to a resolution. 

    - Step 1: Regular payment collection. 

    circuly collects recurring payments according to the defined schedule. If the payment is successfully collected, you’ll see its status marked as “settled." If it fails, you’ll see its status marked as “failed.” 

    - Step 2: Payment retrial and email communication.

    When a payment fails, the circuly system retries the failed payment according to your payment retrial settings and sends the “payment failure” email. 

    IMPORTANT: In the circuly operations backend, you can define how many times a payment should be retried, what should be the time interval between each attempt and if the customer should be informed on each attempt or only on the final attempt. 

    - Step 3: Maximum payment retrial attempts made. 

    As soon as circuly has made the last payment retrial attempt and if the payment still has the “failed” status, the payment and the connected invoice are transferred to the Debt Collection tab. The payment is also assigned the status "in debt collection" to indicate that the connected invoice and payment are in the debt collection process.

     

    - Step 4: Prejudicial debt collection by Debtist

    When an invoice is transferred to the debt collection tab, it is also transferred to Debtist for debt collection. Debtist then starts with the pre-judicial collection process via email and/or letter and other communication channels to obtain the particle or full payment. 

    90% of the unpaid invoices come to a resolution in the prejudicial phase.

    - Step 5: Judicial debt collection by Debtist

    If the payment is still outstanding, Debtist begins judicial proceedings. At this stage, Debtist may get in touch with you if additional charges are to be incurred. 

    IMPORTANT: Judicial proceedings typically involve additional costs. However Debtist will always get in touch with you before proceeding with any step that incurs additional charges for you so you can decide whether or not you'd like to proceed.

    - Step 6: Debt Collected 

    If the payment is successfully collected, the status will change from "in debt collection" to “debt collected” in your circuly Operations Backend.

    See the image below for a process overview

    Step-by-step setup guide

    There are two steps to enabling and setting up the debt collection feature:

    1. Step 1: Send the activation request and create a Debtist account. 
    2. Step 2: Create a Debtist account.
    3. Step 3: Review the debt collection settings. Decide how you'd like to handle unpaid invoices for debt collection: automated or manual handover.

    IMPORTANT: After you send the activation request, the debt collection feature will be activated on the 1st day of the month following your request.

    For example, if you submit the activation request on August 15th, the debt collection feature will be automatically activated for your account on September 1st.

    - Step 1: Send the activation request

    • In the left navigation bar, go to the Debt Collection tab

    • Click on the button that says ACTIVATE DEBT COLLECTION

    A popup box will open where you can see the pricing list from Debtist and. The pricing list outlines the debt collection charges from Debtist for different countries. 

    Additionally, you can read the privacy policy and terms & conditions. 

    Click on the NEXT button to trigger the activation request and to start creating your Debtist account. 

    - Step 2: Create a Debtist Account

    • In the Create your Debtist account window, add your details and click on the SUBMIT button.

    What is the Max. Payment Plan Option?

    When setting up your Debtist account, you can choose how your customers will repay their debt—either as a single payment or in multiple installments.

    • To require a one-time payment, simply enter "1" in the input field.
    • If you'd prefer to offer your debtors a flexible payment plan, enter the number of installments you're willing to accept, such as "2", "3", "4", and so on.

    This option gives you control over how repayments are structured to suit both your needs and those of your customers.

    Why is the IBAN needed?

    Any payment collected by Debtist on your behalf is transferred to this account.

    The debt collection feature will be activated on the 1st day of the month following your request. For example, if you submit the activation request on August 15th, the debt collection feature will be automatically activated for your account on September 1st.

    - Step 3: Review the Debt collection settings

    Once you've sent the activation request and created an account, go through the debt collection settings and decide how you'd like to hand over unpaid invoices for debt collection, that is manually or via the automated process.

    In your circuly Operations Backend, head over to the Settings tab > Invoice & payment > Scroll down to DEBT COLLECTION to configure the settings associated with debt collection. 

    • Auto claim: enable the switch if you want to hand over the unpaid invoices when a payment fails automatically and has been retried x number of times (payment retrial settings) to Debtist for debt collection.
    • Delay by: set the number of days the circuly system should wait when a failed and retried payment is handed over for debt collection to Debtist. 

    Overview of the Debt Collection tab: Post-Activation

    In the beginning the Debt Collection tab will be empty (see image below).

    You will see data as soon a payment has been retried by the circuly system as per your payment retrial settings and transferred to Debtist for Debt Collection. When there are some claims and invoices under the process of debt collection, this is how the Debt Collection tab will appear (see image)

    Require action column

    The require action column tells you whether there is any action needed from your side. When you see a GO TO ACTION tag under the Requires action column you can simply click on it to see what action is required. You can then add your decision as a comment and Debtist will proceed accordingly. You can even upload files if needed. See example image below.

    Status column

    The status column reflects the phase the unpaid invoice is in when it under the debt collection procedure.

    Pricing 

    A fixed fee of 49€ will be charged monthly upon activation for everything, including the integration + implementation + continued debt collection-*

    *Additional costs may apply based on the region of debt collection. Additional costs are incurred ONLY IF the debt is successfully collected. There are no costs if the debt is not collected, that is if the claim is unsuccessful. 

     

    Additional costs based on region

    DACH
    - no additional costs

    Europe (excluding DACH) - 20% of the success claim

    Outside Europe - 30% of the success claim 

    Read more
    Payments
    Admin
    Failed payment

    Settings: Failed Payment Retrial

    In the circuly operations backend you can define how many times a payment should be retried, what should be the time interval between each retry, should the customer be informed on each attempt or only on the final attempt and so on.

    When managing subscriptions, failed recurring payments are a common challenge. The circuly system helps automate your response to these failures with flexible settings—allowing you to define retry logic, communication flows, and what actions to take if multiple payment attempts fail.

    This article explains each of the settings available to manage failed payments, so you can configure a process that suits your operations.

    Feature overview

    In the circuly Hub, you can configure:

    • How many times a failed payment should be retried.
    • The time interval between each retry attempt.
    • How many days in the past circuly should check for unpaid payments.
    • Whether a subscription should be canceled after repeated failures.
    • Whether and when your customer should be notified of failed payment attempts.

    Step 1: Configure payment retry settings

    To access the settings:

    Go to: Settings > Invoices & Payments > Failed Payment

    Available options:

    • Maximum number of payment retries
      Defines how many times circuly should automatically retry a failed payment before requiring manual input.
    • Next payment attempt in
      Sets the time interval (in days) between each retry attempt.
    • Past billing date
      Defines how many days in the past circuly should look for missed recurring payments and attempt to retry them.
    • Example:
      If you set this value to -15, circuly will check for any unpaid recurring payments scheduled in the last 15 days and attempt to retry them based on your retry rules.
    • Cancel subscription on failure
      If enabled, the subscription is automatically canceled and moved to pending return status after two failed payment cycles.
      • A payment cycle refers to a single payment being retried up to the maximum number of times you’ve defined.
      • Two failed payment cycles mean two different payments have both failed, each having already gone through all retry attempts.

    Learn more: What is a payment cycle?

    Step 2: Configure email notifications for failed payments

    To access the settings:

    Go to: Settings > Emails > Payment Notifications

    Available options:

    • All payment-related emails
      When enabled, circuly sends email notifications for both successful and failed payments using the associated email templates:
      • “Payment was successful”
      • “Payment has failed”
    • Failed payment – final attempt
      Sends a failed payment email only on the last retry attempt.
    • Failed payment – every attempt
      Sends a failed payment email after each retry attempt.
    • Terminal
      Sends the “Return unpaid product” email after two failed payment cycles.
      Make sure this template is activated in your Email Templates section.

    Important: An email can only be sent if the corresponding template exists and is activated in the Email Templates tab.

    Learn more here about how to retry a failed payment manually.

    Read more
    Subscriptions
    Mark as settled

    Manually Mark Payment as Settled

    Learn more about marking a payment as settled.

    Introduction

    Not all payments in your subscription business are processed automatically through your Payment Service Provider (PSP). In cases where payments are handled manually—such as invoice-based payments or offline transfers—you can use circuly’s “Mark as Settled” feature to keep your payment records accurate and transparent.

    This article explains when to use the feature, what it does, and how to mark a payment as settled from two places within the circuly Hub.

    Feature Overview

    The Mark as Settled feature allows a circuly user to manually mark a payment or invoice as paid, even if the transaction occurred outside the circuly system (e.g., bank transfer, invoice payment).

    Key points:

    • It applies to any payment that hasn’t been automatically charged yet.
    • It’s especially useful for companies that manage some payments outside of circuly.
    • Once marked as settled, the payment is assigned a "Paid" status in the system.
    • No actual charge is triggered—the feature is purely administrative for record-keeping.

    For payments processed by circuly through your PSP, there's usually no need to mark them manually. These are automatically settled once charged.

    Step-by-Step Guide

    You can mark a payment as settled from two places in the circuly Hub: the Subscriptions tab and the Recurring Payments tab.

    Option 1: From the Subscriptions Tab

    • Go to the Subscriptions tab in the circuly Hub.
    • From the Subscription List, select the subscription that includes the payment you want to mark as settled.
    • Scroll down to the Recurring Payments section.
    • Click the three dots next to the relevant payment to open the action menu.
    • Select Mark as Settled.
    • Confirm your action by clicking Mark as settled.

    Option 2: From the Recurring Payments Tab

    • Navigate to the Recurring Payments tab in the circuly Hub.
    • Search for and locate the specific payment you want to mark as settled.
    • Click the three dots next to the payment.
    • Select Mark as Settled from the dropdown.
    • Confirm by clicking the MARK AS SETTLED button.

    What Happens Next

    Once confirmed:

    • The payment is marked as Paid in the circuly Hub.
    • No actual transaction is initiated—this is for tracking purposes only.
    • Your payment records stay clean, even for offline or manually settled invoices.
    Read more
    Returns
    Mark as returned

    Return Handling: Mark as Returned

    Mark, as returned, is commonly used to indicate that the subscription that was in the "pending return" state can be processed because the product has been returned. Mark, as returned, changes the status of the subscription to "ended".

    Introduction

    The "Mark as Returned" function in circuly is used to finalise the return process when a product physically arrives back in your warehouse. It changes the subscription status from "Pending return" to "Ended", indicating that the customer has fulfilled their return obligation and the subscription is complete.

    This feature can also be used in edge cases where the subscription is marked as pending return but the product was never delivered, and you want to close the subscription manually.

    Tip: Automate the process via API

    You can automate the return handling process using the circuly Customer API.

    When to use “Mark as returned”

    Use this option when:

    • The customer has sent the product back, and it has arrived in your warehouse.
    • The product was never delivered, but the subscription was set to pending return and now needs to be closed.

    In both cases, marking the product as returned updates the subscription status to "Ended", which signals that the subscription is complete and the product is no longer in circulation.

    Step-by-step guide: How to mark a product as returned

    1. Go to the Returns tab in your circuly Hub.
    2. Search for the product by its serial number in the Return List.
    3. Click Handle to open the return handling window.
    4. Click Mark as returned.

    Once confirmed, you’ll see a message that the subscription has been ended.

    Repair handling (if applicable)

    If you’ve set up the Repair workflow in circuly:

    • Go to the Repairs tab after marking the return.
    • Complete the repair process based on your configured repair questions and flow.

    Delete future recurring payments checkbox

    The “Delete future recurring payments” checkbox determines whether upcoming charges should be canceled when processing a return.

    This checkbox appears in two places:

    1. When marking a subscription as pending return
    2. When handling a return

    How it behaves:

    • When you manually set a subscription to pending return, you decide whether to check the box.
      • Check it if you want to stop billing while the customer returns the product.
      • Leave it unchecked if you want to keep billing to encourage timely returns.
    • When you handle a return and mark the product as returned, circuly automatically checks the box—assuming the product is already back and recurring payments should stop.

    If the subscription ends automatically (e.g. due to no auto-renew), and no manual interaction occurs, circuly will continue charging unless you’ve configured it otherwise.

    Additional setting: Update stock on SKU level

    You can control how returned products affect your stock levels.

    • To update stock at the SKU level (useful if multiple durations exist for one variant), enable this setting:

    Go to Settings > Subscriptions > Return subscription > Enable Update stock on SKU level after return

    • If disabled, stock is updated at the variant level.

    If you do not want circuly to update your stock at all, please contact us via the Service Desk.

    Read more
    Products
    Bundle collection

    Bundle Collection

    As the name defines, a "bundle" is a collection of products that are grouped together. In subscription terms, a bundle is a collection of products that are categorised under one subscription.

    Introduction

    A "bundle" refers to a collection of products grouped together to offer a comprehensive service or package. In subscription terms, a bundle enables you to categorise multiple products under a single subscription.


    Examples

    1. Bike + lock + helmet + basket

    2. Baby Stroller + stroller rain cover + cup holder

    3. Motor + spring cradle + attachment

    Feature Overview

    Circuly’s Bundle Collection Feature simplifies the process of managing and presenting bundles. While each product in a bundle can have its unique serial number for internal tracking purposes, customers experience the bundle as a single, unified subscription.

    With this feature, you can:

    • Track individual products: Manage inventory effectively by assigning unique identifiers to each product in a bundle.
    • Simplify customer experience: Present the bundle as a single subscription, ensuring customers see a cohesive service without needing to manage individual products.

    Note: Bundles are predefined, meaning customers cannot swap individual items in a bundle. They will only see and manage the bundle as one complete subscription.

    Good to know

    1. Your products and product variants are always set up in your individual shopsystem. circuly only takes over the product information (product name, price etc.) from your shopsystem via a product sync and displays the information under the Product tab in the circuly Hub. 

    2. The product prices are also taken from the shop system, and the bundle collection feature makes use of the default shop system prices (as set up by you). However, it is also possible to have the same price for the entire bundle collection, irrespective of the product selected. If you would like to have this logic, kindly get in touch with us via service desk.

    3. The possibility to select products from a predefined collection is only available for new orders. If you want to make the feature available for your old subscriptions, get in touch with circuly via service desk.

    Step-by-step setup guide

    • In your circuly Hub > Navigate to the Products tab > Then switch to the Bundles tab.

    • Click on the +Bundle button.
    • In the Create bundle collection window > Start by adding a Title and a Description.

    • Use the Select the bundle components dropdown to choose up to 10 products for the bundle.
    Note: Each bundle can only have a maximum of 10 items.
    • Select the desired variants for your chosen products.
    • Click on the Submit button to finalise your bundle.

    You can view all your created bundles under the Bundles tab, where they can be easily edited by clicking the pencil icon.

    Read more
    Orders
    Mark as fulfilled

    Mark as Fulfilled

    Detailed info about the Mark as fulfilled function.

    Introduction

    When a customer completes checkout, an order is created both in your shop system and in the circuly Operations Backend. But to begin charging recurring payments, a subscription needs to be created for that order.

    circuly provides multiple ways to create subscriptions—both manually and automatically. This article focuses on using the “Mark as Fulfilled” function to trigger automated subscription creation.

    Automate with the API

    You can automate this process via our Customer API.

    How “Mark as Fulfilled” Works

    The Mark as Fulfilled action is generally used to indicate that an order item has been shipped or delivered. In circuly, this action can also be configured to automatically start a subscription.

    What Happens When You Mark an Order as Fulfilled:

    • The order status changes from Open to Fulfilled.
    • The Order Fulfilment Email is triggered (if the template is set up and activated).
    • The customer's order status in the Self-Service Portal updates accordingly.
    • If enabled, the subscription is automatically created and activated.

    Enabling Auto-Activation

    To automate subscription creation when fulfilling an order, turn on the relevant setting in the backend.

    How to Enable:

    1. Go to Settings > Subscriptions.
    2. Navigate to Create Subscription.
    3. Enable the switch for Auto activate subscriptions.

    Important: Define the offset for the subscription start using the Auto activate offset setting. This value will be used to calculate when the subscription should begin.

    Additional Fulfilment Setting

    If you want every order to be automatically marked as fulfilled once all subscriptions are created, enable:

    • Fulfil order when all subscriptions are created

    This setting ensures the order status changes to fulfilled without manual action once the required subscriptions are in place.

    Setup Checklist

    Before using the fulfilment function to trigger subscriptions, ensure the following:

    • Your email template for Order Fulfilment is created and activated.
    • The Auto activate subscriptions setting is enabled if you want subscriptions to start automatically.
    • The offset value is set correctly in the subscription settings.
    • If automating via API, your integration is configured correctly.

    For an overview of all available ways to create a subscription, check out the article:
    All Different Ways to Start a Subscription in the circuly Operations Backend


    Read more
    Products
    Extension price

    Extension Price

    Learn more about extension prices.

    Introduction

    The extension price determines the subscription fee that applies once the minimum subscription duration is over and the subscription continues through auto-renewal. This price ensures that your business charges customers correctly beyond the initial contract period.

    The extension price is especially important for:

    • Prepaid subscriptions, where the full amount is charged upfront for a set period, and a monthly price needs to be defined for the post-prepaid phase.
    • Regular subscriptions, where you may want to apply a different rate after the minimum term is completed.

    Feature overview

    The extension price is configured per product variant in the circuly Hub It is used when:

    • A subscription continues after the minimum commitment.
    • A prepaid subscription transitions into a regular monthly billing model.

    Good to know

    • The extension price only becomes relevant after the minimum contract period is completed.
    • The subscription will continue at this price unless manually changed or cancelled.
    • The extension price appears in the subscription creation screen, but it can only be edited via the Products > Variants section.

    Step-by-step guide: Set or edit extension price

    • Go to the Products tab in your circuly Hub.
    • Navigate to the Variants section.
    • Select the variants you want to update by checking the boxes next to them.
    • Click the Edit extension price button.
    • In the input field, enter the monthly extension price that should apply after auto-renewal.
    • Click Save changes.

    Once set, this price will be automatically applied when the subscription enters its extension phase.

    FAQ

    Q: Can I leave the extension price blank?
    A: No. It’s strongly recommended to define an extension price to avoid disruptions or errors in billing after the minimum subscription period.

    Q: Does the extension price override the initial monthly price?
    A: Only after the minimum contract period ends. The initial monthly or upfront price remains in effect until then.

    Q: Can the extension price be changed later?
    A: Yes. You can return to the Variants list at any time and update the extension price.

    Read more
    Invoices
    Charge Invoice

    Charge Invoice

    Manually charge an invoice from the invoice tab when a payment fails.

    Introduction

    When a payment fails in circuly, you can retry the payment manually or automate the retrial process. However, even after retrying, the payment may still fail. At this point, it’s recommended to reach out to your customer to resolve the issue. Once the customer confirms that they’ve resolved the problem on their end, you can use the Charge Invoice feature to attempt the payment again.

    Feature Overview

    Charge invoice is a feature available in the circuly Hub that enables you to manually charge an invoice with the "failed" payment status. An invoice has the "failed" payment status if a payment attempt was made but failed.

    Step-by-step guide

    • In your circuly Hub > Go to the Invoices tab.
    • Search and click on the invoice you want to charge.
    Tip: You can user the filters options to filter the Invoice list and only display payment that have the "failed" payment status".

    • Click on the invoice > In the Invoice overview window > Click on the Charge invoice button.

    • Then click on the Submit button.

    What happens next

    The circuly system attempts to charge the invoice.

    • If successful, an email is sent to the customer to inform them about the charge.
    • If unsuccessful, you'll see a notification that the charge was unsuccessful. At this point you can either get in touch with your customer or hand over the invoice for debt collection.
    Read more
    Subscriptions
    Subscription billing frequency

    Change Billing Frequency

    Swap between billing frequencies.

    Introduction

    Billing frequency refers to the interval at which your business charges customers for a product or service, defining how often payments are collected. In circuly, you can adjust the billing frequency for both consumer durable and consumable products. However, the process for modifying billing frequency differs based on the product type. This article focuses specifically on changing the billing frequency for consumable products.

    Good to know

    The option to change the subscription frequency is only available for consumable subscriptions and will be greyed out for all other subscription types. To change the billing frequency for consumer durable products, follow this guide on changing subscription attributes.

    Step-by-step guide

    • In your circuly Hub > Go to the Subscriptions tab.
    • Click on the three dots to displayed the menu options > Click on change billing frequency.
    • In the Change subscription frequency window select the new Time-unit (weekly, monthly, quarterly) and and a numeric value under interval.
    • Confirm your selection by reviewing the output under Frequency and click on the Confirm button to finalise your change.

    Read more
    Products
    Prepaid Subscriptions

    Explained: Prepaid Subscriptions

    As the title suggests Prepaid Subscriptions are subscription orders where your customer agrees to pay the recurring fees in advance and upfront.

    Introduction

    Prepaid Subscriptions are subscription orders where the customer pays the full subscription fee upfront instead of in monthly intervals. This model is beneficial for both you and your customer — it supports predictable cash flow on your end and often comes with incentives (like discounts) for customers who commit to paying in advance.

    Feature overview

    With prepaid subscriptions:

    • Customers pay for the subscription period upfront.
    • No recurring payments are scheduled until the initial prepaid period ends.
    • After the prepaid period, the subscription can auto-renew monthly using the defined extension price.
    • You can distinguish between prepaid and monthly variants through clear naming.

    Technical setup

    Setting up prepaid subscriptions

    Prepaid subscriptions are set up in your shop system by creating a variant with an upfront payment plan. During the variant creation, define whether the payment should be charged monthly or in full at once.

    Configuring extension/renewal pricing

    To continue charging monthly after the prepaid period:

    1. Go to Products > Variants in the circuly Hub.
    2. Select the variants for which you want to define an extension price.
    3. Click on Edit extension price.
    4. Enter the monthly extension price that should apply after the prepaid term ends.

    This price will be used when the auto-renewal activates after the prepaid term.

    Prepaid subscriptions in the circuly Hub

    • The variant title should indicate whether it's an upfront or monthly plan.
    • No recurring payments are scheduled until the auto-renew starts.
    • The extension price is visible during subscription creation but can only be edited via the Product List > Edit Variant screen.
    Read more
    Orders
    Edit order

    Edit an order

    Edit order is a feature available in the circuly Hub that you can use to edit orders by adding, changing or deleting order items that do not have a subscription attached to it.

    Introduction

    In circuly, you can edit orders—such as changing products, addresses, or prices—before a subscription has been created. Once a subscription is attached to an order, the order becomes locked and can no longer be modified. This edit functionality is especially useful when handling last-minute customer requests or internal adjustments, such as correcting details or switching products before finalising the subscription.

    Feature Overview

    The Edit Order feature allows you to update key components of an existing order directly from the circuly Hub. When you select “Edit Order,” circuly creates a draft copy of the original order, preserving all items, customer details, and payment info. You can then adjust the draft as needed and confirm it as a new, active order.

    Key things you can do during editing:

    • Add, delete, or modify order items
    • Update shipping or billing addresses
    • Send the updated order directly to the customer as a pre-filled checkout link or simply confirm it internally
    • Choose whether customer confirmation is required or not
    • Trigger new payment collection if needed

    Once confirmed, the edited order is treated as a new order in both circuly and your shop system. The original order must be cancelled and, if applicable, refunded manually.

    Step-by-Step Guide

    Editing an Order

    • Log into your circuly Hub.
    • Navigate to the Orders tab and select the order you wish to edit.
    • Click on the three dots in the top-right corner and select Edit Order.
    • circuly will create a draft version of the order.
    • From here, you can:
      • Click Add to include new products or the cross icon to remove products (note: this doesn't trigger an automatic refund).
      • Click Edit to modify item details such as product variant, pricing, or quantity.
      • Update shipping and billing address fields.
    • Choose how the updated order should be processed:
      • Send to customer for confirmation (toggle on): Sends a pre-filled checkout link for approval.
      • Process internally (toggle off): The order is confirmed without customer involvement, using their original payment method.
    • Click Create Order to finalize the updated order.

    Customer journey

    If the updated order is sent to the customer:

    • The customer receives a new checkout link.
    • They open the link, review the updated order, and re-enter their payment details.
    • Once checkout is complete, the draft becomes a finalized order.

    If the order is processed internally:

    • The customer does not need to take any action.
    • The payment method from the original order is reused.
    • The customer receives an updated order confirmation email.

    In both cases, the updated order becomes active, and the original order should be cancelled and refunded manually if needed.

    What happens next

    Cancelling and refund the original order

    You need to cancel (and refund) the old order manually with a suitable message so that your customer understands why he / she is charged (again).

    To do so open the order > click on the three dots at the top right > select cancel order to do so and select the checkbox "full refund". If you only want to partially refund an order, please learn more about refunding an order here.

    Charging the initial payment of the updated order

    Once the updated order is created, you have to charge the initial payment manually.

    To charge the initial payment open up the updated order > click on the three dots at the top right > select Charge Initial Payment.

    When charging the initial payment, you can add a custom message to explain why your customer is charged. Make sure to click on charge xx,xx so that the payment will be initiated through your payment service provider. The customer will then also automatically receive an invoice.

    How to identify edited orders?

    You can identify edited orders easily since they marked as Origin: Clone. You can always find the original order by copy / pasting the parent ID in the order search (for example if you want to cancel and refund the original order).

    You will also find this information in the order list:

    Read more
    Email Templates
    Shopify order name

    Replace the Order ID Generated by Circuly With the Shopify Order ID

    The circuly generated order ID can be replaced with the Shopify order name. Learn more.

    Introduction

    By default, circuly generates its own Order ID when a customer completes checkout. However, if you’re using Shopify as your shop system, each order also has a separate Shopify Order Name (often referred to as Shopify’s order ID).

    To avoid confusion—especially in email communication or when syncing data across platforms—you can choose to replace circuly’s Order ID with the Shopify Order Name.

    Why replace the circuly Order ID?

    There are two common reasons to use the Shopify Order Name instead of the circuly-generated Order ID:

    1. Cross-referencing in communication
      If you're referencing the Order ID in emails sent via Shopify or other tools (outside circuly), using the same value helps ensure consistency.
    2. Avoiding confusion for customers
      When customers see different IDs across emails and portals, it may lead to unnecessary support requests. Replacing the circuly Order ID with Shopify’s Order Name ensures your customers only see one consistent identifier.

    Technical background: Order ID vs order name

    • circuly Order ID
      Automatically generated when an order is placed via your circuly white-label checkout. Used internally and displayed in circuly’s email templates and Self-Service Portal.
    • Shopify Order Name
      Generated by Shopify and assigned to every new order. This is what customers typically see in Shopify-based communications.

    Where the Order ID is used in circuly

    The circuly-generated Order ID appears in:

    • The Order confirmation email
    • The Customer self-service portal

    If not changed, this is the value customers will see by default.

    When should you replace Iit?

    You should consider replacing circuly’s Order ID with Shopify’s Order Name if:

    • You send additional emails to customers outside of circuly’s templates (e.g., directly via Shopify)
    • You want consistent identifiers across your shop system, email templates, and Self-Service Portal
    • You want to reduce confusion caused by customers seeing two different order numbers

    How to replace the Order ID in circuly

    To use the Shopify Order Name instead of circuly’s Order ID:

    1. Go to your Email Templates in the circuly Hub.
    2. For each relevant email (e.g. Order Confirmation), replace the variable {{order_ID}} with the Shopify order name variable.
    3. Save your changes.

    Once updated, customers will see the Shopify Order Name in their emails and in the Self-Service Portal.

    Read more
    Account & Setup
    Email Templates
    Subscription is almost over

    Email and Setting: Subscription Is Almost Over

    In this article, we’ll explain the process of subscription renewal, reminder emails and the associated settings in detail.

    Introduction

    Subscription fatigue poses a growing challenge for consumers juggling multiple recurring payments and contract renewals. While auto-renewals are a great sign of retention, they can also lead to frustration—especially when customers forget about upcoming charges.

    circuly helps you tackle this issue by enabling you to send automated reminder emails before a subscription ends and giving you full control over whether a subscription should renew automatically. In this article, we’ll explain how to set up reminder emails, configure auto-renewals, and make your subscription experience more transparent and customer-friendly.

    Feature Overview

    circuly enables you to:

    • Send automated reminder emails before a subscription ends, giving customers time to decide whether to continue or cancel.
    • Renew subscriptions automatically if the customer doesn’t cancel in time.
    • Customise settings to handle edge cases, such as short-term subscriptions or auto-renewed contracts.

    The result: A smoother customer experience and fewer support tickets related to surprise charges.

    Step-by-step setup guide

    Sending reminder emails before subscription ends

    Step 1: Navigate to Email Settings

    • Go to your Circuly Hub
    • Click on Settings > Emails > Subscription Information

    Step 2: Enable Reminder Email Option

    • Toggle the switch "Subscription is almost over when auto renew is off" to ON.

    Step 3: Define Timing for the Reminder Email

    • Enter a numeric value in "Days calculation before ending"
      • Example: Enter 14 to send the reminder email 14 days before the subscription ends.

    Step 4: Understand When the Email Triggers

    • The email will only be sent if the auto-renew switch is inactive for that subscription.
    • Auto-renew switch is inactive if:
      • The global Auto-renew subscriptions setting is OFF.
      • The subscription was created before auto-renew was enabled.

    Enabling auto-renewal for subscriptions

    Step 1: Navigate to Subscription Settings

    • Go to your Circuly Hub
    • Click on Settings > Subscription > Auto-renew subscriptions

    Step 2: Enable Auto-Renew

    • Toggle the switch "Auto-renew subscriptions" to ON.
    • This enables auto-renew for all newly created subscriptions.

    Step 3: Manually Enable Auto-Renew for Specific Subscriptions (if needed)

    • Go to the Subscription Overview for the desired subscription
    • Manually activate the auto-renew switch

    📝 Note: Simply activating the switch manually does not renew the subscription unless the global auto-renew setting is enabled.

    Optional Settings: Enhance Your Reminder StrategyI

    If you'd like to send reminder emails in edge cases, toggle these additional settings in Settings > Emails > Subscription Information:

    • "Subscription is almost over" for one-month subscriptions: enabling this switch will send the subscription is almost over when subscription duration is less than or equal to one month.

      Use case: When you do not have a minimum subscription duration and all your subscriptions are for a month. The subscriptions are extended on a monthly basis. If you enable this switch then the subscription is almost over email will be sent to the customer every month.
    • "Subscription is almost over" for auto-renewed subscriptions: typically when subscription have been auto-renewed there is no need to send the subscription is almost over email to the customer. Additionally when subscriptions are auto-renewed due to the auto-renew subscription setting, the auto-renew switch in the subscription overview window is made active. The active state of the auto-renew switch prevents the “subscription is almost over” email from being sent. 

      However enabling this setting will bypass this rule and send the email even if subscriptions have been auto-renewed and the auto-renew switch in the subscription overview window is active. 
    • "Subscription is almost over" email also if auto-renew is active: as explained above, the subscription is almost over email is not sent to the customer i the auto-renew button switch is active. However you can still decide to send the email and by pass this rule.

    These options help you stay flexible and customer-friendly across different use cases.

    By combining automated renewal reminders with clear subscription policies, circuly helps you reduce subscription fatigue, avoid customer frustration, and strengthen long-term customer relationships. Use these step-by-step guides to customise your renewal flow and keep your customers informed and satisfied.

    Read more
    Account & Setup
    Email provider set up

    Set up Your Email Provider

    There are two options available to set up your email provider. Learn more.

    Introduction

    circuly gives you the flexibility to decide how your system-generated emails are sent to your customers. You can either use your own SMTP server or take advantage of circuly’s built-in Mailgun SMTP integration. This guide explains both options and outlines all the necessary steps for setup.

    Feature Overview

    You can configure your outgoing email setup in two ways:

    • Option 1: Use your own SMTP server (e.g. Gmail, Outlook, or another email service)
    • Option 2: Use Circuly’s pre-integrated SMTP server via Mailgun

    Each approach ensures that all automated customer communication (order confirmations, subscription updates, etc.) is delivered reliably under your brand identity.

    Option 1: Using Your Own SMTP Server

    1. Navigate to: Settings > Setup and Design > Email Server Settings
    2. Enter your SMTP details:
      • Host
      • Username
      • Password

    This method gives you full control over email authentication and deliverability using your company’s own email infrastructure.

    Option 2: Using Circuly’s Mailgun SMTP Server

    This is a fully managed option handled by Circuly, ensuring professional-grade deliverability while still allowing emails to appear as if sent from your domain.

    Step 1: Set Sender and Reply-To Emails

    • Navigate to: Settings > Emails > General
    • Enter:
      • Sender Email Address (e.g. service@yourcompany.com)
      • Reply-to Email Address

    Circuly will use these to set up your email identity in Mailgun.

    Even though emails are routed via Circuly's Mailgun SMTP server, your customers will only see your company's branded email addresses.

    Step 2: DNS Configuration

    Circuly will generate TXT and MX DNS records that you must add to your domain provider’s DNS settings.

    Explanation of DNS Records:

    • MX (Mail Exchange): Directs incoming emails to the right mail servers.
    • TXT (Text Records): Verifies domain ownership and is used for SPF, DKIM, and DMARC to prevent spoofing.

    ⚠️ Verifying your MX records is highly recommended to prevent email delivery failures and improve authentication reliability.

    Step 3: SMTP Credentials Setup

    Circuly’s technical team will:

    • Create SMTP credentials in Mailgun
    • Add them to the Email Server Settings in your Circuly Hub

    These credentials ensure that emails are securely sent via Mailgun with the correct authentication.

    Step 4: Update Your Domain DNS Records

    You will receive DNS entries (TXT & MX) from Circuly. Here’s how to add them:

    1. Log into your DNS hosting provider (e.g. GoDaddy, IONOS, Cloudflare).
    2. Navigate to your DNS management area.
    3. Add or update DNS records as provided.
    4. Save changes.

    DNS propagation may take anywhere from a few minutes to several hours to reflect globally.

    Conclusion
    Whether you choose to manage your email delivery through your own SMTP provider or use Circuly’s Mailgun setup, both options ensure reliable, branded communication with your customers. For most businesses, the Mailgun integration offers a hands-off, secure, and scalable solution. If you need help or would like Circuly to configure this for you, simply contact our service desk.

    Read more
    Account & Setup
    Customer Self Service
    Cancellation reasons

    Adding Cancellation Reasons

    When your customer makes a cancellation request from the self-service portal, they have to select the type of cancellation and reason for making the cancellation request.

    Introduction

    If you allow your customers to make cancellation requests from the Customer Self-Service Portal, they will be required to select a reason for their cancellation during the process. Collecting cancellation reasons allows you to gain valuable insights, make informed decisions, and improve your offerings. It also demonstrates that you value customer feedback and are committed to enhancing their experience, ultimately fostering stronger customer relationships.

    The importance of collecting cancellation reasons

    Some of the reasons to consider adding cancellation reasons to your cancellation process are:

    1. Feedback and Improvement: By providing a cancellation reason, customers can offer valuable feedback to the business about why they decided to cancel the product or service. This feedback can help the business understand customer preferences, identify common issues, and make necessary improvements to their offerings.
    2. Problem Resolution: Sometimes customers might be cancelling a product due to a specific problem or issue they encountered. By selecting a cancellation reason, the business can proactively address these issues and work towards resolving them to prevent future cancellations.
    3. Personalisation and Retention: If a business understands why customers are cancelling, they may be able to offer targeted solutions or incentives to encourage customers to reconsider the cancellation. For instance, if the cancellation reason is related to price, the business might offer a discount or a better pricing plan. This can potentially lead to retention rather than loss of a customer.
    4. Data Analysis: Collecting cancellation reasons allows businesses to gather data and perform analysis to identify patterns or trends in cancellations. This can provide insights into broader issues that might be affecting multiple customers or specific areas that need improvement.
    5. Product and Service Evaluation: The cancellation reasons can also be used to evaluate the performance of different products or services. If a particular product consistently receives certain cancellation reasons, it might indicate that there's something about that product that needs attention.
    6. Customer Experience Enhancement: Understanding cancellation reasons can contribute to an overall improvement in the customer experience. Businesses can use this feedback to refine their processes, enhance customer support, and streamline their offerings.
    7. Reporting and Accountability: Cancellation reasons can be used for reporting purposes, helping businesses track the reasons for cancellations over time. This can be useful for managerial decisions and accountability within the company.

    Feature overview

    When using the circuly's Self-Service Portal to make cancellations, the process includes selecting a "type of cancellation" and providing a cancellation reason. The "type of cancellation" is standardised and consists of two fixed options: normal and extraordinary. However, the cancellation reasons within these categories are fully customisable. You can define and tailor these reasons to suit your business needs, directly in your settings.

    - Normal cancellation

    The process of terminating a subscription within the standard terms and conditions set forth by the service provider. 

    - Extraordinary cancellation

    Extraordinary cancellation refers to the termination of a subscription under exceptional circumstances that deviate from the regular terms and conditions. 

    - Customisable cancellation reasons

    The cancellation reasons that you as a circuly user add under normal and extraordinary cancellation.

    - Language & translation

    While adding cancellation reasons, you also have the option to enter translated versions of the reasons. The available language options in the "Add Cancellation Reason" window are based on your Allowed Language settings. Only the languages selected in the Allowed Language dropdown will be available for defining the cancellation reasons and its translation.

    Step-by-step setup guide

    To add cancellation reasons, follow these steps:

    • Go to Settings > Subscription > Scroll down to Cancellation reasons.

    • Click on the “+” icon under Normal Cancellations or Extraordinary Cancellations to begin adding cancellation reasons for the selected cancellation type.
    • The Name input field is for internal use only, helping your team distinguish between different cancellation reasons. The text entered in the Translation input field is what will be displayed to customers in the Self-Service Portal.

    • After adding the name and its translation, click the Submit button.
    • Once you’ve completed adding all the cancellation reasons, click Save Changes to finalize your updates.
    Read more
    Account & Setup
    Products
    Reserve serial numbers

    Reserving Assets with circuly

    Asset status reserve means that the asset has already been assigned to an order item and when the order item is converted into a subscription, the asset status will change from reserved to rented out.

    Introduction

    Reserving a serial number (asset) means that a specific product unit is pre-assigned to an order and will automatically be linked to the subscription once it's created. This ensures better inventory control, traceability, and operational efficiency.

    Enabling this feature in circuly allows serial numbers to be automatically reserved—removing the need for manual assignment during subscription creation.

    Why reserving serial numbers matters

    Here are a few key reasons to reserve serial numbers in circuly:

    1. Inventory management
    Reserving a serial number ensures the specific product required for the order is set aside and not mistakenly allocated to another customer. This helps maintain accurate inventory levels.

    2. Product traceability
    With unique serial numbers assigned to each order, you gain clear traceability. If there’s ever an issue or product recall, you can easily identify and track the affected items.

    3. Warranty & support
    A reserved serial number simplifies support. When a customer needs assistance, your team can quickly retrieve relevant order and product details using the serial number.

    Overall, it contributes to operational accuracy, faster service, and better organisation throughout your order and subscription processes.

    How to enable serial number reservation in circuly

    To enable automatic reservation of serial numbers:

    1. Go to your circuly Hub
    2. Navigate to:
      Settings > Checkout > End checkout
    3. Enable the setting “Reserve serial number”

    Once this switch is enabled, circuly will:

    • Automatically reserve a serial number from the Asset List
    • Assign the reserved asset to the order item when creating a subscription
    • Update the asset’s status from “in stock” to “reserved”
    • Once a subscription is created, change the asset status from “reserved” to “rented out”

    When you create a subscription, the serial number will already be pre-assigned to the order item—saving you an extra step.

    How to add assets to circuly

    To use the serial number reservation feature, your assets need to be added to circuly and marked as “in stock”.

    Steps to Import Assets:

    1. Download and fill out the asset import template.
    2. Make sure each asset has the correct status set to “in stock”—only assets with this status can be reserved.
    3. Go to the Assets tab in your circuly Hub.
    4. Click the CSV icon to upload your asset file.

    Once imported, circuly will use these assets to fulfill orders with automatic serial number reservation.

    Read more
    Products
    Account & Setup

    Everything About Exchanging and Swapping Products

    The set up and the process of changing products in a subscription also depend on the reason why the product needs to be changed. Learn more.

    There can be various reasons for swapping subscription products, such as product breakage, product loss, upgrades, downgrades or simply because of the nature of your business. 

    The set up and the process of changing products in a subscription also depends on the reason why the product needs to be changed. 

    Use case based set up overview

    The set up process based on the use case for exchanging a product. 

    • Use case 1: Nature of your business
      • Enable product swaps as a built-in part of your subscription model. Choose between:
        • Exchange Groups: Customers select from a predefined collection.
        • Free Selection: Customers can choose any product from your full catalog.
    • Use case 2: Swapping lost products
    • Use case 3: Swapping broken products.

    Use case 1: Nature of your business

    If you have a business model that allows your customers to exchange products from a predefined group, continue reading this article about Exchange Groups

    What are exchange groups?

    When you want your customers to select a product for exchanging from a predefined group, you can set up exchange groups in the circuly Operations Backend. Typical use cases include an exchange group for consumable subscription products such as protein powder, where the customer can change between the different flavours, an exchange group for kids bike, where the customer can select a bigger size, or an exchange group for toys, where your customer can swap between toys.

    Use case 2: Swapping lost products.

    Since lost products are not expected to come back, the swap process for such products looks slightly different than the regular swap process. 

    The reason why Lost product swaps are treated differently from other product swaps is because Lost products are not expected to come back. Speaking in technical terms, Lost products will not have a Pending Return status. This essentially means that normally you would expect a product to come back and if the customer doesn't send the product back, you can keep billing them. But in case of Lost products there is no possibility to get the product back hence no reason to bill the customers for two subscriptions. 

    In order to utilise the swap feature within the circuly Operations Backend, it is important to go through the following steps:

    Step 1: Review and configure the swap settings.

    Step 2: Add swap reasons. Swap reasons are used for internal communication. 

    Step 3: Learn how to process a swap request for missing products

    Use case 3: Swapping broken products.

    Make sure you’ve configured the swap settings and added the swapping reasons

    Continue reading this article to learn more about swapping broken products

    Read more
    Account & Setup
    Delete recurring payments setting

    Setting - Delete Recurring Payments

    Automate the operations related to cancellation requests from the self-service portal. Learn more.

    As the name suggests, the Delete recurring payments setting can be used if you want to delete future recurring charges after a subscription status is set to pending return via a cancellation request made from the Self-Service Portal. The recurring payments are deleted until the subscription is reactivated.

    User actions in the circuly Operations Backend that set the subscription status as pending return do not interact with the Delete recurring payments setting.

    Important: The payments are deleted irrespective of whether or not you’ve received the product back from the customer.

    Are the recurring payments deleted permanently?

    No, the recurring payments are not deleted permanently. In case the customer does not return the product, the subscription can be reactivated and the recurring payments will continue to be charged.

    When this setting deletes the recurring payments, you can ideally avoid a situation in which a customer is charged for an additional month while the customer is in the process of returning the product.

    To access the setting > Go to Settings > Customer Login > CANCEL OPTIONS > Delete recurring payments.

    Read more
    Account & Setup
    Customer Self Service
    Pickup date calendar

    Setting: Pickup Date

    If you offer pickup services for your products, you can display a pickup calendar in the cancellation window in the Self-Service Portal. Learn more.

    If you offer pickup services for your products, you can enhance the customer cancellation experience by allowing them to select a preferred pickup date via a calendar. This feature is available directly within the cancellation window of the Self-Service Portal.

    Introduction

    A smooth and flexible return experience is key to customer satisfaction, especially in a subscription-based business. Allowing customers to schedule a product pickup date makes the return process more convenient for them and more predictable for you.

    Feature Overview

    The pickup calendar is an optional feature in the circuly Self-Service Portal. It functions similarly to the delivery date picker used in the checkout process. If enabled, the calendar appears during the cancellation process, allowing the customer to choose a specific pickup date for their subscription product.

    Here’s how the pickup calendar is displayed in the self-service portal. 

    What it Does:

    • Displays a pickup calendar during the cancellation flow.
    • Allows customers to select a preferred date for product pickup.
    • Optionally makes the selection of a pickup date mandatory.

    Process Overview

    To enable the pickup calendar, you need to access your circuly settings and activate the relevant switches under the cancellation options.

    There are two main configurations:

    • Enable pickup date selection.
    • (Optional) Require the customer to select a pickup date to proceed.

    Step-by-Step Setup Guide

    Step 1: Enable Pickup Date Selection

    • Log in to your circuly Operations Backend.
    • Go to Settings > Customer Login > CANCEL OPTIONS.
    • Find the Pickup Date setting.
    • Enable the switch for Pickup date.

    Step 2: Make Pickup Date Mandatory (Optional)

    • After enabling the pickup date setting, an additional switch appears.
    • Enable the switch for Require pickup date to make date selection mandatory during cancellation.

    Final Note

    Activating the pickup calendar improves your logistics planning and gives customers more control over their return process. If your business offers pickups, enabling this feature is a simple way to provide a more user-friendly and efficient experience.

    Read more
    Customer Self Service
    Product buyout

    Self-Service Portal - Buy Subscription Products

    If your customers want to buyout their subscription products, they can do so in the self-service portal.

    If your customers decide they want to keep a product they’ve been renting, circuly makes it easy for them to buy out the subscription directly from the Self-Service Portal.

    Introduction

    Whether it’s a bike, baby product, or another consumer durable, customers may grow attached to the product during their subscription. circuly allows them to seamlessly transition from renting to owning by initiating a buyout directly in the Self-Service Portal.

    Feature Overview

    The buyout feature lets customers purchase their currently subscribed product. The system automatically calculates the buyout price based on the product’s retail price and subtracts previous payments (e.g., the initial fee and monthly subscription payments).

    Key highlights:

    • Customers can initiate the buyout themselves from their subscription view.
    • The system calculates and displays the adjusted buyout price.
    • The transaction is processed using the customer's stored payment method.
    • The subscription status and invoice handling is updated accordingly.

    Note: The buyout option may not be visible if a minimum contract duration hasn't been reached yet.

    Customer Instructions

    You can provide these step-by-step instructions to your customers:

    • Navigate to the Subscription
      • Log in to your customer account and go to the active subscription.
      • Click on the dropdown menu next to the subscription.
    • Initiate the Buyout
      • Select the "Buy product" option.
      • A window will slide in from the right showing the product, subscription details, and calculated buyout price.

    • Understand the Pricing
      • The window shows both the Retail Price and the Buyout Price, which deducts any previous payments (initial fee and subscription payments).
      • If your previous payments exceed the retail value, a symbolic buyout price of €1 will be displayed with an explanation.

    • Confirm the Payment
      • Click CONFIRM AND PAY.
      • A confirmation box will appear, and the subscription status changes to Pending Buyout until the payment is completed.

    • What Happens Next
      • All other dropdown menu options will disappear except for Report an Issue, to avoid duplicate buyout requests.

    • You will receive an invoice as confirmation.
    • An email titled "Buyout Order Confirmation" will be sent.
    • A one-time payment is triggered based on the Buyout Price, using your stored payment method.
    • Upon successful payment, you’ll receive another email titled "Payment was successful" with an invoice.
    • The subscription status will update from Pending Buyout to Bought Out.

    Summary

    The buyout process in circuly is simple, transparent, and efficient—ensuring that customers who love your product can keep it without hassle. The real-time status updates, automated payment handling, and clear communication ensure a seamless transition from subscription to ownership.

    Read more
    Customer Self Service
    Change products

    Self-Service Portal - Change Product

    Your customers can change their products in the self-service portal from a predefined group. Learn more

    Introduction

    circuly gives your customers the flexibility to change their subscribed product directly from the Self-Service Portal. This article explains how the product change experience looks for your customer and what happens in the background once the request is submitted.

    Step-by-step guide

    • Log into the Self-Service Portal. 
    • Click on the dropdown menu to see the option.
    • Select "Change product" from the menu options.
    • Click the "CONFIRM" button.
    • A new window slides in from the right-hand side.

    • Click the dropdown arrow to view available product options.

    • Select a new product from the collection displayed.

    • Once a product is selected, the product image and price are shown.

    • Clicks on the Save changes button to confirm your selection. 

    Once the change is submitted:

    • The subscription status changes from “active” to “pending replacement”

    • This marks the end of the customer’s interaction.
    Read more
    Customer Self Service
    Refer a friend

    Self-Service Portal: Referring Friends

    Refer a friend is a feature that allows your customer to get monetary incentives for encouraging people in their network to become your customers. Learn more.

    Introduction

    circuly enables you to reward loyal customers for helping you grow your customer base. With the Refer-a-Friend feature, customers with an active subscription can share a unique code with friends and receive credit when that code is used for a new order. This article explains how your customers use this feature and how the process works behind the scenes.

    Feature overview

    • The feature is only available to customers with an active subscription that has passed the early cancellation period.
    • Customers generate a unique referral code via the Self-Service Portal.
    • Friends use the code during checkout for a discount.
    • The referrer receives account credit once the order is placed.
    • This credit is automatically applied to the next recurring payment.

    Customer Journey: Generating and Sharing a Referral Code

    • The customer logs in to the Self-Service Portal.
    • Clicks on the "REFER A FRIEND" button.
    • In the voucher window, clicks "CREATE REFERRAL CODE".

    Customer Journey: Friend Using the Referral Code

    • The friend visits the checkout page.
    • Adds the referral code in the voucher input field.
    • Clicks "VALIDATE".

    • To verify the code, the friend adds their email address and clicks "VALIDATE" again.
      • Note: The voucher is only valid for new customers.
    • Once verified, the discounted price is shown on the checkout page.

    • The friend proceeds to payment to complete the order.
    • Proceed to the payment process to finalise the checkout.

    What happens next

    • Once the referred friend completes their order:
      • The original customer (referrer) receives a credit on their account.
      • This credit is not transferable or withdrawable.
      • It is automatically applied to the next recurring payment.
      • The customer receives an invoice with the adjusted amount reflecting the credit.

    Note: Credit cannot be transferred to a bank account and is strictly applied to future subscription payments.

    Read more
    Customer Self Service
    Subscription cancellation from self service portal

    Self-Service Portal - Cancel Subscriptions

    Your customers can make cancellation requests from the self-service portal. Learn more.

    Introduction

    circuly gives your customers the option to cancel their subscriptions directly via the Self-Service Portal. This article outlines the cancellation process, types of cancellations, and what your customers can expect depending on the timing of their request.

    Types of Cancellation

    There are two main types of cancellations your customers can make:

    1. Cancellation within the Early Cancellation Period ("Widerrufsfrist")
    2. Regular Cancellation (outside of the early cancellation period)

    Note: The key difference between these two types is that if the cancellation is within the Early Cancellation Period, customers will see the option to return the product—either immediately or after the minimum subscription duration. In contrast, if it's a Regular Cancellation, the return option is not shown; customers can only request cancellation.

    Customer Journey: Cancellation Within the Early Cancellation Period

    If a customer’s subscription is still within the early cancellation period, they can cancel as follows:

    • Log in to the Customer Self-Service Portal.
    • Go to "Your Subscriptions" and select the subscription to cancel.

    • Click on "CANCEL NOW".
    • In the subscription overview window:
      • Select a Cancellation Type (Normal or Extraordinary).

    • Choose a Cancellation Reason from the dropdown.
    • Choose how to return the product:

    • Option 1: Immediately
      • A confirmation email is sent.
      • The subscription status changes to "cancelled".
      • The customer receives return instructions.
      • Once the product is returned, a refund is issued.
    • Option 2: After Minimum Duration
      • The subscription status becomes "cancellation requested".
      • An email confirms the request.
      • A reminder email is sent when the end date is near.
      • After the end date, return instructions are sent.
    • Customers can optionally leave a message.
    • Click "CANCEL NOW" to submit the request.

    Customer Journey: Regular Cancellation (Outside Early Cancellation Period)

    • Log in to the Customer Self-Service Portal.
    • Go to "Your Subscriptions" and select the subscription.

    • Click "CANCEL NOW".
    • In the subscription overview window:
      • Select a Cancellation Type.
      • Choose a Cancellation Reason.

    • The return product option is not displayed.
    • The subscription status updates to "cancelled" or "cancellation requested".
    • The cancellation date and end date are displayed.

    Processing Rules:

    • If still within the minimum duration: cancellation is scheduled for the end date. An email will be sent with next steps.
    • If outside the minimum duration: Circuly checks for notice period compliance and cancels accordingly.

    Note: In both cases, subscriptions will not renew again, but the actual cancellation depends on timing.

    Read more
    Account & Setup
    Customer Self Service
    Download invoices

    Self-Service Portal - Download Invoices

    Your customers can directly download invoices from their self-service portal.

    Your customers can download invoices for payments that have already been charged.

    Given below are steps you can share with your customers or add to your FAQ section:

    To download an invoice > Go to Your invoices > Click on the download icon > Your invoice will be downloaded and available for you to view in your browser > To view your invoice click on the downloaded file > The invoice will open up in a new window > From there you can download and/or print your invoice. 

    Read more
    Account & Setup
    Customer Self Service
    Change payment details

    Self-Service Portal - Change Payment Details

    Enable your customers to update their payment details without contacting your customer support.
    Tip: This process can be automated via our customer API. This is the GET request you can use https://api-docs.circuly.io/docs/customers-api-docs/tyvbuteuftq44-get-the-order-s-update-payment-link that you can use to get the link for updating the payment details. You can forward the link to your customer via email.

    Your customers can change their payment details in the Self-Service Portal in the same window as their address. 

    Given below are the instructions you can pass on to your customer about updating their payment details from the Self-Service Portal:


    To change payment details > Go to Your Orders > Choose an order and click on the arrow icon > You will be taken to your order overview page > in the order overview page scroll down to Current payment method > Click on UPDATE PAYMENT METHOD

    Note: If you wish to add a custom description to this window, you can write us a service desk ticket, with your desired text.

    You will be taken to a new browser window where you will have the option to update your payment method > Click on your desired option > Fill in your payment details > Confirm your selection.

    Your payment method will now be updated.

    Read more
    Account & Setup
    Customer Self Service
    Change personal details in the circuly self-service portal

    Self Service Portal - Change Personal Details

    In the customer self-service portal, you can change your personal details, such as your name, email, phone number and address (shipping and billing).

    Introduction

    circuly enables your customers to independently update their personal details through the Customer Self-Service Portal. This article outlines how the experience looks for your customers when they update their contact details or address, and why the process differs slightly for each type of information.

    Customer Journey: Updating Profile Information

    Your customers can change their name, email, and phone number by following these steps:

    1. Log in to the Customer Self-Service Portal.
    2. Click the "YOUR PROFILE" button.
    3. In the "Your Profile" window, click the pencil icon to begin editing.

    1. Make the necessary changes.
    2. Click "SEND" to submit the updates.

    These changes are sent to the Circuly system and updated accordingly.

    Customer Journey: Updating Shipping or Billing Address

    To update the shipping or billing address for a specific order:

    1. Log in to the Customer Self-Service Portal.
    2. Go to the "Your Orders" section.
    3. Select the relevant order and click the arrow icon to view the order overview.
    4. On the order overview page, click the pencil icon next to the address.
    5. Make the necessary updates.
    6. Click "SEND" to confirm the change.

    The updated address is saved in the Circuly system and associated with the selected order.

    Why Contact Details and Address Are Handled Separately

    Customers may use a single email ID to place multiple orders—for themselves, family, or colleagues—each potentially with a different delivery address. To avoid conflicts or incorrect data changes across orders, addresses are managed separately at the order level.

    Read more
    Account & Setup
    Customer Self Service
    Change language

    Self-Service Portal - Changing the language

    Your customers can switch between languages if there is more than one language available in the self-service portal. Learn more

    Introduction

    circuly allows you to offer a localised experience for your customers by supporting multiple language options in the Customer Self-Service Portal. This article explains how language preferences are managed and how they influence customer communication.

    How to configure available languages

    As an admin, you can control which languages are available to your customers. For details on configuring language options or troubleshooting issues, refer to the language settings article.

    How language preferences work

    The language selection feature in the Customer Self-Service Portal allows customers to choose the language in which the portal is displayed. This preference not only affects the interface language but also determines the language of transactional email communications sent to the customer.

    Customer journey: changing the portal language

    Here’s how your customers can change their preferred language:

    1. Log in to the Customer Self-Service Portal.
    2. Click the small grey language selector button in the top-right corner.
    3. Select a preferred language from the list.

    Implication: Once changed, all future transactional emails will be sent in the selected language. The circuly system automatically saves this preference.

    How to configure available languages

    For more details on configuring language options or troubleshooting issues, refer to the language settings article.

    Read more
    Customer Self Service

    Actions and operations your customers can do and see in the Self-service portal.

    Here's a list of actions that your customer can take from the self-service portal.

    Introduction

    By embracing the power of the circuly Customer Self-Service Portal (CSS), you're not only empowering your customers with more control and transparency but also freeing your Customer Success team from repetitive operational tasks.

    Transparency isn’t just a nice-to-have – it’s essential for building trust and enhancing the customer experience. The CSS provides exactly that: a simple and intuitive interface where customers can manage their subscriptions, invoices, and personal data independently.

    This article is written for your customers. Feel free to copy and paste this guide onto your website. Just be sure to use your own screenshots to align the look and feel with your brand.

    Note: If you do not provide one or more of the options listed below, you can customise this content accordingly.

    Feature Overview

    The Customer Self-Service Portal offers an overview of all relevant account and subscription details. Through the portal, customers can:

    • View their active and ended subscriptions
    • Access all their orders
    • Download invoices
    • Update personal and payment details
    • Manage language preferences
    • Cancel subscriptions or report issues
    • Refer friends, buy products, or switch products (if allowed by your setup)

    What You Can See in the Self-Service Portal

    Customers will find the following sections in their CSS:

    Your Subscriptions

    • View both active and ended subscriptions.
    • See the monthly subscription price for each product.
    • Note: Only subscription-based products appear here. One-time purchases are shown under "Your Orders."

    Your Orders

    • See all orders in one place – both subscription and one-time orders.

    Your Invoices

    • Download invoices for already paid subscription payments.
    • Note: Unpaid invoices or upcoming charges are not displayed.

    What your customers do in the CSS

    The CSS allows customers to perform multiple self-service actions without needing to contact customer support. Here's what customers can do:

    Additional Settings

    Availability of some features depends on your specific Circuly configuration. If certain features (e.g., Refer a Friend or Change Product) are not visible in your CSS, it's likely they are not currently enabled in your system.

    What Happens Next

    Once the portal is live:

    • Your customers can manage their subscription lifecycle independently.
    • Your support team will receive fewer repetitive inquiries related to account updates, cancellations, and invoice requests.
    • You can improve customer satisfaction by making their journey smoother and more self-directed.

    To fully benefit from the CSS, consider embedding a link to it prominently in your website's account or support sections, and customise it visually with your branding and screenshots.

    Read more
    Account & Setup
    Customer Self Service
    Auto refund immediately cancelled subscriptions

    Setting: Auto Refund Immediately Cancelled Subscriptions

    Auto refund immediately cancelled subscriptions is a setting available in the Settings tab that allows you to auto refund the payment for an order/subscription that is still within the Early cancellation period. Learn more.

    Introduction

    In subscription businesses, customer cancellations are inevitable. When customers cancel early—especially within the legally mandated early cancellation period—it’s often expected that their initial payment will be refunded. To streamline this process, circuly offers a setting that automates refunds for qualifying cancellations. This helps reduce manual effort and improves customer experience by ensuring timely refunds.

    Settings Overview

    The Auto refund immediately cancelled subscriptions setting automatically refunds the initial payment for subscriptions cancelled via the Self-Service Portal under the following conditions:

    • The cancellation is made within the early cancellation period.
    • The customer selects “immediately” as the option for returning the product.

    Once these two conditions are met and the setting is enabled, the payment will be refunded—even if the product has not yet been returned.

    Note: If you prefer to refund only after the product is returned, keep this setting disabled and handle refunds manually.

    Setup Guide

    To enable the Auto refund immediately cancelled subscriptions setting:

    • Log into your circuly Hub.
    • Navigate to Settings.
    • Go to Subscriptions > Cancel subscriptions.
    • Enable the switch for Auto refund immediately cancelled subscription.

    Once active, the circuly system will take care of refunding payments under the specified conditions without any manual input from your team.

    Learn more about how you can manually process a refund.

    Read more
    Account & Setup
    Products
    Check stock

    Checkout setting: Check system stock

    A setting that runs a stock check query on your checkout page. Learn more about use case.

    When enabled in your circuly Hub settings, the 'Check system stock' setting performs a stock check in the background as soon as the customer arrives on the checkout page. This check uses the stock level data stored in the circuly Hub as its base which is in turn based on an automatic sync between your shop system and the circuly Hub.


    Product is available: if the product is available the customer can proceed with the payment and finalise the order.
    Product is not available: If the selected product is not in stock, an error message is displayed on the checkout page and the customer is prevented from proceeding to the payment page.


    Access the setting

    To access the setting > Go to Settings > Checkout > PRE CHECKOUT > Check system stock

    Learn more about stock management with circuly.

    Read more
    Payments
    Account & Setup
    Payment cycle

    Payment Cycles

    A payment cycle has “x” number of payment retrial attempts meaning that if the circuly system has retried a failed recurring payment “x” number of times then this counts as one payment cycle.

    What is a payment cycle?

    In circuly, a payment cycle refers to the complete process of retrying a failed payment the maximum number of times you've configured in your settings.

    Feature overview

    When a recurring payment fails, circuly will automatically retry the payment based on your defined settings. This retry process is called a payment cycle.

    A payment cycle =
    1 failed recurring payment
    retried automatically up to the maximum number of times (e.g. 3 retries)

    Once all retries have been attempted and the payment still fails, the payment cycle is considered completed—but the payment is still marked as failed.

    Good to Know

    • You can set the number of retry attempts in:
      Settings > Invoice & Payment > FAILED PAYMENT > Maximum number of payment attempts
    • Multiple payment cycles are used to determine subscription-level actions (e.g. auto-cancellation after two failed payment cycles).

    Example:
    If Max attempts = 3 and a payment fails, circuly will retry it 3 times.
    That’s 1 payment cycle.
    If another payment fails and is also retried 3 times, that’s a second payment cycle.

    Read more
    Account & Setup
    Customer care email address setting

    Setting: Customer Care Email Address

    Get notified via email for certain important subscription operations like cancellation requests, chargebacks etc. Learn more.

    Introduction

    In circuly, you can designate a specific customer care email address to receive automatic notifications when key customer-related events occur. These notifications help your internal team stay informed and take timely action when needed.

    Feature Overview

    The email address you define in your circuly Hub will receive alerts for the following types of events:

    • Failed Payments – When a recurring payment attempt does not go through.
    • Unreturned Products – When the return deadline has passed and no product has been received.
    • Subscription Cancellation Requests – When a customer initiates a cancellation.
    • Chargebacks – When a customer disputes a transaction with their payment provider.
    • Issues Reported – When a customer reports a problem via the Self-Service Portal.

    This setting ensures that your customer service team is always in the loop and can respond quickly to customer needs or potential problems.

    How to set up the customer care email address

    1. Login to your circuly Hub
    2. Navigate to: Settings > Company Settings > Base Setup
    3. Locate the field labeled Customer Care Email Address
    4. Enter the email address that should receive the notifications.
    5. Click Save Changes at the bottom of the page.

    ✅ Tip: Use a shared customer support email (e.g., support@yourcompany.com) so multiple team members can monitor incoming alerts.

    Examples of Email Notifications

    Below are examples of the kinds of notifications your team might receive:

    1. Unreturned Product Notification
      Subject: “Product not returned – [Order ID]”
      Body: Alerts the team that a return deadline has passed without product return.
    2. Failed Payment Notification
      Subject: “Failed Payment – [Customer Name or ID]”
      Body: Informs about unsuccessful payment attempts requiring follow-up.
    3. Issue Reported from Self-Service Portal
      Subject: “Customer reported an issue – [Subscription ID]”
      Body: Includes the customer's message and issue details.
    4. Subscription Cancellation Request
      Subject: “Cancellation request received – [Subscription ID]”
      Body: Lets your team know a customer wants to end their subscription.
    5. Chargeback Notification
      Subject: “Chargeback initiated – [Transaction ID]”
      Body: Notifies you that a dispute has been raised by the customer’s payment provider.

    Setting up the Customer Care Email Address in Circuly ensures that your team receives critical updates without delay. With automated notifications for cancellations, payment failures, and other key events, you can proactively manage customer support and maintain high service standards.

    Read more
    Account & Setup
    Checkout
    Supported languages in circuly

    Language Settings in circuly

    Languages supported by the various circuly modules and the setup process to make the different languages available to your customer.

    Introduction

    circuly supports multiple languages to help you deliver a localized experience across your Checkout, Self-Service Portal, and email communication. With just a few settings in your circuly Hub, you can configure the languages available to customers and how those language preferences influence the user experience and system communication.

    This guide walks you through the languages supported, how to activate them, and how the system handles language preferences.

    Feature Overview

    To see the languages currently supported by circuly, go to your Settings in the circuly Hub and check the available options under Allowed Languages.

    circuly is constantly expanding the list of supported languages to help you offer a localized experience to your customers across different markets. If your desired language isn’t listed yet, feel free to reach out to us via the service desk—we’re always improving and updating language support based on customer needs.

    Step-by-Step Guide to Enabling Languages

    Step 1: Define Allowed Languages

    Allowed languages are the ones your customers can choose from during checkout or in the Self-Service Portal.

    To enable them:

    1. Go to Settings > Company Settings > Locale in your circuly Hub.
    2. Under Allowed Languages, select the languages you want to offer from the dropdown.

    When you select an allowed language, a new column is added in the Email Templates tab for that language—so you can configure email templates accordingly.

    Step 2: Set Up Email Templates (If Needed)

    Selecting a language under “Allowed Languages” does not automatically create translated email templates. You’ll need to:

    • Go to the Email Templates tab in your circuly Hub.
    • Use the new language column to manually create or translate the templates for that language.

    Step 3: Define a Default Language

    The default language acts as the fallback language for all communications when a customer's preferred language is missing or email templates aren't set up in their chosen language.

    To set the default language:

    1. Go to Settings > Company Settings > Locale.
    2. Choose your Default Language from the dropdown list.

    Note: You can only set one default language.

    Terminology Explained

    Allowed Language

    Languages made available to customers in the Checkout and Self-Service Portal, selected via the "Allowed Languages" setting.

    Preferred Language

    The language selected by the customer during checkout or in the portal. This preference is saved and used for all communication (emails, invoices, etc.).

    Default Language

    Used when:

    • No preferred language is available for the customer, or
    • The email templates for the preferred language are not configured.

    How circuly Uses Language Preferences

    • When a customer visits the checkout and switches to a different language from the available list, circuly saves that language as their preferred language.

    • Any email or transactional message sent afterward (automatically or manually) will use this preferred language—if email templates are set up.
    • If templates are missing for the preferred language, circuly defaults to the default language set in your settings.

    FAQ: Common Language Questions

    What language is shown to customers the first time they access checkout?
    The checkout language is based on the browser language. If the browser is set to English, the checkout and communication will start in English—even if your default language is different.

    What changes the customer’s preferred language?
    If the customer switches languages in the Self-Service Portal, circuly automatically updates their preferred language and uses it for all future communications.

    What language is used when I manually resend an email?
    The email will be sent in the customer’s saved preferred language, regardless of whether it’s triggered manually or automatically.

    Tip If you don’t see a specific language in the Default Language dropdown, make sure it’s first added under Allowed Languages.
    Read more
    No items found.

    Allowed, Default and Preferred Language in the circuly Operations Backend

    This guide explains how to configure and manage language options in circuly for the Checkout page, Self-Service Portal, and email communications, ensuring a tailored experience for customers across different regions.

    Introduction

    circuly offers multiple language options for the Checkout and Self-Service Portal to ensure a seamless experience for customers across different regions. This article outlines the languages currently supported, how to enable language options, and how the system uses language preferences to communicate effectively with customers. It also explains the importance of setting up a default language and answers commonly asked questions about language selection and email communication.

    Languages currently supported by circuly

    The Checkout and Self-Service Portal are available in multiple languages and can be displayed in the following options:

    • German
    • English
    • French
    • Spanish
    • Dutch
    • Swedish
    • Norwegian
    • Greek
    • Italian
    • Spanish
    • Slovenian

    Note: While translations of the checkout and self-service portal are available in the languages mentioned above, the email templates are only available in English and need to be translated for all other languages. 

    Language types in circuly

    To better understand how language settings function in Circuly, it's important to define the three main types of language settings used within the platform: Allowed Language, Preferred Language, and Default Language. Each plays a key role in ensuring effective and seamless communication with customers.

    - Allowed Language

    The Allowed Language refers to the list of languages that you, as a business, make available for your customers to choose from on the Checkout page and in the Self-Service Portal. These languages are configurable in the circuly Hub, allowing you to select which languages should be accessible for customers based on their region or preferences. Only the languages selected from the Allowed Languages dropdown are available for customers to select.

    - Preferred Language

    The Preferred Language is the language chosen by the customer from the Allowed Languages list during their interaction with the Checkout page or Self-Service Portal. It can also be based on their browser language settings. Once selected, the customer’s Preferred Language is saved in the circuly system and used for all future communications, such as emails, invoices, and notifications.

    - Default Language

    The Default Language serves as the fallback language in case no Preferred Language is selected, or if there are no email templates available in the customer's selected language. It is the language Circuly will use for all communications (emails, invoices, etc.) when no language preference is provided or when the customer’s Preferred Language is unavailable. This ensures there are no gaps in communication and that customers always receive the necessary information, even if their selected language is not available.

    Example: You have three language options available on your webshop; English, German, and Dutch. A prospect lands on your webshop and proceeds to the checkout page in Dutch. The preferred language of this customer is saved as Dutch in the circuly operations backend. If you have email templates set up in Dutch then the circuly operations backend will use Dutch as the language of communication with your customer. If you do not have email templates set up in Dutch then the circuly operations backend will use the default language and the email templates set up in the default language.

    As you can see setting up a default language is important to avoid any communication gaps and operation hassles. 

    Step-by-step setup guide

    Follow the steps given below:

    - Setup guide for Allowed languages

    • Log into your circuly Hub.
    • Navigate to the Settings tab in the top navigation bar.
    • Go to Company Settings > LOCALE > Allowed Languages.
    • In the Allowed Languages section, you will see a dropdown menu where you can select the languages you wish to offer to your customers.
    • Pick the languages you want to make available for your customers in the Checkout page and the Self-Service Portal.
    • To finalise and save your settings, click on the Save changes button.

    Once selected, these languages will be displayed in the language switcher, allowing your customers to switch between the available options.

    Note: When you update the Allowed Languages settings by adding or removing languages, a corresponding language tab will appear or disappear in the Email Templates tab. Please note that emails for newly added languages are not automatically created; you will need to manually configure the email templates for these languages.

    - Setup guide for Default language

    • Log into your circuly Hub.
    • Navigate to the Settings tab in the top navigation bar.
    • Go to Company Settings > LOCALE > Default Language.
    • Click on the dropdown arrow to see the dropdown list and proceed by selecting a language that should be used as the default language.
    • To finalise and save your settings, click on the Save changes button.

    - Setup guide for Preferred language

    There is no separate setup guide for Preferred Language, as the Preferred Language is automatically based on the language selected by the customer during the Checkout process or in the Self-Service Portal. When a customer chooses a language from the available Allowed Languages, their selection is saved as their Preferred Language in the system, which is then used for all subsequent communications.

    Frequently asked questions

    1. What language will be shown to the customer when they access the checkout for the first time t?

    The language shown in the checkout is based on the browser preference. Hence if your browser preference is English but your default language is German, the checkout would still be shown in English and also the email sent in English. 

    2. What triggers the email to be sent in a different language?

    If the customer changes the language after checkout in the Self-Service Portal, this will also change the selected email language. 

    3. In what language will be the email sent if I trigger the email manually again from the circuly Hub?

    The email will be always sent out in the saved preferred language that the customer selected.

    Read more
    Products
    Customer Self Service
    Exchange Groups

    Exchange Groups: Unleash the Power of Streamlined Choices

    Offer your customers the possibility to replace products and select from a predefined collection to alleviate decision fatigue and guide them towards making confident choices.

    Introduction

    In a world where consumer choice is abundant, guiding your customers with curated selections can dramatically improve their decision-making experience. Research shows that 87% of customers appreciate curated product experiences that reduce decision fatigue and support confident choices.

    circuly’s Exchange Groups feature enables you to deliver this experience. By allowing customers to choose a replacement product from a pre-defined, tailored group, you empower them to swap products without being overwhelmed by irrelevant options.

    Feature overview

    Exchange Groups is a feature in the circuly Hub that lets you:

    • Create collections of related product variants.
    • Enable customers to swap their current subscription product with another from the same collection.
    • Maintain price consistency or customise pricing for each variant.
    • Limit availability based on stock.

    One-time feature setup

    Step 1: Create an exchange group collection

    Step 2: Map variants to the collection

    Step 3: (Optional) Go over the swap settings in the Settings tab

    Step 4: Enable the "Check System Stock" setting

    Technical setup

    Step 1: Create an exchange group collection

    • Go to Products > Exchange Groups tab.
    • Click on + Exchange group.
    • Fill in the group title, description, and optional exchange discount.
    • Assign product variants via the dropdown or skip this and assign them in the next step.
    • Click Submit.
    Note: An exchange group can include up to 1000 product variants.

    Step 2: Map variants to the collection

    • Navigate to the Variants tab.
    • Select the variants you want to group by checking the checkbox > Then click on Map to exchange collection button.
    • Choose the desired collection from the dropdown > Click Map to groups.

    To verify, scroll horizontally in the Variants tab to view the Exchange Group column.

    Step 3: (Optional) Review swap settings

    Exchange Groups use the swap logic and associated settings. Ensure your swap settings are configured under Settings > Swaps.

    Step 4: Enable system stock check

    To avoid offering out-of-stock products, activate the stock validation feature:

    • Go to Settings > Checkout > Pre-Checkout > Check System Stock.
    • If already active for checkout, the same logic applies to the Self-Service Portal.
    Note: Update your collections regularly if you have stock-sensitive items like refurbished products.

    Good to Know

    1. All product data (e.g. price, name) is imported from your shop system into circuly.
    2. Exchange Group pricing follows your shop system by default, but flat pricing per collection can be arranged upon request via the service desk.
    3. Exchange Groups are only available for new orders. If you want to enable this feature for existing subscriptions, contact circuly support.

    Process for your customers

    Here’s how the exchange process looks for your customers:

    1. Customer logs into the Self-Service Portal.
    2. Opens subscription menu > Clicks Change product.
    3. Clicks CONFIRM.
    4. A window slides in from the right.
    5. Customer selects a product from the dropdown (display includes product image and price).
    6. Clicks Save changes.

    Stock validation is triggered at this point. If the selected product is out of stock, an error is displayed.

    The subscription status changes from active to pending replacement.

    Note: To display your custom terms and conditions, share the desired text with circuly to include in your white-label Self-Service Portal.

    Process for a circuly user

    • A new order is created in the circuly Hub unless the Delay Swapped Orders setting is enabled.
    • Process this order manually or update its status based on your shop system flow.

    Learn more about manually creating subscriptions or using the bulk update feature to update orders.

    Business cases and ideas

    1. Consumable subscriptions

    • Example: Protein powders in different flavours (vanilla, chocolate, cookie dough).
    • Create a collection named “Flavours – Black Edition” and map the variants.
    • Customers choose their preferred flavour through the Self-Service Portal.

    Also applicable to coffee, baby diapers, wine, and other consumables.

    2. Tangible product subscriptions

    • Strollers: Offer swaps between compact, large, or double strollers.
    • Bikes: Let customers upgrade to bigger kids’ bikes as the child grows.
    • Furniture: Allow seasonal swaps (e.g. summer lounge chairs vs. winter armchairs).

    Read more
    Admin
    Subscriptions
    Swap settings

    Swap Settings: Explained

    In order to utilize the swap feature within the circuly Operations Backend, it is essential to carefully review and configure the following settings based on your specific business requirements.

    Introduction

    In a subscription-based business model, customers don’t just purchase products—they use them for a defined period, often with the option to return, upgrade, or replace them. That’s where product swapping comes in.

    Swapping allows customers to exchange one product for another during their subscription term. This can be due to breakage, loss, dissatisfaction, or a change in needs—like upgrading to a newer model or switching to a more suitable product. It's a critical feature in making a subscription model work smoothly, especially for physical products that require flexibility and long-term use.

    To support this, circuly provides a swap feature within the circuly Hub and the Self-Service Portal. With the right configuration, businesses can streamline how swaps are handled—ensuring a smooth experience for both customers and operations teams while preventing misuse and managing logistics efficiently.

    Feature overview

    circuly supports product swaps through two main channels:

    • circuly Hub: Swaps can be manually initiated and processed by your internal team.
    • Self-Service Portal: Customers can initiate a swap themselves using the “Change Product” option.

    Both methods integrate into your subscription flow and trigger a series of backend processes depending on how the swap settings are configured.

    Settings overview

    Here’s a breakdown of the key swap-related settings in the circuly Hub:

    • Maximum number of swaps per original order
      Set a limit on how many times a single order can be swapped. This helps prevent abuse or suspicious activity by stopping additional swaps once the limit is reached.
    • Delay swapped order
      Instead of immediately creating a new active order after a swap request, enabling this setting creates a draft order. This ensures you can receive the original product before shipping a replacement—helping reduce fraud.
    • Prevent swap if customer has failed payments
      Automatically blocks swap requests from customers with unpaid or failed payments and also prevents a user from processing a swap if a customer has failed payments, helping reduce risk.
    • Swap reasons
      Add customisable reasons for swapping, which are then displayed to a circuly user when processing a swap.
    • Tag after swap
      Add a label (e.g. "replacement" or "swap") to orders processed as swaps, making it easier to differentiate them from regular orders.
    • Extend subscription on return
      Automatically extend the subscription end date by 7 days to account for the delivery time of the replacement product—especially useful if the customer is close to the end of their subscription.

    Setup guide

    To configure the swap settings, navigate to the Settings tab in your circuly Hub. Under the settings menu click on Swapping and configure the settings you need.

    Learn more about exchanging and swapping products.
    Read more
    Invoices
    Customers
    Filters

    Filter Functionality in circuly

    User the circuly Filter function to get specific information in the circuly Operations Backend.

    Introduction

    Each tab in circuly Hub (Orders, Subscriptions, Customers, Invoices) has an index page that displays a list — such as the Order List, Subscription List, or Customer List. You can use filters to segment these lists and display exactly the information you want. The filter functionality in the circuly Hub helps you quickly narrow down data so you can focus on what matters most.

    Feature Overview

    • Flexible filtering: Apply multiple filters to slice your data based on different fields and criteria. The fields available depend on the tab you’re working in (e.g. Customer fields under the Customers tab).
    • Saved views: You can save your filter settings as default views, making it easy to switch between different filtered perspectives without setting them up each time. You can save multiple views and toggle between them whenever needed.
    • Active filters: All applied filters are shown under Active filters, so you always see exactly how your data is being filtered.
    • Resetting filters: Clear all filters anytime with the Clear button to return to the unfiltered list.
    • Browser-friendly: Filters are added to the URL string, so if you navigate back and forth using your browser’s arrow keys, your filters stay intact and don’t reload — making it easier to explore data without losing your current view.

    Step-by-Step Guide

    How to add a filter

    • In the circuly Hub, click on the Filter button.
    • Select a Filter key.
      • The options shown here depend on which tab you’re in. For example, in the Customers tab, the dropdown will show all the column headings from your customer list.
    • Select an Operator to define your filter condition.
      • Available options include:
        • Is, Contains, Excludes, Matches, Is Empty, Date, or Date Range.
        • Certain value options also contain predefined values such as status.
        • In case of numerical possibilities operators like greater than and less than as well.
    • Click + Add filter to apply it.
    Note: if you don’t actively click this button, the filter won’t be applied.
    • Once applied, the filter will appear under Active filters.
    • Repeat these steps to add more filters as needed.

    • When you’re ready, click Search to update your list with the applied filters.

    How to save a filter view

    • After adding all your desired filters, click on the Save as function.
    • Give this set of filters a name to save it.
    • You can create and save multiple views.
      • Later, simply select the saved view to instantly apply all its filter settings.

    How to navigate between saved filter views

    If you’ve saved more than one filter view, you’ll see a list of saved filters under “Saved Filters.”


    To switch between different filtered perspectives:

    • Simply click on any saved filter in the list to apply it immediately.
    • To move from one applied filter to another, just select a different saved filter from the list.
    Important: Clicking on the cancel (×) icon next to a saved filter will permanently delete that saved filter.

    How to see which filter is currently active

    You can always tell which saved filter is currently applied by checking the highlighted or selected filter under the Saved Filters section. This clearly shows which conditions are filtering your displayed list.

    Pro tips: browser navigation & bookmarks

    • When you use your browser’s back and forward buttons, the circuly Hub keeps your filters intact — even if you move to another tab and return — because the filters are stored in the URL.
    • You can also bookmark the URL (including the filter string) to always land on the exact filtered view you want whenever you log back into Circuly.

    You’re all set to start using filters in the circuly Hub. Try out different combinations and save your favourite views to make your work even easier.

    If you have any questions or run into something unexpected, our team is always here to help.

    Read more
    Account & Setup
    Create or add users

    Create a User

    If you have access to the Admins section in the circuly Operations Backend, you can add users to your company instance and customise their permissions.

    Introduction

    If you have access to the Admins section in the circuly Hub, you can add users to your company and customise their permissions. 

    Feature Overview

    With advanced user management in circuly, you can:

    • Invite both internal team members and external partners
    • Assign roles based on responsibilities
    • Control access per tab (e.g., limit a user to only the “Invoices” tab)

    This gives you full flexibility to tailor permissions to each person’s role — without giving more access than needed.

    Step-by-step guide

    • In your circuly Hub > Go to the Users tab.
    • Click on the + Invite user button. 
    • In the Invite User window enter the user's:
      • Email
      • Name  
      • Role of the user
    • Click on the Submit button.

    Admin - when you give a user the role on an “Admin”, the user is able to see the Admins section in the left navigation bar and access everything that comes under it, such as Settings, Repair Questions etc.

    User - when you give a user the role of a “User”, the user is only able to access the non-admin tabs in the circuly Hub.

    Once invited, the user appears in the list. You can adjust their permissions at any time by clicking on their name and checking/unchecking access to specific tabs.


    What happens next

    • The invited user receives an email invitation with a link to create their account.
    • This link is valid for 24 hours, so they must complete the sign-up within that time.
    • The user creates a password and logs in to the circuly Hub using their email and password.

    Login options:

    • Social login: If their email is linked to Google or GitHub, they can log in using that account.
    • Standard login: If not, they can create a password using the same email.

    User is unable to log in

    The most common reason is an expired invitation link.
    If the user doesn’t create a profile within 24 hours, the link becomes invalid.

    ➡️ In this case, please create a ticket in the Support tab in the circuly Hub to resend the invitation.

    To avoid login issues, ensure users complete their sign-up promptly.


    How to Remove a User

    1. Go to the Users tab
    2. Search for the user in the list
    3. Click on the three dots next to their name
    4. Select Remove user
    5. Confirm by clicking Remove
    Read more
    Account & Setup
    Auto cancel subscriptions

    Setting: Auto Cancel Subscription

    The auto-cancel subscription setting automates the process of setting the subscription status as pending return and triggering the return workflow.

    Introduction

    When customers request to cancel a subscription, circuly provides two paths: manual cancellation by your support team or self-service cancellation by the customer via the Customer Portal. To reduce manual handling and improve automation, circuly offers a setting called Auto cancel subscription. This setting controls what happens after a customer initiates a cancellation—especially in relation to the subscription status and return workflow.

    Understanding how this setting behaves in different scenarios is essential to ensure you meet both operational needs and customer expectations.

    Settings Overview

    The Auto cancel subscription setting determines whether the circuly system should automatically update a subscription’s status after a cancellation request is made via the Self-Service Portal.

    • Default state: Disabled
    • Location: Settings > Customer Login > Cancel options > Auto cancel subscription

    When enabled, the system can automatically:

    • Set the subscription status to pending return
    • Trigger the return workflow
    • Turn off the Auto renew setting
    • Cancel the subscription either immediately or at the end date (depending on user input)

    When disabled, these actions may require manual input depending on the scenario.

    Setup Guide

    To enable the Auto Cancel Subscription setting:

    • Log into your circuly Operations Backend.
    • Go to Settings > Customer Login > CANCEL OPTIONS.
    • Enable the switch for Auto cancel subscription.

    Once activated, the circuly system will take automated actions during cancellation requests as per the scenario.

    Cancellation Scenario Overview

    Below is an explanation of how the Auto Cancel Subscription setting behaves in various scenarios, both within and outside the early cancellation period.

    Cancellation Within Early Cancellation Period

    Scenario 1: Auto Cancel Enabled + “Immediately” Selected

    • Subscription status: Set to pending return
    • Auto renew: Turned off
    • Subscription: Cancelled
    • Reason: Customer has the right to cancel within the early cancellation period
    • Auto cancel setting has no effect (legal override applies)

    Scenario 2: Auto Cancel Disabled + “Immediately” Selected

    • Subscription status: Set to pending return
    • Auto renew: Turned off
    • Subscription: Cancelled
    • Reason: Same legal override applies
    • Auto cancel setting has no effect

    Scenario 3: Auto Cancel Enabled + “After Minimum Duration” Selected

    • Subscription status: Set to pending return
    • Auto renew: Turned off
    • Tag: “Cancelled by customer”
    • Action: Subscription is scheduled to cancel at the end date
    • Auto cancel setting takes effect

    Scenario 4: Auto Cancel Disabled + “After Minimum Duration” Selected

    • Subscription status: Remains active
    • Auto renew: Turned off
    • Tags: “Cancelled by customer” and “Cancelled on end date”
    • Auto cancel setting prevents cancellation from being processed

    Cancellation Outside Early Cancellation Period

    Scenario 5: Auto Cancel Enabled

    • Customer sees: No return option, only cancellation reasons
    • Subscription status: Set to pending return
    • Auto renew: Turned off
    • Tag: “Cancelled by customer”
    • Minimum subscription duration: Ignored
    • Auto cancel setting triggers full cancellation flow

    Scenario 6: Auto Cancel Disabled

    • Customer sees: No return option, only cancellation reasons
    • Subscription status: Remains active
    • Auto renew: Turned off
    • Tags: “Cancelled by customer” and “Cancelled on end date”
    • Auto cancel setting prevents automatic cancellation

    By understanding and configuring the Auto cancel subscription setting properly, you can better control your cancellation workflows while staying compliant with legal requirements—especially regarding early cancellation rights.

    Read more
    Account & Setup
    Customer Self Service
    early cancellation period

    Early cancellation period

    In some countries, your customers have the right to cancel their subscriptions within a specified time period (Widerufsfrist in Germany), and as a business, you are mandated by law to approve the cancellation.

    Introduction

    Early cancellation refers to a customer's legal right to cancel their subscription shortly after it starts—commonly within 14 days in countries like Germany. circuly supports this process through the Customer Self-Service Portal and allows you to automate nearly every step while remaining fully compliant.

    This article explains how early cancellations work, what your customer sees, and how you can set up the logic and communication behind the scenes in the circuly Hub.

    Feature Overview

    When early cancellation is enabled in circuly, customers who cancel within the defined period are presented with two return options:

    • Immediately
    • After minimum subscription duration

    Each choice leads to a different flow within circuly, affecting subscription status, customer communication, and return handling.

    Early cancellation requests can be made directly in the Customer Self-Service Portal, provided that the "Cancel now" button is visible.

    Process Overview

    How early cancellation works for customers

    • The customer logs into the Self-Service Portal.
    • They click on “Cancel subscription” from the subscription action dropdown.

    • A window slides in, where the customer selects a cancellation type (normal or extraordinary).
    • Based on their selection, a list of cancellation reasons appears.
    • circuly checks if the request is within the early cancellation period.
      • If within the period: two return options are shown—“Immediately” or “After minimum duration.

    • If outside the period: only the option to submit a cancellation request is shown

    Option 1: Return Immediately

    • The order status is set to Cancelled

    • The subscription status is automatically set to Pending Return
    • The customer receives two emails:
      • Subscription cancellation received

    • Subscription pending return
    • The return process begins. Either the customer sends the product back or a pickup is arranged
    • Once the product is received, you mark the subscription as returned in the Returns tab

    Option 2: Return After Minimum Duration

    • The order status is updated to Cancellation Requested
    • The customer continues using the product and paying for the subscription
    • Near the subscription end date, circuly sends:
      • Subscription almost over email
      • Once the end date is reached: Subscription pending return email
    • The subscription status is then set to Pending Return
    • You or the customer initiate the product return
    • Once the product is received, the subscription is manually marked as returned

    Step-by-Step Setup Guide

    1. Define the Early Cancellation Period

    This defines the time window (e.g., 14 days) during which early cancellation options are available.

    How to set it:

    • Go to:
      Settings > Subscriptions > Cancel subscription > Early cancellation period
    • Enter the number of days (e.g., 14)

    circuly will use this value to determine whether the customer is still within the allowed period when they initiate a cancellation.

    2. Set Up Cancellation Reasons

    Customers must select a cancellation type and reason when cancelling.

    How to configure:

    • Go to:
      Settings > Subscriptions > Cancellation reasons
    • Click the + icon to add reasons under:
      • Normal cancellation
      • Extraordinary cancellation

    These reasons help you understand customer churn and can be used for internal reporting or churn prevention efforts.

    3. Show the “Cancel Now” Button in the Self-Service Portal

    If the “Cancel now” option is hidden, customers won’t be able to start the cancellation process themselves.

    How to enable:

    • Go to:
      Settings > Customer login > Features > Hide cancel now
    • Disable the switch

    In Germany, a cancellation button is legally required.

    4. Add a Support Email Address (Optional)

    This email is displayed in the Self-Service Portal as a way for customers to reach out.

    How to set it:

    • Go to:
      Settings > Customer login > General > Support email address
    • Add your contact email

    This address is only for display. It does not trigger automation if customers send a cancellation request via email.

    5. Add a Customer Care Email Address

    This email address receives system notifications, including cancellation requests.

    How to set it:

    • Go to:
      Settings > Company Settings > Base setup > Customer care email address
    • Add your internal team’s contact email

    circuly will use this to notify you whenever a cancellation request is submitted.

    6. (Optional) Enable Pickup Date Selector

    If you offer product pickup, show a calendar so the customer can select a date.

    How to enable:

    • Go to:
      Settings > Customer login > Cancel options > Pickup date
    • Enable the switch

    To make it mandatory:

    • Enable the Require pickup date switch below it

    7. (Optional) Automate Refunds for Early Cancellations

    If a customer cancels within the early cancellation period and chooses to return the product immediately, you can refund them automatically.

    How to activate:

    • Enable the Auto refund immediately cancelled subscriptions setting in your cancellation settings

    8. (Optional) Restock After Cancellation

    To automatically update inventory in your shop system after a cancellation:

    • Enable the Restock item after order cancellation setting
      (See the Stock Management in circuly article for more detail)
    Read more
    Payments
    Initial payment

    Initial Payment

    Initial payment is the payment that is due when an order is placed. Learn more

    Introduction

    Initial payment is the payment that is due when an order is placed. The initial payment often refers to the first recurring payment plus any other payment (setup, shipping, additional products) you charge when a customer places an order on your checkout page. You can choose not to charge the initial payment in the checkout and delay the charge, (delayed charge) until a later point in time. 

    Read more
    Account & Setup
    Checkout
    Delayed charge

    Delayed charge

    Delayed charge is a feature available in the circuly operations backend that you can use if you do not want to charge the initial payment in the checkout and instead delay the charge until a later point in time.

    Delayed charge - delayed charge is a feature available in the circuly operations backend that you can use if you do not want to charge the initial payment in the checkout and instead delay the charge until a later point in time. 

    Currently the option to delay a charge in your white-label checkout or the initial payment is only available if you use the following Payment Service Providers: 

    Here's when you might want to delay a charge: 

    • Limited stock availability - If you are unsure whether you can fulfil the order or not because you don’t have the necessary stock amount and need to order the stock from your supplier first.
    • Validating the credit worthiness of the customer - If you want to check the credit score of the customer first and based on the credit score decide whether you actually want to fulfil the order or not.
    • Checking if delivery is possible - If you want to check first whether you can actually deliver your product to the requested area & you need to manually follow up with the customer for the delivery of the product.

    Learn more about delaying initial payments in this article

    Read more
    Payments
    Charge initial payment

    Charge initial payment

    Charge initial payment is a feature available in the circuly operations backend. Learn more

    Feature Overview

    Charge initial payment is a feature available in the circuly operations backend that lets you manually charge the initial payment. The reason why you may want to manually charge an initial payment could be because you use the delayed charge feature.

    Automation via API

    The process of charging the initial payment can be automated via our customer API. This is the POST request you can use https://api-docs.circuly.io/docs/customers-api-docs/3ouxo0e215vwt-charge-initial-payment-by-id that you can use to charge the initial payment.

    Read more
    Payments
    One-time payment

    One-time payment

    One-time payment is a feature available in the circuly operations backend that you can use, as the name suggests, to charge non-recurring, one-time payments to your customer's payment method.

    One time payment is a feature available in the circuly operations backend that you can use, as the name suggests, to charge non-recurring, one-time payments to your customers payment method. The reason why you need to charge a one-time payment can be anything from product buyout to product repair charges. 

    Read more about how to charge a one-time payment

    Read more
    Orders
    Refund orders

    Refund an order

    Refund Order is a feature available in the circuly Operations Backend that you can use to refund any charged one-time payment or recurring payment.

    Introduction

    Refunds are a common part of any e-commerce business—whether you're dealing with cancellations, product issues, or customer dissatisfaction. With circuly, refunds can be managed efficiently while giving you full control over what gets refunded and how much.

    circuly not only handles the transactional communication triggered by the refund but also allows you to customise the refund amount, taking into account factors like delivery costs, usage time, or repairs.

    Tip: This process can also be automated using circuly’s API. See our API docs for more.

    Article overview

    • Overview
    • Payments that can be refunded
    • Checking whether a payment can be refunded
    • Choose what to refund
    • Refunding the same invoice more than once
    • Step-by-step guide for circuly users

    1. Payments that can be refunded

    Refunds can be processed for:

    • Recurring payments
    • One-time payments (e.g., initial payment, shipping costs etc.)
    • Buyout payments

    2. Checking whether a payment can be refunded

    You can only refund payments that have already been charged. If a payment is uncharged or scheduled for the future, the Refund option will be disabled (greyed out).

    To check charge status:
    Look at the "Paid" column in the Invoices tab.

    If the column isn't visible:

    • Click on the eye icon (top-right corner of the table)
    • Check the box for "Paid" to enable the column

    3. Choose what to refund

    Once the refund window is open, every line item on the invoice—the product itself, shipping, insurance, and so on—is listed separately, with its own quantity, price, and refund amount field.

    Option 1: Full refund

    • Switch on the Full refund toggle to refund every line item at its full amount in one action.

    Option 2: Refund specific line items

    • Leave "Full refund" off and check the box next to the line item(s) you want to refund.

    Option 3: Custom (partial) amount

    • With a line item checked, edit the value in its Refund amount field to enter any amount up to what's still refundable on that line.
    • Useful when deducting delivery, repair, or other costs, or refunding only part of a period.

    The window totals show:

    • Total refund—what you're about to process now
    • Refundable amount—the maximum still available for that line item

    4. Refunding the same invoice or order more than once

    If you need to do another refund on the same invoice you can do so as long as there is an amount connected to it that hasnt already been fully refunded.

    • The window will show what's already been refunded and what's still refundable, per line item.
    • A line item that has been fully refunded is greyed out and can no longer be selected.
    • A line item with a remaining balance stays selectable, and can be refunded again—fully or partially—as many times as needed until nothing is left on it.

    5. Step-by-step: How to process a refund

    Step 1: Find the invoice

    • Go to the Invoices tab in your circuly Hub
    • Click on the Invoice ID (coloured text) to open the invoice detail view

    Step 2: Open the refund window

    • Click the Refund invoice button in the invoice window

    Step 3: Choose what to refund

    • Toggle Full refund ON to refund everything, or
    • Check the line item(s) you want to refund and, if needed, edit the Refund amount field to enter a custom value.

    Step 4: Add a message to customer (optional)

    Use the Message to customer field to add a note for the refund email.

    Note: This will only show in the refund email if your Refund Invoice email template includes the variable {{description}}.

    Final step: Confirm refund

    • Double-check the refund amount (displayed on the Refund € button)
    • Click Refund to complete the process

    Once processed:

    • The payment status updates to refunded
    • A Refund Invoice is emailed to the customer

    Read more
    Payments
    Recurring payments
    Change payment method

    Updating/Changing the Customer Payment Method

    A payment method can be changed and updated in the circuly Operations Backend. Learn more.

    Introduction

    In any subscription business, it's common for customers to update their payment methods — whether due to an expired or stolen card, switching banks, or simply wanting to manage payments more efficiently.

    circuly simplifies this process by allowing both internal users and customers to change the stored payment method. Once an order is placed and a payment is successfully processed, circuly creates a payment profile. This profile stores the payment method in the circuly Hub and is used for all future charges — including recurring and one-time payments.

    Feature Overview

    circuly supports two ways to update payment methods:

    • By a circuly User: Internal users can manually trigger a payment method update via the circuly Hub.
    • By the Customer: Customers can update their payment details themselves through the Self-Service Portal.

    This dual-option setup ensures flexibility and reduces support overhead.

    Step-by-Step Guide

    For circuly Users

    To initiate a payment method update from the backend:

    • Go to Orders in the circuly Hub
    • Go to the relevant order from the Order List > Click on the three-dot menu to see the menu options.
    • Choose Update Payment Method from the dropdown options.
    • In the pop-up window > Click on the Click here text to open the update page.
    • On the next screen, choose a new payment method and enter the updated details.

    For your customers

    Review this article to see how customers can change the payment method on their own from the self-service portal.

    Additional Settings

    There are no special settings required to enable this functionality. However, make sure:

    • The Self-Service Portal is activated and accessible to customers.
    • Your shop system and PSP (Payment Service Provider) integration supports dynamic payment method updates.

    What Happens Next

    Once a new payment method is saved:

    • Future charges (recurring or one-time) will use the new payment method automatically.
    • The updated payment method will be visible in the Order Overview under the Orders tab in the circuly Hub.
    • For transparency and audit purposes, all changes are recorded in the system.

    If a payment fails due to an outdated method, prompting the customer to update it via the CSS can prevent churn and reduce failed transaction rates.

    Read more
    Customer Self Service
    Account & Setup
    Download invoices in the circuly Self-Service Portal.

    Downloading Invoices in the Customer Self-Service Portal

    Your customers can download their invoices from the Customer Self-Service Portal, thus eliminating the need for them to get in touch with your customer support. Learn more

    Downloading invoices in the Customer Self-Service Portal

    Your customers can download their invoices from the Customer Self-Service Portal thus eliminating the need for them to get in touch with your customer support. 

    To enable your customers to download their invoices make sure that you have the right setting enabled. 

    Go to Settings > Customer login > FEATURES > Make sure that the Hide invoice download switch is disabled

    When enabled the icon to download the invoices is not available in the Self-Service Portal. 

    Educate your customers on how they can download invoices from their Self-Service Portal by writing an article on including a FAQ section on your website. 

    Here’s how the process looks for your customers:

    • Your customer logs in to their Self-Service Portal
    • On the homescreen they can navigate to Your Invoices and click on the download icon to download the invoices.

    Note: Only invoices that have been settled can be downloaded. Upcoming invoices are not displayed in the Customer Self-Service Portal. 

    Read more
    Checkout
    Account & Setup
    checkout

    Checkout Options and Checkout Limitations

    There are several options and settings available in the circuly Operations Backend to customise your checkout page. Learn more.

    Introduction

    The checkout is perhaps one of the most important step in any online shopping experience. With circuly you can not only customise the branding of the checkout but you can also decide how your checkout behaves.

    Feature Overview

    The available customisations are categorised into two groups: Options and Limitations. As the name suggests, Options allow you to enhance the checkout experience by adding features such as use of Google places, credit check, stock check etc. Limitations let you set specific restrictions in the checkout process such as minimum cart value to be reached for free shipping, maximum number of items per SKU permitted to proceed to payment page etc.

    Let's understand each of these options and limitation in detail.

    • Check system stock - The circuly system performs a stock validation and checks if the desired product is in stock. If the product is not in stock, an error message is displayed and the customer is prevented from proceeding to the payment page. Enable the switch for this setting if you would like to have the option of stock validation in your checkout. This feature is useful if you have limited stock availability and do not want the hassle of refunding orders manually.

    • Limit number of total cart items - This setting enables you to add a limitation on the maximum number of items allowed to proceed to checkout and finalise the order.

    • Limit number of items per SKU - This setting enables you to add a limitation on the maximum number of items allowed per SKU to proceed to checkout. 
    • Allowing the use of voucher codes - If you use vouchers you can enable the toggle for this setting to allow the use of voucher codes on the checkout.
    • Allow selecting delivery date - decide if you want to offer your customers the possibility to select a delivery or pick up date on the checkout page. Prerequisite: Set up the availability calendar.
    • Mandatory date of birth - You can make the date of birth input field a mandatory field like the name and address field. We recommend making the date of birth field mandatory if you use CRIF to do credit checks as CRIF requires date of birth to perform credit checks. 
    • Set minimum age - You can define a minimum age that a visitor needs to have to proceed to the payment page when placing an order. The circuly system checks the age of the visitor against the value inserted in the date of birth input field. 
    • Validate phone number - when you enable this switch the visitor is prompted to add a valid phone number in the phone number input field.
       
    • Allow company name - when you enable this switch an additional input field is added to the checkout where the visitor can add their company name. 
    • Mandatory company name - when you enable this switch the company name input field is converted into a a mandatory input field. 
    • Allow VAT number - enable this switch if you want to offer your customers the possibility to add their VAT number on the checkout page. 
    • Mandatory VAT number - enable this switch if you want to make the VAT number input field a mandatory input field. The customer will be prevented from going to the payment page if they do not add a value in this field. 
    • Limit delivery countries - enable this switch if you want to offer delivery services only in a few selected locations. 
    • Allow different shipping address - enable this switch if you want to allow your customers to add a different shipping address than the address already added on the checkout. 

    Displaying information on the checkout and checkout Overview page. You can choose to display or hide information on the checkout page. Given below are few options that can be customised.

    • Show subscription start date - this setting, as the title suggests, enables you to decide if you want to show the subscription start date on the checkout and order overview page.
    • Show cart sum - decide if you want to display the sum of the cart.

    • Show subtotal - decide if you want to display the subtotal (that is the price before any shipping or tax calculation) on the checkout page.

    • Show purchases sum - decide if you want to display the purchases sum. 


    • Show subscription sum- decide if you want to display the sum of all subscriptions on the checkout page.


    • Show shipping cost - decide if you want ti display the shipping costs on the checkout page. 
    • Show total - decide if you want to show a total amount on the checkout page. 
    • Show shipping methods - Display shipping methods on the checkout page. Prerequisites: Set up the shipping methods.
    • Show legal terms above buy button - Decide if you would like to display the legal terms above the buy button and change its position. 
    • Show apple warning - you can decide to display a warning message when checkout is on safari browser on Apple devices for PayPal issues. 

    Checkout options

    • Use Google places - enable your customers to search for their address when filling out the address input field.
    • Hide street number - enable this switch if you want your customer to add the street number and house number in the same inout field.
    • Delivery countries - select a list of countries that will be displayed on the checkout page as possible delivery locations.
    • Free shipping cart value - define a free shipping cart value. The circuly system will calculate the total and add shipping charges base don the subtotal. If the cart qualifies for free shipping (as per the value inserted here) shipping costs will bot be charged. 
    • Delay charge in checkout - you can decide to delay the initial charge when an order is laced and instead charge it at a lter point manually. 

    Options for cart limitation

    • On your own product page - limit your "add to cart button" by limiting the quantity to be added to one. You can also use visual aids (such as greying out the add to cart button after the maximum amount has been added) to make it easily recognisable for your visitors.

    If you would  like to limit your cart and have some limitation logics, we recommend doing so on the product page level with the support of your developers if you do not use the circuly cart.

    • Via the circuly settings: if you are using the circuly cart, you can also use our settings to limit the amount of items / SKU per cart. Continue reading the article for settings available in circuly.

    NOTE: You still may want to apply the above mentioned visual suggestions on your product page to avoid confusion. 

    There are several options and settings available in the circuly Operations Backend to customise your checkout page.

    Step-by-step guide

    To access the checkout limitation and options, in your circuly Hub > Go to Settings > Checkout and customise the given settings as per your business needs.

    Use cases for using limitations & options

    • Pilot phase - in the pilot phase you may have limited units of a product but may still want to have a large test group. 
    • Limiting fraud or suspicious business activities - for some people subscription businesses make it possible to acquire large quantities of product at a low (initial) price. In order to prevent such cases, products can be limited based on SKU or quantity so that a prospect with large units of products is prevented from placing the order.
    • Product / target group based limitations: another use case can be to show a custom message on the product page if the visitor has added more than x number of items in the basket or given any other indication of being a business customer. For B2B cases you ideally want to negotiate differently.
    Read more
    Orders
    Account & Setup
    failure in order placement

    Common Reasons Why Your Customers Are Prevented From Placing an Order on Your Checkout

    There are multiple reasons why a visitor is prevented from completing the checkout process. Learn more.

    Introduction

    Given below are common reasons why your customers are prevented from placing an order

    1. Checkout not possible without date of birth

    A prospective customer is prevented from completing the checkout if they do not fill the date of birth input field even if you have the setting for making the date of birth as a mandatory field disabled. 

    Explanation: One of the many custom checkout field options available on the circuly white-label checkout is Date of Birth. You can decide to make the field a mandatory or an optional field depending on your business case. 

    The date of birth custom field option is by default disabled and can be enabled If you want to ask for the date of birth of the customer on the checkout page in the Settings tab. 

    However you might have noticed that your customers are prevented from proceeding to the payment page if they do not add their date of birth in the date of birth input field, even though it is not mandatory (that is the setting for making date of birth a mandatory field is disabled).

    This happens if you use CRIF to do credit checks on your checkout page to prevent fraud and to check the credit worthiness of the customer. 

    Date of birth is a mandatory piece of information that CRIF needs to perform the credit check.

    That is why it is recommended to make the date of birth field mandatory, if you use CRIF to do credit checks.

    2. Checkout not possible if the customer has reached maximum number of allowed cart items. 

    Your customer is prevented from completing the checkout and advancing to the payment page if they have reached the limit of the maximum number of allowed items in the cart. 

    Explanation: Your customers will be prevented from completing the checkout if they have reached the limit for the maximum number of items allowed in the cart. 

    This happens when you’ve defined a value for the maximum number of cart items that a customer can proceed with to the payment page in your Settings. 

    3. Checkout not possible if the customer has reached maximum number of allowed cart items of a particular SKU. 

    Your customer is prevented from completing the checkout and advancing to the payment page if they have reached the limit of the maximum number of allowed items per SKU in the cart. 

    Explanation: Your customers can be prevented from completing the checkout if they have reached the limit for the maximum number of items allowed in the cart per SKU 

    This happens when you’ve defined a value for the maximum number of items allowed in the cart per SKU that a customer can proceed with to the payment page. 

    4. Checkout not possible if the customers chosen payment method fails to be charged. 

    The customer is unable to place an order if there are problems with the payment method of the customer such a insufficient card balance, wrong card details etc. 

    Explanation: when your customer adds their payment details in the payment input field and clicks on the checkout button, circuly sends a payment token to your connected payment service provider to charge the payment. 

    The payment service provider then tries to charge the payment. If the payment service provider is unable to do so the customer is not able to place an order due to problems with their chosen payment method. 

    The reason why the payment service provider is unable to charge the payment can vary from insufficient balance to wrong information. 

    When a payment fails, the customer gets either of the following prompt: 

    • Your card was unfortunately not accepted.
    • An error occurred.
    • Unable to proceed with the checkout

    When an order fails due to payment reasons, you will not be able to see it in the circuly Operations Backend. You can however see an overview of your failed orders in connected your shop system. 

    5. Checkout not possible due to stock limitations

    The customer is unable to place an order and gets an error message of insufficient stock. 

    Explanation: circuly enables you to prevent your customers from proceeding to the payment page if they have a product in the cart that is not in stock. 

    There is a setting available in the Settings tab that can be enabled if you want to prevent customers from placing orders that you cannot fulfils due to stock limitations

    The setting is by default disabled and can be enabled. 

    6. Checkout not possible due to wrong age

    A customer will be prevented from proceeding to the payment page if you set a minimum age for placing the order in your Settings tab

    When a customer enters their date of birth on the checkout page, the circuly system checks the year of birth against the minimum age setting. If the age is below your defined number, then the customer is prevented from proceeding to the payment page. 

    7. Checkout not possible due to invalid number

    A customer can be prevented from proceeding to the checkout if they’ve inserted an invalid number in the phone input field. Enable the setting for validating phone number under Checkout in the Settings tab.

    8. Checkout not possible if customer doesn't fill in the mandatory fields. 

    Certain fields like Name, address and contact details are mandatory fields. In order to advance to the payment page, these fields must be filled.

    There are additional fields such as company name and  VAT number that can be added to the checkout and can also be converted into mandatory fields.

    When these fields are converted into mandatory fields, the customer on the checkout will be prevented from proceeding to the payment page if these fields are left blank. 

    To access the additional fields > Go to Settings > Checkout > PERSONAL INFORMATION > Enable the switch for the additional fields you would like to add to the checkout > Then decide if you would like to convert them into mandatory fields. 


    9. Checkout not possible due to payment failure.

    Customer doesn't get to the order confirmation due to payment failure.

    Read more
    Products
    Product collections

    Create a Product Collection

    Product collections enables you to group products together and have common functions, actions, logic and rules for these group, aka collection instead of having a separate rule for each product.

    Introduction

    E-commerce businesses rarely sell just one type of product as a subscription. As soon as different product categories come into play, various factors—like tax rates and shipping costs—start influencing the final price a customer pays. For example, smaller bike components might qualify for standard parcel delivery, while larger items like bike tires or the bike itself may have different tax rules and higher shipping costs. Manually managing these variations for each product can quickly become complex and time-consuming.

    To simplify this process, circuly introduces a feature that allows businesses to group products based on shared rules, logic, or actions. Instead of setting tax rates and shipping costs individually for every product, they can be applied at the group level. This ensures that when a customer reaches checkout, the correct taxes and shipping costs are automatically calculated based on the product collection—streamlining setup, reducing errors, and making it easier to manage large inventories.

    In this article, we’ll explore how this feature works, how to set it up, and how it helps businesses optimise their pricing calculations effortlessly.

    Feature Overview

    In circuly, products can be grouped together into a Product Collection. This allows businesses to apply shared tax rates, shipping costs, and other relevant rules to multiple products at once, rather than configuring them individually.

    - Key Concepts

    • Product Collections: When products are grouped together, they form a collection known as a Product Collection.
    • Mapping Products to Collections: Once a collection is created, products can be added to it. This process is referred to as mapping products to collections.
    • Default Collection:
      • Initially, when no custom collections exist, all products are assigned to the default collection by default.
      • The default collection cannot be deleted or edited, ensuring that every product is always part of a collection.
      • If a product is not explicitly mapped to any other collection, it remains in the default collection, and the tax and shipping rates set for the default collection (if configured) will apply.

    By structuring products into collections, businesses can automate tax and shipping calculations, making pricing management more efficient and reducing manual effort.

    Step-by-step setup guide

    • Define and set up product collections
    • Map products to the product collection

    - Define and setup product collection

    In your circuly Hub > Go to the Products Tab > Navigate to the Taxes tab > Click on the + PRODUCT COLLECTION button.

    In the Create product collection window > Give a Title, and a description to your collection so that you can differentiate it from other collections > Click on the Submit button to save your collection.

    Note: You do not need to define the Tax code as it is only relevant for you if you are based or operate in the US and use the Taxjar integration.

    The collection is then added to the Product Collections list along with the option to assign the tax percentages.


    - Map products to the product collection

    By default all products are mapped to the default collection.

    To reassign products to a different collection > Under the Products tab > Navigate to the Products > Select products to map to a collection by checking the check box > And click on the Map to product collection button.

    • In the Map to product collection window > Select the right collection from the dropdown menu > Click on the Map to collection button. 

    The selected products are now mapped to your chosen product collection.

    Next steps

    If you want to define the tax rules and shipping costs for each collection, follow these guides:

    Read more
    Account & Setup
    Checkout
    Shipping methods on checkout

    How Do Your Customers See the Shipping Options on the Checkout Page

    Here’s how the shipping options are displayed on the checkout page.

    Once you've set up your shipping methods in circuly, your customers will see the appropriate options directly on the checkout page. This ensures a smooth and tailored experience for every customer based on their country and language preferences.

    Dynamic Shipping Options Based on Country

    When a customer reaches the checkout and selects their shipping country, circuly dynamically displays the available shipping methods associated with that country.

    How it works:

    • The customer selects their country in the Country dropdown.

    • The “Choose a shipping method” section automatically updates with the shipping options configured for that country.

    This allows you to provide region-specific options (e.g., DHL Germany, PostNL Netherlands) and costs.

    Shipping Method Display Based on Language

    If your checkout page is available in multiple languages, shipping information will be shown in the language selected by the customer.

    Important Setup Note:

    When configuring Shipping Methods in the circuly Hub:

    • You must add translations for each language you offer.
    • Under Language and Translations, define the Title and optionally the Description for each shipping method in every supported language.
    • These translations will be shown directly on the checkout page.

    If translations are missing for a selected language, the shipping method might not display correctly or may appear in the fallback/default language.

    Next Steps

    To ensure a seamless multilingual checkout experience:

    • Review all your Shipping Methods.
    • Add translations for Title and Description under each language you support.
    • Verify how they appear in the checkout for each country-language combination.

    For help setting up shipping methods and logic, check out the article:
    How to Configure Shipping Methods in circuly

    Read more
    Customer Self Service
    Login to the Customer Self-Service Portal

    Login Process for the Customer Self-Service Portal

    Here's how your customers can log in to the Self-Service Portal.

    Introduction

    The circuly Self-Service Portal (CSS) gives your customers full control over their subscription—allowing them to manage payments, view invoices, update details, and more.

    To maintain security, access to the portal is limited to the email address used during checkout or order placement.

    Step-by-Step Guide: How the Login Process Works

    Step 1: Access the Self-Service Portal

    Customers can access their portal by visiting your company’s URL and clicking on a link that indicates that its a portal for the customer.

    Example: See how Strollme guides customers to their Self-Service Portal below.

    Step 2: Enter Email Address

    On the login screen, the customer enters the same email used at checkout in the email input field.

    Step 3: Receive One-Time Password (OTP)

    If the email matches a subscription in your system, the customer receives a one-time password via email.

    Step 4: Log In with OTP

    • Copy the OTP from the email and paste it into the login page.
    • Alternatively, click the login link provided in the email to access the portal directly.

    Step 5: Explore the Portal

    Once logged in, the customer will see an overview of their subscriptions, payments, and more.

    What customers can do in the Self-Service Portal

    Read more
    Customer Self Service
    Reporting issues from the Self-Service Portal

    Reporting an Issue From the Customer Self-Service Portal

    Here's how your customers can report issues from their Self-Service Portal.

    Introduction

    The circuly Self-Service Portal enables customers to independently manage various aspects of their subscriptions — from downloading invoices and updating personal information to submitting cancellation requests. Among these features, one essential function is the ability to report issues directly through the portal.

    This functionality creates a clear line of communication between the customer and your support team without requiring manual outreach via email or phone.

    Feature Overview

    The Report an Issue feature allows customers to send a support request directly from their subscription view. The request is forwarded to your team’s support email address, ensuring you’re notified and can respond promptly.

    Key highlights:

    • Customers can submit a support message directly from the portal.
    • An inline confirmation message is shown once the issue is submitted.
    • The message is delivered to your support inbox.
    • No additional configuration is needed to enable this feature — it’s part of the default portal setup.

    Note: The inline confirmation message that appears after sending the issue report is hard-coded. If you would like to change this message, you can request it via a service desk ticket to the circuly Customer Success team.

    How It Works (Customer View)

    Here’s how the issue reporting process looks from a customer’s perspective:

    • The customer logs in to the Self-Service Portal.
    • Under the Your Subscriptions section, they open the action dropdown next to their subscription.
    • They select Report an issue and click CONFIRM.
    • A new window appears with a text input field labeled Your Message.
    • The customer types a message describing the issue and clicks SEND.
    • An inline confirmation message appears, and the request is sent to your support email.

    No further action is needed from the customer unless your team follows up for more information.

    Summary

    The Report an Issue option in the Self-Service Portal provides a convenient and direct way for customers to get help with their subscription. By routing the message straight to your support inbox, it ensures quick visibility while keeping the experience frictionless for the customer.

    Let me know if you'd like to include troubleshooting tips or add internal response suggestions for your support team.

    Read more
    Customer Self Service
    Accessing reported issues

    Access issues reported by customer from the customer portal

    Your customers have the possibility to stay in touch with you via the Customer Self-Service Portal and report issues. Learn more.

    Introduction

    The Customer Self-Service Portal (CSS) empowers your customers to manage their subscriptions with ease—and that includes the ability to report product issues directly, without needing to contact your support team manually.

    This feature not only improves the customer experience but also reduces operational load on your Customer Success team by automating issue intake and tracking.

    By default, the option to report an issue is enabled and visible in the subscription action dropdown in the CSS. If you prefer not to offer this functionality, you can disable it in your circuly Hub settings.

    Feature Overview

    Here’s what happens when a customer reports an issue through the CSS:

    • The issue is submitted through a structured form.
    • circuly sends an automated email notification to the email(s) you’ve specified under the Customer care email address setting.
    • The issue report also appears in the Email History tab in the circuly Hub for record-keeping and internal follow-up.

    Why This Matters

    • Customers can raise concerns without needing to email support.
    • Your team is notified automatically—no manual monitoring needed.
    • All issue reports are logged and searchable.

    Step-by-Step Guide

    How Customers Report Issues

    In the Customer Self-Service Portal, there are two ways a customer can report a product issue. For full instructions and screenshots, refer to your guide on how customers can use this feature.

    By default, this option is:

    • Visible in the CSS
    • Accessible from the action dropdown under each subscription

    How to Disable Issue Reporting (If Needed)

    If you do not wish to allow customers to report issues via the CSS, you can toggle the feature off:

    1. Go to the circuly Hub
    2. Navigate to:
      Settings > Self-Service Portal > Features
    3. Toggle off:
      Allow report issue

    How to Receive and Access Reported Issues

    To ensure you're notified when a customer submits an issue:

    1. Set a Customer Care Email Address
      This is where all issue-report notifications will be sent.
      Go to:
      Company Settings > Base Setup > Customer care email address

    Important: If no email is added here, you won’t receive issue alerts.

    1. Check Email History for Logs
      All email activity is also logged in:
      Email History Tab in the circuly Hub

    To find reported issues:

    • Use the filter or search for the subject:
      "Customer reported an issue"
    • Click the email ID to view the full message or hover over the eye icon for a preview.

    Additional Settings

    Customer Care Email Address vs. Support Email Address

    Customer care email Receives system-triggered notifications like reported issues

    Support emailShown to customers in the CSS as a visible contact option

    Note: If customers email the support address to request a cancellation, no automated flow is triggered.

    To update the Support email address:

    • Go to: Settings > Customer Login > General > Support email address
    • Add a valid email (only one is supported)

    Add a BCC List (Recommended)

    To receive copies of all system-generated emails:

    1. Go to: Settings > Email > General > BCC list
    2. Click the + icon to add each address
      (Repeat the step to add multiple recipients)

    This is especially useful for monitoring communications or archiving.

    What Happens Next

    Once everything is set up:

    • Customers can report product issues independently via the CSS.
    • Your team is notified via email, with the report also logged in the Email History tab.
    • You maintain a clear and centralised record of all reported issues for faster resolution.

    To encourage usage, we recommend proactively informing customers about this feature—e.g., via onboarding emails, FAQs, or in-app prompts.

    Read more
    Account & Setup
    Availability Calendar

    Date picker

    The date picker feature can be used to display a calendar in the checkout. You can use the calendar for either a delivery or a pickup logic for the product or both.

    Introduction

    The Date Picker feature in circuly enables you to provide your customers with the ability to select a delivery or pickup date when finalising their subscription product order on your checkout page. This feature allows for greater flexibility, helping customers schedule deliveries or pickups according to their preferences. Whether you use the calendar for delivery, pickup, or both, the Date Picker enhances customer experience by streamlining the ordering process.

    Feature Overview

    The Date Picker feature allows you to integrate a calendar on your checkout page, where customers can choose their preferred delivery or pickup date. This feature can be customised to suit various needs, including specifying which days are available for delivery, setting limits on the number of deliveries per timeslot, and defining specific times for delivery or pickup. You can also include custom messages to guide your customers through the selection process.

    Key options include:

    • Custom note: Display a personalised note on the checkout page and in the self-service portal.
    • Days availability: Choose the days of the week available for delivery or pickup.
    • Ignore quantity: Decide if there should be limits on how many deliveries/pickups can be scheduled for a given time slot.
    • Lead time: Specify how many days in advance a customer can select a delivery/pickup slot.
    • Quantity: Set the total number of deliveries/pickups available in a given timeslot.
    • Timeslot Days: Determine the number of available slots per day.
    • Timeslot Duration: Define the duration of each time slot.
    • Start and End Time: Control the earliest and latest available time slots.

    Step-by-step setup guide

    Follow these steps to set up the Date Picker and customise the options for your customers:

    • Navigate to Settings > Checkout > Delivery Date.
    • Click on the arrow to expand the section.
    • Enable the switch for Allow selecting delivery date.
    • Custom Note: Add a custom note to be displayed on the checkout page and in the self-service portal. This note can inform customers about specific details like opening hours, special instructions, etc.
    • Date: Select Available Delivery Days. Choose which days of the week customers can select for delivery or pickup. You can exclude weekends or offer specific days only (e.g., Saturday and Sunday).
    • Enable the Ignore quantity switch if you don’t want to limit the number of deliveries/pickups for a given timeslot. If you want to limit the number, set the Quantity value to define the total number of products that can be delivered or picked up per timeslot.
    • Set Lead Time. Define the Lead time by specifying how my days from today the first available timeslot will be offered.
    • Timeslot Days: Set the number of available slots for each selected delivery day (e.g., 6 slots per day).
    • Timeslot Duration: Set the duration for each timeslot (e.g., 2 hours per slot)

    See the image reference below to see how the time slots are displayed when the timeslot duration is 2 hours.

    • Start Time: Choose the earliest time that can be selected for delivery or pickup (e.g., 9 AM).
    • End Time: Choose the latest time available for a timeslot (e.g., 4 PM).
    • After customising all options, click Save changes to apply the settings.
    Read more
    Account & Setup
    Checkout
    Custom fields in circuly checkout

    Custom Fields in Checkout and Where To Find Them

    You can customise the checkout page by adding custom input fields to it. Learn more.

    You can customise the checkout page by adding custom input field to it. Custom fields can be used to collect additional information from your customer besides payment, address and contact details. 

    Possible custom field option in the circuly Operations Backend include:

    • Text - for one-two line sentences. 
    • Text area - for longer text inputs.
    • Dropdown - a dropdown menu with predefined options such as pick-up location.
    • Date picker - a calendar to select a date. Can be used to select pickup date or delivery date.
    • Switch - a toggle that can be turned on/off on a click.

    Custom fields are hardcoded into your checkout. If you want to add custom fields to your checkout, get in touch with your customer success team by creating a ticket in the Support tab.

    Here’s where the data from the custom fields is stored

    All data from custom fields can be accessed from the Orders tab. 

    In your circuly Operations Backend > Go to Orders > Select an Order from the Order List > Scroll down to DETAILS > You’ll find all your custom fields in this section.


    Examples of custom fields:

    1. Strollme

    1. Bugaboo Flex

    Read more
    Orders
    Draft orders

    Creating Manual Draft Order

    The Manual Order feature enables you to manually create orders in the circuly Operations Backend and send the order as quotes to the customer. Learn more

    Introduction

    Typically an order appears in the circuly Hub when a website visitor goes over your checkout page and places an order. The next step is to create a subscription for the order to start collecting recurring payments.  However you also have the possibility of creating orders from the circuly Hub. The Draft order feature in circuly allows you to create an order manually from the circuly Hub. This is especially useful in B2B transactions where you may operate on order-to-quote basis, in-store purchases, or customer service teams placing orders on behalf of customers.

    Feature overview

    In the Orders tab of the circuly Hub, you now have two options to create an order:

    Create Quote

    • Sends your customer a PDF quote + a pre-filled checkout link.
    • The order will stay in Draft until the customer confirms by completing checkout with their payment details.
    • Alternatively, you can confirm the order immediately and use the customer’s existing payment method (or let new customers add one in the Self-Service Portal).

    Create Order

    • Directly creates and confirms an order in circuly without any customer action.
    • Payment will either be charged via the customer’s existing payment method or handled by invoice (the payments needs to be manually marked as setteled incase you chose to settle the payment via invoice)

    This flexibility lets you decide whether you want the customer to complete checkout themselves or create a confirmed order on their behalf.

    Step-by-step guide

    Creating a order or quote

    • In the circuly Hub > Navigate to the Orders tab.
    • Click either +Create quote or + Create order in the to right corner.
    • In the Create window start by adding an item. To do so click on the Add item button.
      • In the Add item window fill in the needed information such as:
        • Selecting the product and the product variant (Note: Only limited number of products are visible in the dropdown menu. Therefore if you can’t find a product, simply type the name of the product in the input field. )
        • Type of subscription: normal, consumable or digital
        • Price & quantity
        • Subscription details such as duration, freuency etc.
      • Confirm your selection by clicking on the Add item button.
      • Repeat the process if you want to add more items to the same order.

    • Continue to the Address section > And add the customer information. 
    • Alternatively you can also choose an existing customer if the order is for a customer whose details already exist in the system. You can do so by clicking on the Select existing customer dropdown option and selecting a customer (You can search via first name, last name or email address).
    • Check the details.
    • (Optional) Add a note for the customer under Remarks (only available when you're creating the order as a quote). This note will be included in the email sent to them.
    • Review all details and click Create to finalise.

    Customer journey

    • If you created a Quote:
      • The customer receives an email (based on the templates Order Offer and Order Offer PDF) with the PDF and a pre-filled checkout link.
      • They complete checkout by adding payment details.
      • Once confirmed, the order automatically moves from Draft to Orders.
      • The customer also receives an Order Confirmation email.
    • If you created an Order:
      • The order is immediately visible under Orders in circuly.
      • If invoice payments are used, invoices can still be sent via circuly, and payments should be marked as settled manually.

    Note: The email templates used to send the email are: Order Offer and Order Offer PDF. Set up the email template before you start using this feature.

    • When the customer clicks on the link, they are taken to the checkout page. All the details on the checkout page are pre-populated. 

    • The customer continues and finalises the order by adding the payment details and proceeding to the Order confirmation page. 
    • The customer also receives the Order Confirmation email when the order has been successfully processed. 

    What happens next

    The status of the order will change from open to completed once the customer has successfully completed the process by adding their payment details on the checkout page. 

    Create a subscription for the order to start collecting the recurring payments.

    Note: You can also work with the circuly API to create manual order. You can find the documentation here. Please keep in mind that this works only for offline payments. If you want to create an order with other payment service providers, kindly write a service desk ticket to our customer support.
    Read more
    Payments
    Charge Initial payment

    Charge the Initial Payment Manually

    Charge initial payment is a feature available in the circuly operations backend that lets you manually charge the initial payment.

    Introduction

    When a customer completes the checkout process and finalises their order by making a payment, an order is created in circuly, and the initial payment is processed. This initial charge corresponds to the amount the customer agreed to on the checkout page.

    However, if you have enabled the "Delay charge in checkout" setting, no payment is processed automatically during checkout. In such cases, the initial payment must be charged manually. This step is essential because, typically, a subscription cannot be created unless the initial payment has been made. This safeguard prevents accidental subscription creation for orders where no payment exists or has not been collected yet.

    An exception to this rule occurs if you have also enabled the "Allow unpaid subscriptions" setting alongside "Delay charge in checkout." This configuration allows you to create a subscription even if no payment has been processed. However, this should be treated as a special case and communicated clearly to all users of the circuly Hub to avoid confusion.

    Feature Overview

    If you have enabled the "Delay charge in checkout" setting, no payment is collected after a customer finalises the order. The payment must be charged manually. To do so you can use the charge initial payment feature available in the circuly Hub that lets you manually charge the initial payment.

    Step-by-step guide

    The option to charge the initial payment can be approached either from the Orders tab or the Customer tab. No matter which way you choose, the result is the same.

    - Charge the initial payment from the Customers tab

    • In your circuly Hub > Go to the Customers Tab > Select the corresponding customer from the Customer list.
    • In the Customer Overview Window > Navigate to Orders > Click on the three dots to display the menu options > Click on Charge initial payment.
    • In the Charge initial payment window > Type a message in the Message to customer input field (Optional). The message will be sent as an in-line text to the customer with the "Payment" email.
    • Confirm your action by clicking on the Charge x,xx € button. 

    - Charge the initial payment from the Orders tab

    • In your circuly Hub > Go to the Orders Tab > Select on the corresponding order from the Order List.
    • In the Order Overview Window > Click on the three dots in the top right corner to display the manu options > Click on Charge initial payment.
    • In the Charge initial payment window > Type a message in the message input field (Optional). The message will be sent as an in-line text to the customer with the "payment"email.
    • Confirm your action by clicking on the Charge x,xx € button. 

    Next steps

    After you have charged the initial payment, you can proceed to create a subscription for the order.

    Read more
    Account & Setup
    Checkout
    Delayed charge

    Delayed Charge or Delayed Initial Payment in the Checkout

    In the circuly Hub, you have the option to delay charges or payments and not charge anything when your customer places an order on your checkout. Learn more about the delayed charge feature.

    Introduction

    Delayed charge is a feature available in the circuly Hub that you can use if you do not want to charge the initial payment in the checkout and instead delay the charge until a later point in time. 

    Currently the option to delay a charge in the checkout or the initial payment is only available if you use the following Payment Service Providers: 


    Here’s when you might want to delay a charge:

    • Limited stock availability - If you are unsure whether you can fulfil the order or not because you don’t have the necessary stock amount and need to order the stock from your supplier first. 
    • Validating the credit worthiness of the customer - If you want to check the credit score of the customer first and based on the credit score decide whether you actually want to fulfil the order or not. 
    • Checking if delivery is possible - If you want to check first whether you can actually deliver your product to the requested area & you need to manually follow up with the customer for the delivery of the product. 

    Good to know

    If you choose to delay the charge during checkout, here’s what happens:

    • The order amount is only reserved on your customer’s bank account—no money is charged immediately.
    • The order will be created in both your shop system and Circuly, but the payment status will show as Payment Required.
    • You won’t be able to start the subscription until the initial payment has been charged.
    • You need to charge the payment manually first before you can create a subscription for the order.

    Why this matters:By default, circuly prevents subscription creation without the initial payment to protect your business from fraud and to avoid unintentionally activating unpaid subscriptions.

    However, if you have internal processes that require creating subscriptions for unpaid orders, circuly allows you to do this via the Allow unpaid subscriptions setting.

    To enable it:Go to Settings > Subscription > Create Subscription > Allow unpaid subscriptions and toggle the switch on.

    Once enabled:

    • You can create a subscription even if the payment hasn’t been charged.
    • circuly will automatically trigger the initial payment once the subscription is created.
    • The customer will receive the Order Confirmation email.

    📢 Be sure to clarify in the Order Confirmation email that it confirms receipt of the order request—not its acceptance. Update your email template accordingly to manage expectations.

    In the Order Overview, you'll also see a new menu option under the three-dot menu: "Charge initial payment"—in case you prefer to initiate the payment manually.

    Step-by-step guide

    Enable the setting

    • Go to SettingsCheckout > End checkout > Enable the switch for Delay charge in checkout.
    • Change the Default payment status to “payment required”. 
    • Navigate to the Email Templates tab and adapt the Order Confirmation email. Make sure you communicate that this is only a confirmation email for order request and not order confirmation. 
    • Optional: adapt the content of your Order fulfilment completed email or your Subscription Activated email. You may want to do this if you officially want to confirm the order to your customer. You can do this either when you are sending out the product to the customer (in the order fulfilment email) or with the subscription activation. Inform your customer that you can confirm the order, that the money has been therefore charged and that the product is delivered or is under delivery.
    Note: The change applies to all orders only after you have activated the associated setting.

    What happens next

    You need to charge the initial payment.

    •  When the Delay charge in checkout setting is enabled, in your Order overview Window under the menu options, you will find a new menu option “charge initial payment”. 
    • Go to the menu option and and charge the initial payment. 
    • Once the initial payment has been successfully charged from your customers’ account, the Payment was successful email will be automatically sent to the customer. 
    • The payment status will then change to paid
    • Continue with your planned fulfilment / subscription process. 
    Note: You can only Create a subscription once the initial payment has been processed. The button/option to so will now we be available to you or you've enabled the Allow unpaid subscription setting.
    Read more
    Email Templates
    Email delivery

    Issues With Email Delivery

    Here are some of the most common reasons for failure in the delivery of emails to your customer. Learn more about email delivery.

    Introduction

    When a transactional email doesn’t reach your customer, it’s important to understand that sending an email and successfully delivering it to the inbox are two separate things. circuly may send the email without any errors, but the customer still might not receive it due to issues on their end or with the email provider.

    This guide helps you determine whether an email was sent and what to do if it wasn’t delivered.

    Step-by-step guide

    Step 1: Check if the email was sent

    Before diving into possible inbox issues, first verify whether the email was actually sent from circuly.

    Option 1: Check via the Email History Tab

    1. In your circuly Hub > Go to the Email History tab.
    2. Enter the customer’s email address in the search bar.
    3. Look for the relevant email and check its status.

    Option 2: Check via the Customer Profile

    1. Go to the Customers tab.
    2. Select the relevant customer from the list.
    3. Open the History tab inside the customer profile.
    4. Look through the list of actions and emails to find the one in question.
    5. Check the status of the email:
      • Success = the email was sent.
      • No status or missing email = it may not have been sent. Try Option 1 again or continue to Step 2.

    Step 2: If the email was sent but not delivered

    If the email status is "Success" but the customer didn’t receive it, the issue likely lies with delivery. Here are the most common reasons and what you can do:

    1. The email landed in the spam folder

    • Ask your customer to check their spam or junk folder.

    2. DNS settings are misconfigured

    • The reverse lookup for your sender email may have failed.
    • Check your DNS records with your email provider to ensure they’re correctly set up.

    3. Using an unsuitable email provider

    • Some providers (e.g., Gmail or Outlook) may block or deprioritise transactional emails—especially those that look repetitive or "promotional."
    • Recommendation: Use a dedicated transactional email service like Mailgun for better deliverability.

    4. External links in your email template

    • Many mail providers filter out emails with external links (e.g., login URLs).
    • A common issue is with one-time password (OTP) emails that include login links.
      • Try removing the link and sending a new version to test deliverability.

    Step 3: Retry Sending the Email Manually (if needed)

    If circuly shows that the email failed to send, you can manually resend the email from the circuly Hub. This helps test whether the issue was temporary or ongoing.

    Final Step: Contact circuly support (if necessary)

    If you’ve verified that:

    • The email was sent correctly,
    • You’ve checked common deliverability issues,
    • And you’re still facing problems...

    Submit a ticket in the circuly Support tab. We’re happy to investigate further or guide you on the next steps.

    Read more
    Payments
    Chargebacks

    Chargebacks in the circuly Hub

    Here's how you can see chargebacks in the circuly Operations Backend.

    Introduction

    What are chargebacks?

    A chargeback is a term used to describe a customers request to reverse a payment by disrupting the charge on their account statement. Chargebacks were introduced to offer customers an easy way to dispute suspicious transactions and to protect them against financial fraud. A chargeback need not always be due to fraudulent activities but can also be due to simple processing errors such as charging the customer twice or sending a damaged product. A customer can file a chargeback with their bank. Once approved, the customer receives the amount back. But merchant have the option of disagreeing with the chargeback and claiming it back. 

    Chargebacks and refunds both involve the return of funds but a major differentiating factor between the two is that for refunds the customer directly gets in touch with the merchant while for a chargeback they contact their bank. The process also tends to be longer for chargebacks and the fees are often significantly higher. 

    How are chargebacks bad for business?

    Chargebacks often come with additional fees which are to be paid by the merchant. Banks and card providers also tend to penalise the merchant if the chargeback ratio becomes too high. 

    How does a chargeback occur?

    When customers place an order through your checkout page, they receive an Order Confirmation email. Additionally, they receive a Payment Confirmation email when the initial payment is successfully charged, as well as subsequent Payment Confirmation emails for recurring payments.

    In some cases, a customer may dispute a payment, claiming they did not authorize it, and request a chargeback. To initiate this, the customer can click the Payment Service Provider (PSP) link included in the Payment Confirmation email. The PSP processes the chargeback request, and once approved, the customer is refunded the payment.

    Feature Overview

    When a chargeback occurs, circuly automatically updates the order and payment status in your system to reflect the chargeback. Here’s how the feature works in detail:

    • In your circuly operations backend, the payment status of the order changes to “chargeback”. 
    • The order is automatically canceled, and the cancellation reason is set to “chargeback.”
    • The asset revenue is updated with the chargeback amount. 
    • If the customer has not received the asset then the subscription status is updated to “cancelled by customer”.
    • If the customer has received the asset then the subscription status is changed to "cancelled by customer" and the customer receives the Order Cancellation email. Additionally the subscription status is changed to pending return and the customer receives the return instruction email. 

    - How to identify orders with chargeback in circuly

    Chargebacks can be identified in both the Payments and Subscriptions tabs within the circuly Hub. Here's how to view chargebacks in each section:

    • Payments Tab
    • Subscriptions Tab

    Chargebacks in the Payments tab

    To see the chargeback > Go to the Payments Tab > You’ll see a list of all the payments > Use the filter function to only display payments with the chargeback status. 

    Chargebacks in the Subscriptions tab

    Go to the Subscriptions tab and select a subscription from the Subscription List > In the Subscription Overview Window scroll down to Payments and Recurring Payments

    • When recurring payments are charged back, you can see it in the Recurring Payments section. The status of the payment is displayed as “failed” and the reason for the failed payment is marked as chargeback payment under the Failed Reasons column. (See image)

    Screenshot of the recurring payments to show the chargeback feature

    • When a non recurring payment is charged back, you can see it in the Payments section. The status of the payment is marked as chargeback. (See image)

    Screenshot of the payments to show the chargeback feature

     

    - How to deal with chargebacks

    Follow up with your customer manually to find out why they have initiated a chargeback. Depending on the outcome of the call you can either agree to the chargeback or charge the customer a one-time payment if the chargeback was mistakenly reported.

    Read more
    Products
    Account & Setup
    Tax rules

    Set up Tax Rules

    Set up tax rules in the circuly operations backend.

    Introduction

    If your business ships products within Europe or internationally, understanding how VAT (Value Added Tax) applies is essential. VAT obligations apply whether you're located inside or outside the EU. Additionally, even within a single country—like the USA—tax rates may vary by state. This guide will help you set up taxes properly in circuly to ensure compliant and accurate billing.

    Note: If you're operating in the USA, circuly offers an integration with TaxJar for automated tax calculations. Reach out to the service desk to activate this integration.

    Key concepts

    - Value Added Tax (VAT)

    VAT is a consumption tax charged as a percentage of the value of goods and services purchased by consumers. VAT applies to nearly all goods and services, but different products may be subject to different tax rates depending on their category.

    - VAT regulations for cross-border sales within the EU

    The EU has set a threshold amount for businesses situated within the EU selling to customers in another EU country:

    • If the business generates less than €10,000 in revenue from sales in another EU country, it charges VAT based on the country where it is registered.
    • Once the business reaches the threshold, it must charge VAT based on the country where the customer is located.

    - Factors influencing VAT calculation and application

    As mentioned above, the VAT is calculated and applied on the basis of three things:

    • The category of the product - different products fall under different product categories and are therefore subject to the tax rates of the respective category.

    • The country you plan on shipping to - if the minimum threshold amount is reached then the tax rates of the country you are shipping to apply.

    • Whether or not the threshold amount has been reached - if the threshold amount has been reached then the tax rates of the country you are shipping to applies. If the threshold amount has not been reached yet then the tax rates of the country you are located in apply.

    Note: If you are below the threshold you can choose to apply the tax rates of either the country you are located in or the country you are shipping to. 

    - When tax configuration is not required

    You do not need to configure tax rates if:

    • Your business operates in only one country.
    • You do not have different tax categories for your rental products.
    • Tax rates remain the same regardless of the shipping destination.

    Feature Overview

    With this feature you can set up tax logics that apply to different categories of products based on the different factors that influence it. This features enables you to assign the right taxes to the products. Before you begin setting up the taxes make sure you have set up the following:

    Step-by-step setup guide

    • Prerequisite: Define base country, delivery country and product collection
    • Set up tax rules

    Prerequisite: Define base country and delivery country

    Before getting started with the tax rate set up you need to do the following:

    • Define your base country: The base country is treated as your default country for tax calculation in case the minimum threshold has not been reached in the long-distance shipping country (the country you are shipping to).

      In your circuly Hub > Go to the Settings Tab > Company Settings > Company data > In the Country dropdown menu select your default country > To save your changes, scroll to the bottom of the page and click on the Save changes button. 
    • Define your delivery countries: When you define your delivery country, a new country column is added to the Tax rules tab so that you can assign the tax percentages to the product collections.

      In your circuly Hub > Go to the Settings Tab > Checkout > DELIVERY > Scroll to Delivery countries and select your delivery countries from the dropdown menu > To save your changes click on on the Save changes button. 

    Note: If you do not set up the delivery countries in the Settings, you will only see the tax collection from the country that you have entered in your company address (company settings). As a result you will not be able to set up tax rules in the Products tab for countries that have different tax percentages and where you want to offer shipping.

    Step 1: Create Product Collections

    By default, all products are mapped to the default product collection. If you offer products that fall under different tax categories (e.g., standard vs. reduced rate), you must create new collections.A new tax rule row will appear for this collection under both the base and delivery countries.

    • Navigate to: Products > Taxes
    • Click + Product Collection
    • Enter a title and description
    • Click Create

    A new tax rule row will appear for this collection under both the base and delivery countries.

    Step 2: Assign Tax Percentages

    Now configure tax percentages for each collection and delivery country:

    • For the base country, check the box with the applicable tax rate.
    • For each delivery country:
      • If your revenue from that country exceeds €10,000: Check the box for the correct VAT rate.
      • If below threshold: Leave the delivery country box unchecked — the base country VAT will apply automatically.

    Here’s an example.

    Scenario: Your default country is Germany and you’re shipping to Austria and Norway. In Austria you earn a revenue of over 10.000 euros and in Norway, you’re under the threshold amount.

    How should the tax percentage boxes be checked for the above scenario?

    • For Germany, the highest tax percentage will be applicable for the default category.
    • For Austria (since it is over the minimum threshold) check the box for the tax percentage that is applicable for the default category. 
    • For Norway (since it is below the threshold)  you do not have to check any checkbox. Since the threshold amount has not been reached, the tax rates will be automatically calculated as per the default country.

    Step 3: Map Products to Collections

    To apply the correct VAT logic, map products to the appropriate collection:

    • Navigate to: Products > Products
    • Select the products to reassign
    • Click Map to Product Collection
    • Choose the correct collection from the dropdown
    • Click Map to Collection

    How tax is applied on the checkout page

    • Before Delivery Country Selection:
      • Tax is calculated using your base country rates.
      • An info note alerts customers that final tax will update based on delivery country selection.
    Screenshot of checkout to show the tax rules feature

    • After Country Selection:
      • Above revenue threshold: Tax from the selected delivery country applies.
      • Below revenue threshold: Base country VAT continues to apply.
    Screenshot of checkout to show the tax rules feature

    Important: Tax percentages in circuly are fixed in the system. If your business is enrolled in a special tax program or needs custom rules, contact our service desk for adjustments.

    Configuring your tax rules in circuly allows you to operate compliantly across borders while ensuring customers are charged the correct VAT. With automated logic tied to product type, revenue thresholds, and shipping destinations, you can reduce errors, simplify reporting, and deliver transparency at checkout.

    Read more
    Account & Setup
    circuly privacy policy

    Data Privacy Statement when using circuly

    When using circuly, you need to inform your customers about the use of our services. Please do so in your Privacy Statement by including the following snippet.

    When using circuly, you need to inform your customers about the use of our services. Please do so in your Privacy Statement by including the following snippet. A privacy policy is a document contained on a website that explains how a website or organization will collect, store, protect, and utilize personal information provided by its users.

    This is only a sample for orientation and that we do not guarantee any liability for the legal validity.

    For English version, please see below

    DE - German

    Beschreibung und Zweck

    Auf dieser Website nutzen wir für unseren Checkout und das Subscription Management circuly. circuly ist ein Software-Unternehmen aus Deutschland mit dem Hauptsitz in Deutschland, 33602 Bielefeld, Obernstr. 50, Telefon: +49 176 552 884 77. Hierbei handelt es sich um eine integrierte Software-Lösung, mit der wir verschiedene Aspekte unseres Subscription Management abdecken. Dazu zählen unter anderem: Checkout, Kundenlogin, Rechnungen und Zahlungsabwicklungen, Kommunikation, Returen-Management und Reporting. Diese Informationen werden auf Servern unseres Softwarepartners circuly gespeichert. Sie können von uns genutzt werden, um mit unseren Kunden in Kontakt zu treten und unsere Abo-Leistungen zu erbringen. Alle von uns erfassten Informationen unterliegen dieser Datenschutzbestimmung. Wir nutzen alle erfassten Informationen ausschließlich zur Verarbeitung der (Abo-)Bestellung.

    Rechtsgrundlage

    Die Rechtsgrundlage für die Nutzung der Dienste von circuly ist Art. 6 Abs. 1 lit. f) DSGVO (berechtigtes Interesse). Unser berechtigtes Interesse an dem Einsatz dieses Dienstes ist die effiziente und kundenfreundliche Abwicklung von Abo-Verträgen.

    Empfänger

    Empfänger ist circuly GmbH, Obernstr. 50, 33602 Bielefeld, Deutschland.

    Übermittlung in Drittstaaten

    Durch den Einsatz des Dienstes werden ggf. personenbezogenen Daten in ein Drittland übermittelt. Im Falle einer Übermittlung von personenbezogenen Daten stellt der Anbieter das Schutzniveau der DSGVO durch die Einhaltung der Art. 44 ff. DSGVO sicher. Sofern kein Angemessenheitsbeschluss mit dem Drittland besteht, in dem der Datenimporteur seinen Sitz hat, erfolgt die Übermittlung vorbehaltlich geeigneter Garantien. Bei Rückfragen wenden Sie sich gerne an unseren Datenschutzbeauftragten.

    Dauer der Datenspeicherung

    Die Daten werden gelöscht, sobald sie für die Erreichung des Zweckes ihrer Erhebung nicht mehr erforderlich sind. Darüber hinaus werden die Daten gelöscht, sofern Sie Ihre Einwilligung widerrufen bzw. die Löschung der personenbezogenen Daten verlangen.

    Widerspruchsmöglichkeit

    Sie haben nach Art. 21 Abs. 1 DSGVO jederzeit das Recht, Widerspruch gegen die Verarbeitung Ihrer personenbezogenen Daten einzulegen. Sofern Sie von Ihrem Recht Gebrauch machen, findet eine Verarbeitung zu diesem Zweck nicht mehr statt. Weitere Informationen hierzu finden Sie weiter oben in unserer Datenschutzerklärung unter “Rechte der betroffenen Personen”.

    Vertragliche oder gesetzliche Pflicht

    Es besteht keine vertragliche oder gesetzliche Pflicht für die Bereitstellung der Daten.

    Weitere Datenschutzhinweise via Link

    https://www.circuly.io/data-privacy
    https://www.circuly.io/data-processing-agreement

    EN - English Version

    Description and purpose

    On this website we use the circuly checkout and subscription management software. circuly is a software company based in Germany, headquartered at 33602 Bielefeld, Obernstr. 50, phone: +49 176 552 884 77. This is an integrated software solution that we use to cover various aspects of our Subscription Management. These include: Checkout, customer login, invoices and payment processing, communication, return management and reporting. This information is stored on servers run by our software partner circuly. It may be used by us to contact our customers and provide our subscription services. All information we collect is subject to this Privacy Policy. We use all information collected exclusively for processing the (subscription) order.

    Legal basis

    The legal basis for the use of circuly services is Art. 6 para. 1 lit. f) DSGVO (legitimate interest). Our legitimate interest in using this service is the efficient and customer-friendly processing of subscription contracts.

    Recipient

    The recipient is circuly GmbH, Obernstr. 50, 33602 Bielefeld, Germany.

    Transfer to Third Countries

    Through the use of the service, personal data may be transferred to a third country. In the event of a transfer of personal data, the Provider shall ensure the level of protection of the DSGVO by complying with Art. 44 et seq. DSGVO. If there is no adequacy decision with the third country in which the data importer is based, the transfer is subject to appropriate safeguards. If you have any queries, please contact our data protection officer.

    Duration of data storage

    The data is deleted as soon as it is no longer required to achieve the purpose for which it was collected. Furthermore, the data will be deleted if you revoke your consent or request the deletion of the personal data.

    Possibility of objection

    In accordance with Art. 21 (1) DSGVO, you have the right to object to the processing of your personal data at any time. If you exercise your right, processing for this purpose will no longer take place. Further information on this can be found above in our data protection declaration under "Rights of data subjects".

    Contractual or legal obligation

    There is no contractual or legal obligation to provide the data.

    Further data protection information via link.

    Further data protection information via link

    https://www.circuly.io/data-privacy
    https://www.circuly.io/data-processing-agreement

    Please also make sure, that you include your Privacy Statement into the circuly Checkout. To do so, paste the URL to your Privacy Statement into the settings in the circuly operations backend. If you do not have access to that setting, please create a service desk ticket with the link to your privacy statement.

    Read more
    Orders
    Wrong product

    Process Orders With Wrong Product

    Here's how you can process orders with a wrong product.

    Mistakes happen—sometimes customers order the wrong product, or the wrong product is shipped to them. Depending on whether the product has already been sent and whether a subscription has started, there are different ways to resolve the issue using the circuly Operations Backend.

    Introduction

    Wrong product situations can occur either due to customer error or operational mishandling. circuly offers several workflows to correct these errors depending on the order and subscription status. This article outlines the different cases and the recommended actions.

    • Case 1: the product has already been sent. 
    • Case 2: the product has not been sent yet. 

    Here’s what you can do about it:

    Case 1: Product Has Already Been Sent

    Scenario 1.1: Subscription Has Already Started

    Subscription Status: Active

    • In this scenario, initiate a product swap to replace the incorrect item.
    • A new order will be created, and the current subscription’s status will be set to Pending Replacement to trigger the return process for the incorrect item.
    • This keeps the subscription active while you manage the return and replacement.

    Do not manually cancel the order or set the subscription to "pending return" before swapping, as swap/replacement is only available for active subscriptions.

    Scenario 1.2: Subscription Has Not Yet Started

    • In this case, you should still recover the incorrect product.
    • Since swaps are only possible for active subscriptions, the first step is to start the subscription.
    • Then, initiate the swap process, which will create a new order and set the original subscription to Pending Return.

    Case 2: Product Has Not Been Sent

    If the product has not yet left your warehouse, here’s what to do:

    • Stop the shipment immediately using your shipping partner's tool.
    • Determine the issue:
      • Was it the wrong product (SKU mismatch)?
      • Or the wrong variant (serial number issue)?

    Once identified, you can either:

    Option 1: Edit the Order Item

    Use this if the wrong product, SKU, duration, price, or frequency needs to be corrected.

    To enable this option, go to: Settings > Orders > ORDER and toggle on Allow order item editing.

    Option 2: Replace the Serial Number

    Use this if the product is correct but the wrong serial number was assigned.

    • Start the subscription first.
    • During the subscription creation, enter the correct serial number for the product that will be shipped.
    Read more
    Integrations
    Tool integration

    Connect Any Tool to circuly

    With circuly you can export data from the circuly operations backend and plug it into a tool of your choice. Here's how you can connect any tool to circuly

    With circuly you can export data from the circuly operations backend and plug it into a tool of your choice. The best way to do this is via Zapier where you can also create automations. 

    If you decide to use Zapier, then the first thing you need to do is to make sure that the tool you want to send information to from circuly is available on Zapier. 

    Webhooks in circuly

    circuly also provides you with the option of using webhooks to take data out of circuly and plug it into a tool of your choice to create automations. You can use an API endpoint of our choice or work with Zapier (our recommendation is to use Zapier) to make two apps talk to one another.

    About Webhooks

    Webhooks are automated messages sent from one app to another in case something happens or something is updated/changed. It’s a way for different tools to “communicate” to each other and get automated information when something new happens. With webhooks you can push data from one app to another. 

    Here’s a simple analogy from Zapier about Wehbooks

    “There are two ways your apps can communicate with each other to share information: polling and webhooks. As one of our customer champion's friends has explained it: Polling is like knocking on your friend’s door and asking if they have any sugar (aka information), but you have to go and ask for it every time you want it. Webhooks are like someone tossing a bag of sugar at your house whenever they buy some. You don't have to ask, they just automatically punt it over every time it's available.” 

    Using webhooks with Zapier

    When you use Webhooks there’s a sender that send the data and a receiver that receives that data. So there is a place where the action is “triggered”, and a place this action goes to, to convey that something has happened. 

    You can use Webhooks to create all sorts of automations. You can use an API endpoint of our choice or work with Zapier (our recommendation is to use Zapier) to make two apps talk to one another.

    There’s a lot of room for creativity when it comes to creating automations. The automations you make depends on what exactly you want to automate. Based on that you can think what information you will need from a tool to make that automation work. 

    Note: Webhooks by Zapier is only available to Zapier users on a paid plan. 

    Requirements

    Create a Zapier account - to work with zapier, you need to create an account. 

    Create an account on the tool you want to use - you also need to create an account on the tool you want to use with Zapier. 

    Understanding what you need

    With webhooks you first have to figure out what you want to automate and the information you will require to automate it. Then you need to match it with the information that is available and can be used to create the automation. 

    Example

    Connecting a shipping tool (we’re using Easyship as an example) to circuly via Zapier and using webhooks to transfer data to the shipping tool. 

    Overview

    • Set up trigger by selecting Webhooks by Zapier > A URL will be generated by Zapier > Copy the URL. This is the URL where the information will be sent to everytime there is something being changed or updated. 
    • Go to your circuly operations backend and create a Webhook > Paste the URL from Zapier. Any updates or changes will be sent to this URL. 
    • Search for the tool in the action window while creating a Zap and connect it to Zapier. 
    • Done. Your tool is connected to circuly via Zapier. 

    Detailed steps given below 

    Setup in Zapier and circuly

    • In your Zapier home > Click on the button that says + Create Zap.

    Screenshot of Zapier to connect tool to circuly

    • In the Zapier Editor > Start by giving the Zap a name.

    Screenshot of Zapier to connect tool to circuly

    • In the same window > Search for “Webhook” in the search field > And click on “Webhooks by Zapier

    Screenshot of Zapier to connect tool to circuly

    • Under Events > Select Catch Hook > And click on the Continue button. 

    Screenshot of Zapier to show webhook connection feature in circuly

    • Leave the field Pick off a Child Key blank for now > And click on the Continue button. 
    • Copy the URL given under Your webhook URL

    Screenshot of Zapier to show how zapier works with webhooks and circuly

    • Login in to your circuly Operations Backend > Go to the Webhooks tab > Click on the   + CREATE WEBHOOK button. 

    circuly operations backend screenshot to the the circuly webhook feature

    • In the Create webhook window > Under Event Type select subscriptions > Under Event Code select updated > Give the webhook a Name > Set a Password > Paste the URL that you copied from Zapier into the URL field. 

    Screenshot of how to create a webhook

    Now everytime anything in a Subscription is updated, Webhook will catch that update/change and send it to Zapier.

    Optional: If you have test orders and subscriptions in your operations backend, you can change something in the subscription to test the trigger. But if no change or update has been made in the Subscription at the time you are creating a Zap then the Test trigger button will not lead to any results. 

    • To test the trigger > Go back to your Zapier account > Click on the button that says Test trigger

    screenshot of zapier to test the connection with webhooks

    • If you’ve made any changes in the Subscription, clicking on the Test trigger button will show you that a Request was found

    • If you dont want to make any changes to a subscription > You can also skip the test by clicking on the button that says Skip test.


    •  Then click on the button that says Continue to next step

    Sending data to a tool

    • In the Action window > Search the name of the tool you want to connect (we are using Easyship as an example).  

    Note: Make sure to connect your tool with Zapier. Here’s how it works for Easyship > In your Easyship account > Go to Connect in the left nav bar > Click on + New Integration  > Select Zapier from the list > Click on the Connect button. 

    Once you’ve completed the necessary steps in the tool, go to Zapier

    • Under Event > Select an Event (we are using Create a Shipment as an example) > Choose an account > Click on the Continue button. 

    • Under Set up actions fill in all the necessary details in the given input field. 

    To fill in details, either type in the input field or click on the field to get a list of values that can be automatically taken from the data retired via webhooks. 

    • If everything is right, you’ll get a success message. See image below.

    • Check your shipping tool to see if you’ve received a shipment from zapier. 

    • Done.

    Read more
    Account & Setup
    Subscriptions
    Subscription settings

    Subscription Settings: Explained

    An overview and explanation of the subscription settings.

    Introduction

    Subscription settings in circuly allow you to control how subscriptions are created, activated, renewed, cancelled, and managed. By adjusting these settings in the circuly Hub, you can streamline operations, automate customer journeys, and stay compliant with local regulations.

    This article gives you a complete overview of the subscription-related settings available in circuly, what they do, and when you should use them.

    Feature Overview

    The subscription settings cover areas like:

    • Subscription creation logic (e.g., auto-activation, unpaid orders)
    • Renewal rules (e.g., auto-renewal, max duration)
    • Cancellation policies (e.g., early cancellation, refund automation)
    • Return and reactivation flows (e.g., pending return, reactivate if not returned)
    • Customer communication (e.g., cancellation reasons, notice periods)

    These settings give you granular control over how subscriptions behave throughout their lifecycle.

    Settings and Their Functions

    1. Subscription Metadata

    • Purpose: Add custom fields (e.g., driver’s license, plate number) during subscription creation.
    • Default: 0 (No additional fields)
    • Where to find: Settings > Subscriptions > General > Subscription meta data.

    2. Subscription Start Date

    • Purpose: Automates the default start date when creating a subscription.
    • Default: 5 (start date = today + 5 days)
    • Use case: Matches your delivery window to subscription activation.
    • Note: Only applies to manual subscription creation.

    3. Allow Start Date in Past

    • Purpose: Enables creating subscriptions with a past start date.
    • Default: Disabled

    4. Allow Unpaid Subscriptions

    • Purpose: Allows creating subscriptions even if the initial payment hasn’t been collected.
    • Default: Disabled
    • Use case: For businesses that delay the first charge manually or use invoicing workflows.

    5. Auto Activate Subscriptions

    • Purpose: Automatically creates a subscription when an order is marked as completed.
    • Default: Disabled
    • Use case: For fulfillment flows where you want to skip manual subscription creation.
    • Dependent on: Auto Activate Offset

    6. Auto Activate Offset

    • Purpose: Defines the start date for auto-activated subscriptions.
    • Default: 0 (start date = today)
    • Use case: Add buffer time between order completion and subscription start.

    7. Auto Renew Subscriptions

    • Purpose: Automatically renews subscriptions at the end of their duration.
    • Default: Disabled
    • Options:
      • Renew by original subscription duration
      • Renew by a custom duration (requires enabling below setting)

    8. Custom Auto-Renew Subscription Duration

    • Purpose: Enables setting a custom duration for renewals (e.g., monthly renewal instead of annual).
    • Default: Disabled
    • Use case: Align with consumer protection laws that restrict long-term renewals.

    9. Custom Auto Renew Duration

    • Purpose: Specifies the number of months for custom renewals.
    • Default: 1 (One month)

    10. Maximum Duration

    • Purpose: Sets an upper limit on how long a subscription can be extended through renewals.
    • Default: No limit
    • Use case: Comply with legal or product lifecycle constraints.

    11. Early Cancellation Period

    • Purpose: Defines the window in which customers can cancel without a reason.
    • Default: No value
    • Use case: Mandatory for EU compliance (e.g., 14 days for Germany).
    • Affects: Self-service cancellation flows and refund automation.

    12. Auto Refund Immediately Cancelled Subscriptions

    • Purpose: Triggers refunds automatically when customers cancel within the early cancellation period.
    • Default: Disabled
    • Use case: Avoid manual refunds for legal right-of-withdrawal cases.

    13. Notice Period

    • Purpose: Sets how many days before the end of a subscription a cancellation request must be made.
    • Default: No value
    • Example: If set to 7, cancellations must be made at least 7 days before the end date.

    14. Return Until Period

    • Purpose: Specifies how many days the customer has to return a product after cancellation/swap.
    • Default: 14 days
    • Triggers: Reminder emails and return status tracking

    15. Reactivate Subscription

    • Purpose: Reactivates a subscription if the product hasn’t been returned within the return period.
    • Default: Disabled
    • Use case: Prevent revenue loss from unreturned items.

    16. Reactivate Subscription Period (Days)

    • Purpose: Defines how many days after the Return Until period a subscription should be reactivated.
    • Default: 7 days

    17. Cancellation Reasons

    • Purpose: Allows customers to select a reason when cancelling via the Self-Service Portal.
    • Default: Empty list
    • Types: Normal and Extraordinary cancellations
    • Use case: Understand customer churn and improve retention strategies.

    Final Notes

    These settings give you full control over your subscription logic. You can combine multiple settings to automate processes like:

    • Subscription activation after order completion
    • Enabling early cancellation with automatic refund
    • Managing unreturned products through reactivation flows
    • Controlling renewal behaviour to stay compliant

    Make sure to align these configurations with your fulfillment capabilities, legal obligations, and customer experience strategy.

    Read more
    Customer Self Service
    Refer a friend

    Refer a Friend Feature Setup & Settings

    Refer a friend is a feature that allows your existing customers to get some monetary incentive for encouraging other people to become your customer. Read more

    Introduction

    The Refer a friend feature in circuly allows your existing customers to share unique voucher codes with their friends. When a friend uses the voucher code during checkout, they receive a discount—and the referring customer earns a reward, added to their account balance.

    This win-win setup helps you acquire new customers while rewarding loyal ones.

    Feature overview

    • Customers with active subscriptions (past the early cancellation period) see a Refer a Friend button in the Self-Service Portal.
    • A unique voucher code is generated for each eligible customer.
    • When a friend uses the code during checkout, they receive a discount.
    • The referring customer receives a reward added to their account balance, used toward future recurring payments.
    • Both reward and discount amounts, as well as voucher validity, are fully customisable in the settings.

    Step-by-step guide

    Step 1: Enable the feature

    • Go to the Settings tab in your circuly Hub.
    • Navigate to Refer a Friend.
    • Toggle Enabled to turn on the feature.
    • Define the values:
      • Reward amount: Amount the referring customer receives.
      • Voucher amount: Discount given to the new customer.
      • Valid until days: How long the voucher remains valid (in days).

    Step 2: Set up email templates

    • Go to Email Templates.
    • Scroll to Refer a Friend and click Create Template (choose language if applicable).
    • Also update your Order Confirmation, Invoice, and One-time Transaction templates:
      • Option 1: Reset to circuly’s default templates and adjust branding.
      • Option 2: Manually insert the required HTML code snippet that supports the account balance logic.

    Variables used include: is_account_balance, from_account_balance, and final_invoice_amount.

    Step 3: Inform your customers

    Clearly explain how the reward will be used (account balance, not cashback), and ensure transparency to avoid misunderstandings.

    Customer experience flow

    • A customer with an active subscription logs into the Self-Service Portal.
    • They click the REFER A FRIEND button.
    screenshot of refer a friend feature in circuly operations backend

    • A unique voucher code appears, which they can copy and send to a friend.
    screenshot of refer a friend feature in circuly operations backend

    • The friend applies the code at checkout and enters their email address.
    screenshot of refer a friend feature in circuly operations backend

    • If the email is not already associated with a circuly customer, the code is validated and applied.
    screenshot of refer a friend feature in circuly operations backend

    • The referring customer receives a balance update.
    • This balance is automatically used for future recurring payments and reflected in the invoice.

    Good to Know

    • The feature becomes available only after the early cancellation period is over.
    • The customer balance can only be used for recurring payments, not for new orders at checkout.
    • If the balance exceeds the recurring amount, the remainder is carried over to the next payment.
    • A new column in the Recurring Payments section shows whether account balance was used.

    FAQ

    Q: Can customers use their balance for new checkouts?
    A: No, account balance is only applied to future recurring payments.

    Q: What happens if the balance is greater than the recurring amount?
    A: The surplus remains in the account and is used for upcoming payments until exhausted.

    Q: Why is the feature only available after the early cancellation period?
    A: To reduce fraud and ensure the referring customer remains subscribed for a certain period.

    Read more
    Integrations
    Automation, webhooks, return label.

    Automation With Webhooks and Zapier: How to Generate Return Labels

    You can export data out of circuly via webhooks and create endless automation. Learn how you can create a return label with webhooks using zapier

    About Webhooks

    Webhooks are automated messages sent from one app to another in case something happens or something is updated/changed. It’s a way for different tools to “communicate” to each other and get automated information when something new happens. With webhooks you can push data from one app to another. 

    Here’s a simple analogy from Zapier about Webhooks

    “There are two ways your apps can communicate with each other to share information: polling and webhooks. As one of our customer champion's friends has explained it: Polling is like knocking on your friend’s door and asking if they have any sugar (aka information), but you have to go and ask for it every time you want it. Webhooks are like someone tossing a bag of sugar at your house whenever they buy some. You don't have to ask, they just automatically punt it over every time it's available.” 

    If you want to become a webhooks pro and show off your webhooks knowledge to a colleague (or your boss), we recommend reading this article by Zapier. 

    Test your knowledge after you’re done reading the article by Zapier: How did webhooks get’s it name? 

    But you don't really need to be a webhooks pro to use them. Let’s jump right in. 

    Webhooks in circuly

    circuly also provides you with the option of using webhooks to take data out of circuly and plug it into a tool of your choice to create automations. You can use an API endpoint of our choice or work with Zapier (our recommendation is to use Zapier) to make two apps talk to one another.

    If you decide to use Zapier, then the first thing you need to do is to make sure that the tool you want to send information to from circuly is available on Zapier. 

    As mentioned above a webhooks catches data and send it to a destination every time something is updated or changed. Webhooks only catches the events that are changed or updated (this is relevant for creating zaps and will be discussed later).

    Using webhooks with Zapier

    When you use Webhooks there’s a sender that send the data and a receiver that receives that data. So there is a place where the action is “triggered”, and a place this action goes to, to convey that something has happened. 

    You can use Webhooks to create all sorts of automations. You can use an API endpoint of our choice or work with Zapier (our recommendation is to use Zapier) to make two apps talk to one another.

    There’s a lot of room for creativity when it comes to creating automations. The automations you make depends on what exactly you want to automate. Based on that you can think what information you will need from a tool to make that automation work. 

    Note: Webhooks by Zapier is only available to Zapier users on a paid plan. 

    Requirements

    Create a Zapier account - to work with zapier, you need to create an account. 

    Create an account on the tool you want to use - you also need to create an account on the tool you want to use with Zapier. 

    Creating a return label when a subscription ends

    A return label is a shipping label that’s prepaid and pre-addressed. Let’s see how you can get relevant data out of circuly via webhooks and send it to an app (we’re using Easyship) to creates a return label via Zapier. 

    Understanding what you need

    With webhooks you first have to figure out what you want to automate and the information you will require to automate it. Then you need to match it with the information that is available and can be used to create the automation. 

    IMPORTANT: When you use circuly to manage your subscriptions, a subscription has a start date and an end date. If you do not use any of the auto-renewal features, then active subscriptions go into a “pending return” stage when the subscription end date as arrived. If you use the auto-renewal feature then subscriptions stay active until a customer makes a cancellation request from the customer self-service portal or write an email requesting a cancellation. When that happens, you can approve or disapprove the the cancellation based on whether or not the minimum subscription duration has passed and set it to pending return. You ideally want to generate a return label when a subscription goes into the “pending return” and “pending replacement” state.

    Creating a return label when a customer makes a cancellation request from the customer self-service portal and you have enabled the auto-cancel subscription setting. 

    When a customer makes a cancellation request from the customer self service portal and if you work with the auto-cancel subscription setting, then active subscriptions are immediately and automatically set to pending return and bypass the minimum subscription duration period. 

    When the subscription status is set as pending return, the return workflow is triggered, meaning that the customer has to return the subscription product within a certain time period. 

    It is at this stage that you ideally want to generate a return label and send it to the customer so that your customer can return the product. 

    To create a return label for such subscriptions, follow these steps:

    Steps:

    Step 1: Setup in Zapier and circuly

    • In your Zapier home > Click on the button that says + Create Zap.

    Screenshot of zapier to the automation feature with webhooks

    • In the Zapier Editor > Start by giving the Zap a name.

    Screenshot of zapier to the automation feature with webhooks

    • In the same window > Search for “Webhooks” in the search field > And click on “Webhooks by Zapier

    Screenshot of zapier to the automation feature with webhooks

    • Under Events > Select Catch Hook > And click on the Continue button. 

    Screenshot of zapier to the automation feature with webhooks

    • Leave the field Pick off a Child Key blank for now > And click on the Continue button. 
    • Copy the URL given under Your webhooks URL

    Screenshot of zapier to the automation feature with webhooks

    • Login in to your circuly Operations Backend > Go to the Webhooks tab > Click on the   + CREATE WEBHOOK button. 

    Screenshot of circuly operations backend - Webhooks tab

    • In the Create webhook window > Under Event Type select subscriptions > Under Event Code select updated > Give the webhook a Name > Set a Password > Paste the URL that you copied from Zapier into the URL field. 

    Screenshot of circuly operations backend - Webhooks tab

    Now every time anything in a Subscription is updated, Webhook will catch that update/change and send it to Zapier.

    Optional: If you have test orders and subscriptions in your operations backend, you can change something in the subscription to test the trigger. But if no change or update has been made in the Subscription at the time you are creating a Zap then the Test trigger button will not lead to any results. 

    • To test the trigger > Go back to your Zapier account > Click on the button that says Test trigger

    Screenshot of zapier to show automation with webhooks feature

    • If you’ve made any changes in the Subscription, clicking on the Test trigger button will show you that a Request was found

    • If you dont want to make any changes to a subscription > You can also skip the test by clicking on the button that says Skip test.


    •  Then click on the button that says Continue to next step

    Step 2: Creating a filter

    Webhooks will send information to Zapier every-time something is updated in a subscription which includes all changes to all subscriptions such as subscription extension, subscription renewals, status changes etc.. But you don’t want to create a return label when the subscription is being extended or when a subscription amount is being changed. Therefore you need to set filters. To create a return label, all that you need is the status of the subscription and that’s the filter you can set while setting up your Zap. 

    • In the Action window > Select Filter

    • Under Filter setup & testing > Go to the first option “Choose field” and search for status in the search field > Select Subscription Status from the available list. See image below. 

    •  Under Choose condition > Select (Text) Contains > And under Enter text or insert data > Type pending return. (see image below for reference)

    Testing the filter 

    When you test the filter, you might get the message that Your Zap would not have continued. Reason being that the data webhook is sending to Zapier does not contain a sample for pending return because this was not one of the changes that was made to Subscriptions and caught by webhook. See image below. 

    However this doesn’t mean that the filter doesnt work. If you change the value in the Enter test or insert data field from “pending return” to “active” and click on continue, you’ll see that you know have a success message. See image below.

    You can ignore this and click on continue to move to the next step, that is sending info to your shipping tool.

    Step 3: Sending data to a tool

    • In the Action window > Search the name of the tool you want to connect (we are using Easyship as an example).  

    Note: Make sure to connect your tool with Zapier. Here’s how it works for Easyship > In your Easyship account > Go to Connect in the left nav bar > Click on + New Integration  > Select Zapier from the list > Click on the Connect button. 

    Once you’ve completed the necessary steps in the tool, go to Zapier

    • Under Event > Select an Event (we are using Create a Shipment as an example) > Choose an account > Click on the Continue button. 

    • Under Set up actions fill in all the necessary details in the given input field. 

    To fill in details, either type in the input field or click on the field to get a list of values that can be automatically taken from the data retired via webhooks. 

    • If everything is right, you’ll get a success message. See image below.

    • Check your shipping tool to see if you’ve received a shipment from zapier. 

    Step 4: Send it to your customer

    • To send the details to your customer > Go back into your Zap > In the Action window > Search for the Shipping tool you use > And under Events select Find a Shipment > Click on the Continue button. 

    • Choose an Account > And continue to Set up action
    • Fill in the details in the input field > Click on Continue > Test it if you want or skip the test. 
    • Then add another action to send the shipment to your customer via email > Either select your mailing provider or  Email by Zapier > In the Events field > Select Send Outbound Email > Click on the Continue button. 

    • In the Setu up action window > Fill in all the details that you need to complete the email > Insert the Return Label in the Attachment field > Click on Continue > Test the step of Skip it > Click on the Publish Zap button. 
    • When you’re done, this is how the automation looks. 

    Read more
    Subscriptions
    Reactivate subscription

    Reactivate a Subscription

    Subscriptions can be automatically (when return workflow settings are enabled) and manually reactivated. Learn more about reactivating a subscription.

    Introduction

    In circuly, subscriptions may automatically or manually move into an inactive state when they reach their end date or when a customer initiates a return or cancellation request. However, there are situations where a subscription needs to be restarted—for example, when the customer does not return the product on time, or when you want to reverse a cancellation. That’s where the Reactivate Subscription feature comes into play.

    Feature overview

    The Reactivate Subscription feature allows circuly users to manually restart a subscription that is no longer active but still eligible for reactivation. When a subscription is reactivated:

    • The subscription status is set back to “active.”
    • If applicable, recurring payments resume based on prior billing logic or updated settings.
    • Reactivation ensures continuity for subscriptions that were paused due to returns, swaps, or buyout considerations, but where the product remains with the customer.

    Important rules for reactivation

    • You can only reactivate subscriptions with the status "pending return" or "pending buyout."
    • Subscriptions with the status "active," "ended," or "bought out" cannot be reactivated.
    • If auto-renewal was manually turned off, it must be enabled first before the subscription can be reactivated.
    • Reactivating a subscription can also restart recurring payments, depending on your settings.

    Setting to review:
    Settings > Subscriptions > Recurring Payments > Past billing dates

    This setting determines if missed recurring payments from the time the subscription was inactive should be charged once the subscription is reactivated.

    Step-by-step: How to reactivate a subscription

    • Log in to your circuly Hub.
    • Go to the Subscriptions tab.
    • Locate and select the subscription that needs to be reactivated.
    • Click on the three dots to open the action menu.
    • Click on "Reactivate subscription".
    • In the Reactivate Subscription window, review the message.
    • Click "CONFIRM" to complete the reactivation.

    What happens after reactivation?

    • The subscription status changes to “active.”
    • Any planned or missed recurring payments are evaluated and triggered based on your system settings.
    • The customer will be charged again if the system detects unpaid cycles (based on your past billing dates setting).
    Read more
    Products
    Initiating product buyout

    Initiating product buyout when customer wants to buy the product

    Learn more about initiating a product buyout in the circuly operations backend when a customer requests to buy the product in the middle or during the subscription period.

    Introduction

    In a rental or subscription model, customers may eventually want to keep the product they've grown to love. Whether it's at the end of their subscription period or somewhere in between, circuly gives you the flexibility to manage buyouts efficiently—without disrupting your operations.

    This article explains how to initiate and manage product buyouts from the circuly Hub, especially when you want to offer custom prices. It also covers what changes take place in the subscription and what happens after the buyout is processed.

    Feature Overview

    There are two ways to initiate a product buyout in circuly:

    1. From the Customer Self-Service Portal
      Once enabled, customers can initiate a buyout themselves. The process is fully automated.
    2. From the circuly Hub
      You (or a circuly user) initiate the buyout manually—ideal when offering custom pricing for specific cases without affecting other product prices, or if you do not offer buyouts as a default option but accommodate them on special request.

    The difference between the two options:

    The key difference between the two buyout methods lies in how much control you want over pricing.

    • If you want to offer a custom price for a specific customer—without changing the default price for all products of that type—the best option is to manually initiate the buyout from the circuly Hub.
    • If you're using standard pricing and don't need to set individual buyout prices, the Customer Self-Service Portal is the more convenient choice, allowing customers to handle the process on their own. Learn more here.
    Note: If you have enabled the Only allow customer-portal buyout after minimum duration is reached setting, this restriction applies only to the Customer Self-Service Portal. Hub- or admin-initiated buyouts are not affected and can be processed at any time, regardless of how long the subscription has been active. This makes the Hub the right option for accommodating buyout requests from customers who have not yet reached their minimum contract duration.

    What a product buyout changes in the subscription:

    When a product buyout is initiated, several things happen in the background to update the subscription and inventory status:

    • Outstanding amount is charged (if applicable)
      The system calculates and charges any remaining amount based on:
      Buyout price – total already paid = amount due
    • The product is marked as "Bought Out"
      This tells the system that the product is no longer expected to be returned.
    • Inventory is updated
      The product is removed from your shop system's available stock, reflecting that it's been purchased by the customer.

    Why you should always use the buyout process (not just cancel the subscription)

    In circuly, products are expected to be returned at the end of the subscription period. If a product isn't returned by the "Return until" date, the system automatically reactivates the subscription and resumes charging the customer for the unreturned product.

    However, when a product is purchased through a buyout, no return is expected. That's why it's important to formally initiate the buyout process—so circuly can:

    • Properly mark the product as "bought"
    • Prevent the return workflow from triggering
    • Ensure the subscription doesn't reactivate unnecessarily

    Skipping this step could cause confusion for your operations team and frustration for your customers.

    If you wish to enable your customers to request buyouts on their own from their customer portal, follow this guide on Enable And Process Buyout/Purchase of Subscription Products.

    For information on how to handle buyouts from the circuly Hub, continue reading this article.

    Step-by-step guide

    • Step 1: Check the retail price
    • Step 2: Initiate the buyout

    Step 1: Check the retail price

    Before initiating a buyout, make sure the retail price of the product is correct:

    • Go to the Products tab in the circuly Hub.
    • Locate the product and verify the retail price.
    • If needed, edit the price to ensure the correct amount will be charged during the buyout.

    Step 2: Initiate the buyout

    • Navigate to the Subscriptions tab in the circuly Hub.
    • Find the subscription from the list > Click on the three dots to see the subscription action menu.
    • Choose buyout subscription from the dropdown menu.
    • In the Buyout Overview window:
      • Review the Buyout Price. This is calculated based on the product's retail price minus payments already made, in line with your Share of payments and Maximum number of recurring payments settings. You can override this amount if you want to offer a custom price for this specific customer.
      • Add a message in the Invoice Line Item Text field—this will appear in the invoice email sent to the customer.
      • Click Buyout to confirm the transaction.

    Make sure the email template you use includes the {{description}} variable so the custom message appears correctly in the customer communication.

    What happens next

    • The status of the asset is marked as bought out. Assets with bought out status do not trigger the return workflow because they are not expected to come back (no further action is required from your side).
    • Recurring payments are stopped so that the customer is not charged additionally for the bought-out subscription.
    • The customer receives the "Buyout Order Confirmation" email first from the email templates to confirm the subscription buyout.
    • After the "Buyout Order Confirmation" email is sent, a one-time transaction is triggered with the amount in the Buyout Price input field. The amount is charged immediately using the customer's stored payment method.
    • Once the payment is successfully charged, an invoice is generated for the one-time payment (the email template "One time transaction" is used to generate an invoice) and sent to the customer (the email template "Payment was successful" is used to send the invoice confirming that the payment was successful).

    Additional things to note

    Buyout payments can take some time to process when SEPA is chosen. This should be mentioned in the email communication with the customer. Example text you can include in your buyout email: "Thank you for your order. You will receive an order confirmation by e-mail shortly. Depending on the payment method, it may take several days to process your payment. As soon as the payment has been successful, your subscription will be changed to "{statusBoughtOut}" and you will receive an email with your purchase invoice. If your payment cannot be processed, we will also notify you by email."

    Learn more about the buyout process.

    Read more
    Account & Setup
    Subscriptions
    Auto renew subscriptions

    Auto Renew Subscriptions

    If your customers do not actively cancel their subscription from the Customer Self-Service Portal or write an email to you to cancel the subscription, you can auto-renew the subscription either manually, or you can automate the process.

    Introduction

    In subscription-based businesses, renewing a subscription is a crucial process that helps maintain ongoing customer relationships and ensures continued access to your products or services. Renewing a subscription means extending its duration, typically after the initial subscription period ends, allowing the customer to continue using the service without interruption. Depending on the business model, subscription renewals can be handled in two main ways: either manually, based on specific customer requests or circumstances, or automatically, where the system renews the subscription at the end of the term.

    This article will guide you through the different methods available for renewing subscriptions in your circuly system—whether you want to manually extend a subscription or automate the renewal process to save time and ensure consistency.

    Feature overview

    Typically, when customers place an order on your website, they agree to a specific subscription duration. This duration is considered both the minimum and the full length of the subscription by the circuly system. Once this period ends, several outcomes are possible, including subscription renewal, cancellation, product return, or product buyout. You have the flexibility to choose whether or not to have the Circuly system automatically renew a subscription at the end of the term. If preferred, you can manually extend the subscription contract based on your specific needs or individual customer cases.

    Step-by-step guide for manual renewal

  • Navigate to the subscription that needs to be renewed.
  • Click on the three dots to open the menu options.
  • Select "Extend Subscription" from the menu.
  • In the Extend Subscription window, enter the desired number of months or duration to extend the subscription.
  • Click Save to confirm the extension.
  • When you use this option to change the end date of a subscription, there is no impact of this action on the auto renew button in the subscription overview window.

    Step-by-step guide for automated renewal: Renew by original duration

    If you want to renew or extend the subscription by its original duration then turn on the switch for the Auto renew subscriptions setting. From now on subscriptions will be renewed by the original subscription duration. For example if it was a 12 months subscription then towards the end of the subscription period it will be extended for another 12 months.

    Step-by-step guide for automated renewal: Renew by custom duration

    If you do not want to renew the subscription by its original subscription duration then you can define a custom value for the renewal. To do this > First go to the Auto renew subscriptions setting and turn on the switch > Next go to the Custom auto renew subscription setting and turn on the switch for this setting > Then add a numeric value in the Custom auto renew duration input field. From now on the subscription will be renewed by the value defined in this input field.

    Important: Do not enable the switch for the Auto renew subscriptions setting if you want to renew subscriptions manually on on individual subscription level as every subscription will be renewed automatically at the end of the subscription period if you enable the auto-renew subscription setting.

    When a subscription has been auto-renewed because of the auto-renew subscription setting, the auto-renew switch in the subscription overview window will be enabled. The button provides a visual reference to determine which subscription is renewed and which is not.

    Buyout eligibility and minimum contract duration

    If you use the Only allow customer-portal buyout after minimum duration is reached setting, the subscription's auto-renew status is used to determine whether the buyout option becomes visible in the Customer Self-Service Portal. Specifically, the buyout option is only shown once the minimum contract duration has passed (auto_renew = true).

    This means that how you configure auto-renewal directly affects when customers can initiate a buyout from their portal. If you want customers to be able to buy out their subscription product before the minimum term is up, a Hub- or admin-initiated buyout remains available regardless of auto-renew status.

    Learn more about the buyout settings.

    Read more
    Customers
    Edit customer information

    Edit the Customer Information

    Customer information can be edited either by the customer in the Customer Self Service and it can also be edited by you in the Customer Profile and in Orders. Learn more about editing customer information

    Introduction

    Customer information in Circuly can be updated in three ways:

    • Manually by a circuly user through the circuly Hub
    • Directly by customers through the Customer Self-Service Portal
    • Programmatically via the circuly API.

    Editing customer details is essential for keeping records accurate—whether it's correcting a typo, updating a phone number, or changing the delivery address for a specific order.

    However, not all customer-related data is editable in one place. This is intentional: a customer might have multiple orders or subscriptions, and changes like address updates (shipping and billing) may apply only to a specific order—not their entire profile.

    Tip: You can also update customer details using circuly's API. refer to the Update a customer endpoint for more information.

    Step-by-step guide

    Editing email address and phone number

    • Go to the Customers tab in your circuly Hub.
    • Select or search the customer you wish to edit from the Customer list.
    • In the Customer Overview, go to the Billing information section on the bottom right.
    • Click the edit (pencil) icon to make the fields editable.
    • In the Edit Customer window, update the email or phone number.
    • Check the box to consent to the update, then click Submit.
    • You will see the changes reflected under Billing information.

    In B2C contexts, the email and phone number typically belong to the customer themselves. However, in B2B scenarios, one customer profile may be used to place orders on behalf of multiple individuals. In such cases, the contact information (email and phone) may reflect the person placing the order rather than the actual recipient. This information may need to be updated over time, especially when responsibilities shift within a company, while the shipping address remains tied to the end recipient.

    Editing the address details and date of birth of the customer

    When editing the address, you'll see separate fields for the shipping address and the billing address. Make sure to update the correct one based on what the customer needs changed—for example, the delivery destination versus the invoicing contact.

    • Go to the Orders tab in the circuly Hub.
    • Select the relevant order from the Order List.
    • In the Order Overview, go to the Billing information section on the bottom right.
    • Click the edit (pencil) icon.
    • In the Edit Customer window, update the address and/or birth date.
    • Check the box to consent to the update, then click Submit.

    In many cases—especially B2B—orders are placed by one contact person but delivered to different recipients. For this reason, address and birth date updates are made per order rather than globally across a customer profile. This ensures the right delivery information is applied where it's needed without affecting other subscriptions or orders linked to the same account.

    Editing customer details via the Self-Service Portal

    Customers can also update their own information through the Customer Self-Service Portal.

    However, similar to how it works in the circuly Hub, address changes are made on a per-order basis. If a customer needs to change their shipping address, they must do so from the specific order view—ensuring that address updates apply only to the relevant order and not universally across all active subscriptions.

    These updates are reflected directly in the circuly Hub.

    For a detailed breakdown of how customers can update their information in the portal, refer to:

    Read more
    Account & Setup
    Subscriptions
    Add swap/replacement reasons

    Add Swap/Replacement Reasons

    When you swap a product for an existing subscription you can specify the reason for the said action. Learn more about adding swap/replacement reasons.

    Introduction

    When processing a product swap within an active subscription, you can define specific reasons for the swap. These reasons serve internal communication purposes and help keep your operations team aligned on the context of product exchanges.

    Feature overview

    Swap reasons are shown in the Replacement Window when a swap is initiated. This makes it easy for your team to choose the appropriate reason for the product exchange and document it for future reference. Swap reasons are only visible internally and do not affect the customer’s view or experience.

    Step-by-step guide: Add swap reasons

    1. Log in to the circuly Hub
    2. Navigate to the Settings tab.
    3. Go to Swapping > General.
    4. Scroll down to the Swap Reasons section.
    5. Click the plus (+) icon to add a new reason.
    6. In the input field, type the swap reason (e.g., "damaged product", "wrong size", etc.).
    7. (Optional) In the Tag after swap field, type replacement to automatically tag orders associated with this swap.

    Good to Know

    • Tags help differentiate swap orders from standard subscriptions.
    • The "replacement" tag will be visible in the Order List view, making it easier to filter or search for such cases.
    • These reasons are flexible—adapt them to suit your internal processes.
    Read more
    Subscriptions
    Edit subscription start date

    Edit the Subscription Start Date for an Existing Subscription

    Learn how you can edit the subscription start date of a subscription that has already been created.

    Introduction

    In a typical eCommerce flow, a customer places an order, the product is shipped, and the seller estimates a delivery time—usually within a few days. The subscription is created, either manually or through automation, and a start date is assigned accordingly.

    When creating a subscription manually, the circuly user has the option to select the subscription start date. By default, this field is pre-filled with a date influenced by the Subscription start date setting (e.g., “+3” to indicate a start date 3 days from today). If no such setting is defined, the field may default to a random future date. In automated flows (bulk upload or API), the start date is included in the incoming data and adopted directly by the Circuly system.

    It's important to note: if a subscription has not yet been created for an order, the start date can be freely defined or adjusted during the subscription creation process. However, if a subscription already exists and the start date needs to be changed, then the approach is different—and that’s where the Edit Recurring Payments feature becomes relevant.

    This is especially useful in scenarios where the initial billing plan—let’s say starting on the 2nd of the month—no longer aligns with reality due to delays (e.g., the product was only delivered on the 15th). Instead of canceling and recreating the subscription, you can shift the start date and all future billing to the 15th of each month going forward, while preserving the subscription structure.

    Step-by-step guide

    • In your circuly Hub > Go to the Recurring payments tab.
    • Locate the subscription that needs an updated start date by selecting the appropriate entry from the Recurring Payment List.
    • Click on the three dots (•••) next to the entry.
    • Choose Edit Recurring Payment(s) from the dropdown menu.
    • In the Edit Recurring Payment(s) window, turn on the toggle for Change all future payments.
    • Select a new start date from the calendar—this date must be in the future and should reflect the estimated delivery or actual product usage date.
    • Save your changes.

    The subscription’s billing will now align with the new start date, and the end date will shift accordingly to maintain the original contract duration.

    circuly gives you the flexibility to correct subscription timelines when things don’t go as planned. By adjusting the start date after delivery delays or other operational reasons, you ensure billing fairness and maintain customer trust—without disrupting the overall contract terms.

    Read more
    Orders
    Subscriptions
    Start subscription

    All Different Ways to Start a Subscription in the circuly Hub

    There are multiple paths you can take in the circuly operations backend to create a subscription. This article highlights all of them.

    Introduction

    As your subscription business grows, manually creating subscriptions for each incoming order can become time-consuming and inefficient. That’s why circuly offers an automatic way to create subscriptions—by linking the subscription creation process to the “Mark as fulfilled” action in the circuly Hub.

    This method allows your team to create subscriptions automatically when an order is marked as fulfilled, saving time while ensuring accuracy and consistency in your workflow.

    Settings overview

    To enable automatic subscription creation, you need to configure two settings in your circuly Hub:

    1. Auto activate subscriptions
      • When enabled, this setting triggers the creation of a subscription automatically when an order is marked as fulfilled.
    2. Auto activate offset
      • This defines how many days after fulfillment the subscription should start.
      • Example: If the offset is set to 3, the subscription start date will be 3 days after the order is marked as fulfilled.

    Step-by-step setup guide

    1. Enable auto activate subscriptions

    • Go to Settings > Subscription > Create Subscription.
    • Turn on the switch for Auto activate subscriptions.

    2. Define the subscription start date offset

    • In the same settings section, find the auto activate offset field.
    • Enter the number of days you want to delay the subscription start after fulfillment (e.g., 3).

    3. Process orders as fulfilled

    • Go to the Orders or Customers tab in the circuly Hub.
    • Once the order has been shipped, click the three-dot menu next to the order.
    • Click Mark as fulfilled.

    That’s it—circuly will automatically create a subscription for that order using the configured settings.

    Good to Know

    • The “Mark as fulfilled” option is designed for workflows where the order has already been shipped via the shop system, and the circuly user is simply updating the system so that it can start the subscription.
    • This method reduces human error and manual effort while ensuring that subscriptions only start after confirmed shipping.
    • It's ideal for operations with high order volume, or where fulfillment is triggered externally and only needs to be mirrored in circuly.

    Read more
    Integrations
    Subscription plans in shopify

    Create Subscription Plans in Shopify

    Learn how to create a subscription plan in Shopify and start benefiting from all the pros of recurring revenue.

    Subscription plans can be added to existing products or you can start from scratch and create new products with subscription plans. The approach you take depends on whether or not you have an existing shop with existing products and if you want to keep your subscription business separated from your sales business.

    What is a subscription plan?

    A subscription plan is a term used to describe the agreement between the vendor and the customer, that covers the terms for usage of a product for an agreed upon price and an agreed upon duration.

    Typically there are four important components in a subscription plan:

    • The product itself and its variations
    • The subscription duration (6,12,18,24 months)
    • The charging period/frequency (daily, weekly, monthly, yearly)
    • The price itself (which depends on the subscription duration and the charging period/frequency)

    These four components together define and make up a subscription plan. A subscription plan usually consists of components that have a price implication but it also include components that do not have a price implication.

    Important: When you get circuly on board to manage your subscriptions, subscription plans are always created in Shopify by using product variables and metafields and not in circuly. circuly is only connected to your shop system via API and can easily retrieve the necessary information about the product and subscription and process it accordingly.

    This gives you more flexibility in creating, maintaining and editing your subscription plans as your business approach changes.

    Here’s an example: Bugaboo Flex by Bugaboo

    Bugaboo Flex is a subscription service by Dutch baby goods manufacturer, Bugaboo. Bugaboo uses Shopify to set up their subscription products, catalogue them and create subscription plan.

    Given below are different components of their subscription plan.

    1. The product and its variations - in Bugaboo’s case, the product variation is about available product colours and has no impact on the overall subscription price of the product. But product variations can have an impact on the price of the product. For example, the price of the overall subscription changes when the subscription product is an IT product (such as laptops, phones etc.) and has different storage options.  

    Screenshot of circuly customer Bugaboo to show the subscription plans on their product page




    1. The subscription duration - the overall subscription prices changes with the overall subscription duration. Duration based pricing is a commonly used pricing strategy for product subscriptions.

    Screenshot of different options for subscription plans on the Bugaboo product page

    1. Product state - Bugaboo has another component in its subscriptions plan that has an impact on the price and that is the state of the product.

    Screenshot of different options for subscription plans on the Bugaboo product page

    As you can see the subscription plan varies as per the different components and these components vary from one business to another.

    Therefore before setting up your subscription plan it is important to work out all the components that will have an impact on the price and also the components that will not have an impact on the price but are included to provide more customisation option to the customer.

    How to create a subscription plan in Shopify?

    There are two steps involved in setting up a subscription plan:

    1. Set up products in Shopify
    2. Set up metafields in Shopify

    Set up products in Shopify

    Adding products

    1. Login to your Shopify admin account > And go to Products in the left navigation bar.
    Screenshot of hopify backend to show the creating subscription plans feature



    1. On the Products page click on the button that says Add products.
    2. Start by entering a Title for your product along with additional details such as detailed description, media files, price etc.

    Screenshot of hopify backend to show the creating subscription plans feature

    1. Click Save.

    Adding variants

    Add variants if your product comes in more than one option such as size, colour, storage etc. Use variants to define the components of a subscription plan for the same product.

    For example: You want to create a subscription plan for renting Macbook Pro which is available in two colours and in different subscription durations. One variant option will be colour, that is Silver or Black and another variant option will be subscription duration, that is,  1 month, 6 month, 12 month and 18 month subscription.

    Screenshot of hopify backend to show the creating subscription plans feature



    If the variant options have an impact on the price, add the price in the Variants fiel as shown in the image below.

    Screenshot of hopify backend to show the creating subscription plans feature

    Steps:

    1. On the Add product page scroll down to Variants and check the box the checkbox that says “This product has multiple options, like different sizes or colours”.
    Screenshot of hopify backend to show the creating subscription plans feature



    1. Then start adding the different variations for the product.
    2. Under OPTIONS > Click on Option 1 > And enter an option name, for example Size, (the name you enter here is displayed on the frontend to your customers)
    3. In the Option values field > Enter each option value and separate the different options with a comma, for example Small, Medium, Large. (the values you enter here are displayed on the frontend to your customers)
    4. In you want to add more variant options then click on Add another option. Shopify allows you to have up to 3 options for each product. If you want to have more options you can do so via a third party Shopify app.
    5. Add images for each vairnat.
    6. Click Save.

    Here’s an example of how the variants look.

    Screenshot of hopify backend to show the creating subscription plans feature

    Pro tip: give all the variants the same SKU so that the stock descreses as soon as an order is placed for all subscription durations

    Set up Metafields in Shopify

    Metafields enable you to customise the functionality and appearance of your Shopify store by allowing you to save specialised information that isn't usually captured in the Shopify admin. You can use Metafields to display specialised information on your website/online store in a variety of ways. For a renntal/subscription business using metafields helps to define whether a product is a “rented” product or a “bought” product.

    Once you’ve created a few products with its product variants continue to create a subscription plan using Metafields.

    Steps:

    1. Install the Metafields guru app from the Shopify App store.
    2. After installing the app Y Go to Apps in your Shopify admin and configure it.
    3. After confirgutaion go to Apps > Metafield Guru App Home > Click on Products.

    Screenshot of hopify backend to show the creating subscription plans feature

    1. Select a product from your product list.
    Screenshot of hopify backend to show the creating subscription plans feature

    1. You can do the set up for all the variants or one of them. To set up for one of the variations > Click on Variants (as shown in the image below).

    Screenshot of hopify backend to show the creating subscription plans feature


    Note: Creating metafields to define whether the product is a subscription product or a regular product, the subscription duration and the subscription period.

    1. Click on Create metafield > Add information as shown in the image below.

    • Subscription >  true / false, if the product is a rental or not
    • subscription_length >  the subscription duration
    • subscription_period > daily / weekly / monthly / yearly

    Screenshot of hopify backend to show the creating subscription plans feature

    Bulk action

    For bulk action, filter all variants and map them with the conditions mentioned above. You can filter them by Product ID, Product Name etc.

    If you want to add more components to your subscription plan besides the one mentioned above, you can easily do so by using the Metafield Guru App. To set up additional fields such as a countdown, description, color etc, read this article.

    Read more
    Orders
    Subscriptions
    Bulk update subscriptions

    Bulk Update Orders Into Subscriptions

    Learn how to bulk update orders into subscriptions and save operational time to improve efficiency.

    Introduction

    circuly provides a convenient way to bulk update orders and create subscriptions, helping you save time and maintain accuracy. This guide walks you through the steps to bulk update orders, create subscriptions, and understand the resulting actions in circuly.

    Step-by-step guide

    Follow these steps to efficiently bulk update orders and create subscriptions:

    • Filter Unprocessed Orders (Optional)

    Before you begin you can filter the Order List to only display orders that are currently unprocessed that is orders that do not have a subscription attached to them yet. To do so > Navigate to the Orders tab > Click in the button that says Predefined to display the predefined filter options > Select Unprocessed from the list.

    The Order List now displays orders that need to be processed.

    • In the Order List, select the orders you want to create subscriptions for by checking the corresponding boxes.

    • Once the desired orders are selected, click the BULK UPDATE button to proceed.

    • In the pop-up window, enter the required information, such as the serial number and other subscription details, as you would normally when creating a subscription)

    • After creating a subscription for an order, a success message will appear on your screen, confirming the action.

    • Use the left and right arrows in the pop-up window to move between orders and create subscriptions for each selected order.

    • After creating subscriptions for all selected orders, click the CLOSE button to exit the pop-up window.
    • Navigate to the Subscription List to view the newly created subscriptions

    What happens next

    1. The "Subscription activated" email is sent to the customer from the Email Templates.
    2. The order is displayed in the Subscription List under the Subscription tab.
    Read more
    Returns
    Repairs
    Mark as returned or mark as bought

    When Should You Mark an Asset as Returned and When as Bought?

    When should an asset be marked as bought and when as returned? Find out in this article.

    In the Returns tab of the circuly Hub, you can process assets by either marking them as returned or bought. The action you take depends on what happened to the product—whether it came back or was purchased by the customer.

    Introduction

    Managing returns accurately ensures that assets are properly tracked, subscriptions are ended at the right time, and customer communications are triggered accordingly. circuly gives you two distinct options during the return handling workflow:

    • Mark as Returned – for products that are physically returned by the customer.
    • Mark as Bought – for products that have been purchased and are not expected to return.

    Marking an Asset as Returned

    When to Use

    Use this option when the customer has returned the product and it is now back in your possession.

    What Happens

    • The asset is removed from the Return List.
    • It moves to the Repair List (if repair processes are configured).
    • The asset receives a "To Repair" status in both the Asset List and the Repair List, indicating it needs inspection or refurbishment before being restocked.
    • The "Subscription Ended" email is automatically sent to the customer.
    • If you check the box for Delete future recurring payments, the system will stop any upcoming billing for that subscription.

    Tip: Always check the “Delete future recurring payments” box if the product is returned and you no longer want to charge the customer.

    Marking an Asset as Bought

    When to Use

    Select this option when the customer has bought the product and will not return it.

    What Happens

    • The asset is removed from the Return List.
    • It does not appear in the Repair List (since it is not expected back).
    • The asset receives a "Bought Out" status in the Asset List, clearly marking that it’s no longer part of your inventory.
    Read more
    Integrations
    Metafields in Shopify

    Setup Metafields in Shopify

    Metafields enable you to customize the functionality and appearance of your Shopify store by allowing you to save specialized information that isn't usually captured in the Shopify admin. Learn more about setting up metafields in Shopify.

    Metafields enable you to customise the functionality and appearance of your Shopify store by storing specialized information that isn't usually captured in the default Shopify admin. For rental or subscription-based businesses, metafields are a powerful way to distinguish between “rented” and “bought” products in your store setup.

    Introduction

    In a subscription business, knowing whether a product is meant to be rented or purchased outright is crucial for managing pricing, user experience, and business logic. Metafields let you store and manage this distinction in Shopify

    Feature Overview

    To distinguish between rented and bought products, use the following metafield structure:

    • subscription → true / false (Defines if the product is a rental)
    • subscription_length → number (Specifies the duration of the subscription)
    • subscription_period → daily / weekly / monthly / yearly (Defines the time unit for the subscription)

    These metafields can be applied to each product variant individually or through a bulk process.

    Process Overview

    There are two ways to set up metafields:

    1. Manually per product: Ideal if you’re just getting started or have only a few products.
    2. Bulk action: Efficient for stores with many products that need to be mapped at once.

    Step-by-Step Guide

    Option 1: Set Up Metafields One-by-One

    • Install Metafield Guru
      • Go to your Shopify store > Apps > Search and install Metafield Guru.
    • Open the App
      • Navigate to Metafield Guru > Home > Products.
    Screenshot of Shopify backend to show the metafields feature

    • Select a Product
      • Choose the product you want to update metafields for.
    Screenshot of Shopify backend to show the metafields feature

    • Edit Variants
      • Click on Variants to access each product variation.
    Screenshot of Shopify backend to show the metafields feature

    • Create Metafields
      • For each variant, click on Create Metafield.
      • Enter the following values:
        • subscription → true (for rental) or false (for purchase)
        • subscription_length → e.g., 12
        • subscription_period → monthly / weekly / yearly, etc.
    Screenshot of Shopify backend to show the metafields feature

    Option 2: Bulk Update Metafields

    • Filter Variants
      • Within Metafield Guru or any bulk editing tool, filter product variants by Product ID, Name, or Type.
    Screenshot of Shopify backend to show the metafields feature

    • Apply Conditions
      • Map values based on your business rules:
        • Rentals: subscription: true, subscription_length: 12, subscription_period: monthly
        • Purchases: subscription: false
    • Run the Bulk Edit
      • Confirm changes and apply the metafields to all selected products.

    Final Note

    Using metafields correctly ensures your Shopify storefront displays accurate information and integrates properly with circuly’s subscription features. Whether you're offering long-term rentals, short-term leasing, or outright sales, properly structured metafields allow you to manage product types efficiently across your catalog.

    Read more
    Subscriptions
    Two-click cancellation

    Two-Click Cancellation flow in circuly

    In October 2021, a new law was introduced in Germany about the termination of subscription contracts. Here's how the implementation of the two-click cancellation process looks in circuly.

    Introduction

    In compliance with Germany’s "two-click cancellation" law (effective July 1, 2022), consumer-facing businesses must make it easy for customers to cancel subscriptions online. The law requires a clearly labeled, always-accessible cancellation button on the website, leading to a confirmation process that validates the cancellation.

    circuly helps you fulfill these legal requirements while streamlining the cancellation workflow for both your business and your customers.

    Feature Overview

    The two-click cancellation process consists of:

    • A visible cancellation button on your website (created and maintained by you)
    • A confirmation flow (hosted and managed through circuly’s Customer Self-Service Portal)
    • A legally compliant cancellation notice with confirmation email
    • Optional configuration of pickup dates, auto-cancellation, and return workflows

    Process Overview

    Here’s how the two-click cancellation process works using circuly:

    • Customer clicks the cancellation button on your website.
    • They are redirected to the Customer Self-Service Portal, where they log in.
    • The “Cancel subscription” button appears under their active subscriptions.
    • Clicking this button opens the confirmation page, where the customer selects:
      • Cancellation type and reason
      • Optional message
      • Optional pickup date
    • The customer submits the request.
    • circuly sends a confirmation email, sets statuses, and (optionally) triggers the return workflow based on your settings.

    Step-by-Step Setup Guide

    1. Add a cancellation button on your website

    Create a visible, always-accessible button labeled “Cancel Subscription” that links to the Self-Service Portal login page.

    2. Configure cancellation options in the circuly Hub

    Enable the cancellation button in the portal

    • Go to: Settings > Self-Service Portal  > Features
    • Disable the switch for "Hide cancel now"
      → This makes the "Cancel subscription" option visible in the portal.

    Enable auto-cancellation (optional)

    • Go to: Settings > Self-Service Portal > Cancel options
    • Enable the "Auto cancel subscription" switch
      → This skips the minimum duration period and sets the subscription to "pending return" immediately.

    Enable pickup date selection (optional)

    • Go to: Settings > Self-Service Portal > Cancel options
    • Enable the switch for "Pickup date"
    • To make it mandatory, also enable "Require pickup date"

    Add cancellation reasons

    • Go to: Settings > Subscription > Cancellation reasons
    • Click the "+" icon to add reasons under Normal and Extraordinary cancellations
    • Provide translations if applicable

    3. Add email addresses for customer support

    Support email (shown in the portal)

    • Go to: Settings > Self-Service Portal > Company Information
    • Enter an address in Support email address

    Customer care email (receives cancellation notices)

    • Go to: Settings > Company Settings > Base setup
    • Enter your team’s address in Customer care email address

    4. Customise the confirmation email

    The “Subscription Cancellation Received” email is sent to the customer after submitting their request. You should:

    • Add brand styling and return instructions (especially if using auto-cancel)
    • Edit the template in the Email Templates section of the circuly Hub

    What Happens Next

    What circuly does after a cancellation depends on your settings:

    If Auto Cancel is Enabled

    • Subscription status changes to pending return
    • Triggers the return workflow
    • Turns off auto-renew
    • Sends Subscription Cancellation Received email only (no “almost over” email)

    Once the product is returned, mark it as returned in the Returns tab to end the subscription and stop recurring payments.

    If Auto Cancel is Disabled

    • Subscription remains active but is tagged cancelled by customer
    • Auto-renew is turned off
    • The cancellation takes effect after the minimum subscription period
    • Customer receives:
      • Subscription Cancellation Received email
      • Subscription almost over email (before the end date)

    When the product is returned, mark it as returned to stop recurring payments.

    Read more
    Invoices
    Cancellation invoices

    Create Cancellation Invoices and Regenerate Wrong Invoices

    A wrongly generated invoice first needs to be cancelled, and a new invoice must be created for the same with the correct information. Learn more about cancellation invoices.

    Introduction

    When it comes to efforts in invoicing, ensuring accuracy is crucial to maintain legal and financial integrity. Occasionally, errors may arise in invoices, such as incorrect details or missing information. While minor typos can often be overlooked, any mistake that affects mandatory information—such as those outlined in § 14 Paragraph 2 No. 2 of the German VAT Act—must be corrected. Essential invoice details, such as the correct names and addresses of both the supplier and recipient, the invoice date, a clear description of the goods or services, and the VAT charged must be present in the invoice. If any of these mandatory elements are missing or incorrect, the invoice must be corrected to ensure compliance with legal requirements and avoid potential issues with tax authorities.

    Process Overview

    As part of the correction process, the wrongly generated invoices first must to be cancelled and a new invoice needs to generated with the correct information. Cancelling the wrong invoice is an important step for the following reasons:

    1. Legal Compliance: According to tax regulations, such as § 14 Paragraph 2 No. 2 of the German VAT Act (UStG), invoices must contain certain mandatory information. If this information is incorrect, the original invoice cannot be considered valid. By canceling the incorrect invoice, you maintain a clear and legally compliant record of the transaction.
    2. Audit Trail: Canceling the incorrect invoice and issuing a new one creates a clear, traceable audit trail. This ensures that both the original and corrected invoices are documented separately, making it easier to track changes and comply with tax laws in case of an audit.
    3. VAT Accuracy: For VAT purposes, invoices must match the goods/services provided and the tax obligations. Correcting the original invoice could lead to confusion, as tax authorities require a clear breakdown of each transaction. A canceled invoice with a new one ensures that VAT is correctly accounted for and that both the buyer and seller have accurate records.
    4. Customer Transparency: By issuing a new invoice, the customer can clearly see the corrected details and understand that the previous one had errors. This process helps avoid confusion or misunderstandings, especially if the error impacts the amount billed, payment terms, or any other important information.
    5. Consistency: Canceling and reissuing the invoice ensures consistency across your invoicing system, ensuring that your records reflect the actual transaction and not a corrected version of an incorrect document. This avoids discrepancies in your financial reports.

    In summary, canceling the incorrect invoice and issuing a new one is the proper procedure to ensure legal compliance, accurate tax reporting, and transparency with customers.

    Feature Overview

    In circuly you can cancel an invoice with the wrong information and generate a new invoice in its space with just a few clicks.

    Good to know

    1. Cancelling an invoice does not automatically refund the associated payment because its purpose is different. Under German law, an invoice issued with incorrect information must be formally 'cancelled' to comply with legal requirements. However, the payment linked to the incorrect invoice may still be valid. As such, cancelling the invoice does not affect the payment. If you also need to refund the payment, you must initiate a separate refund operation.

    2. Generating a new invoice does not trigger any emails. If you want to send the invoice to the customer, you need to do so manually. To do so > Click on the ↓ PDF button to download the invoice and send it to the customer using your company email.

    Step-by-step guide

    Step 1: Correct the wrong information

    Step 2: Cancel the old invoice

    Step 3: Generate a new invoice

    - Correct the wrong information

    Typically invoice errors are related to either customer or order details. Therefore the first step is to correct the wrong information.

    Updating customer details
    For updating the customer details (such as email and phone number) go to Customers > Select the customer from the Customer List > Go to Billing information in the button right corner > Click on the edit icon > Update the details in the Edit customer window > Click on the Submit button to save your changes.



    Updating order details

    For updating order details (such as the address, date of birth, VAT number etc., of the customer) go to Orders > Select the order from the Order List > Go to Billing information in the bottom right corner > Click on the edit icon > Update the details in the Edit customer window > Click on the Submit button to save your changes.



    - Cancel the old invoice

    Once you have corrected the wrong information, you can proceed to cancelling the invoice with the wrong information. To do so:

    • In your circuly Hub > Go to  Invoices.
    • Search the invoice with the wrong information that needs to be cancelled and click on it.
    • In the invoice details window click the Cancel invoice button.

    • In the next window click on the Cancel invoice button again to confirm.

    • In the Cancel Invoice pop-up window, go through the information so you understand the consequences of the action.

    - Generate a new invoice

    • In the same window > Check the available checkbox to generate a new invoice with the updated information.
    • Click on the Cancel to confirm your action.

    What happens next

    A few changes take affect:

    • The old invoice gets a "cancelled" tag to show that this invoice has been cancelled. The cancelled invoice and the replacement invoice are liked to the original invoice.

    • The replacement invoice has the "replacement" tag.

    • The cancelled invoice has the "cancellation" tag.

    • You can further edit the corrected invoice by making them editable in the same window.
    Read more
    Account & Setup
    Subscriptions
    Subscription start date

    Automate Subscription Start Date Selection

    Every time you create a subscription, you can select the subscription start date. You can automate the process of selecting a subscription start date.

    Introduction

    In a subscription business, timing matters—especially when it comes to starting the billing cycle. To ensure a smooth experience for both your business and your customers, circuly enables you to define a custom subscription start date. This ensures that subscriptions begin only after the product has had time to reach the customer, avoiding complaints or confusion about billing before delivery.

    Settings overview

    When a customer places an order via your website and completes the checkout process, a new order appears in the circuly Hub. At this point, you need to manually create a subscription for the order to start collecting recurring payments.

    During subscription creation, you’ll see a subscription start date picker in the creation window. If you’ve configured the Subscription Start Date setting in advance, circuly will automatically pre-fill this date based on the custom logic you’ve defined.

    Step-by-step setup guide

    1. Navigate to Settings
      Go to Settings > Subscription > General.
    2. Enter a custom start delay
      In the Subscription start date input field, enter a numeric value representing the delay in days.
    3. How it works
      Every time you create a new subscription, the start date will automatically be set to:
      1 + the value you entered.
      Example: If the value is 3, the subscription will start 4 days after the order is placed.
    4. Subscription creation
      When you open the "Create Subscription" window for a new order, the start date calendar will automatically reflect the custom value you’ve set—saving you time and ensuring consistency.

    Good to know

    • The extra “+1” in the formula accounts for the order creation day.
    • You can always manually adjust the start date during subscription creation if needed.
    • This setting only impacts the default start date—it doesn’t lock you into a fixed value.

    Best practices

    • Base your subscription start date on shipping time.
      If your products typically take 3 days to reach customers, set the custom value to 3, making the total delay 4 days (1 + 3).
    • Ensure operational alignment.
      Work with your logistics or operations team to determine the average delivery time so that subscriptions don’t start before the product arrives.
    Read more
    No items found.

    Auto cancel subscription when customer makes a cancellation request from the customer portal

    In the customer portal, your customers can make a cancellation requests. When they do so, the subscription is cancelled, and the subscription status is set to pending return.

    In the customer portal, your customers can make a cancellation request (if you've not disabled the option to do so in your settings). When they do so, the subscription is cancelled and the subscription status is set to pending return (if the Auto-cancel subscription setting is enabled in the Customer Self-Service Portal settings). Setting the subscription status to pending return triggers the return process.

    You can decide whether or not a subscription should be automatically cancelled and if the subscription status is set to pending return when a customer makes a cancellation request through the customer portal.

    In the circuly operations backend, you can enable or disable the auto-cancel subscription setting.

    • If you enable it then the subscription will be cancelled and the subscription status will be set to pending return.
    • If you disable the setting (default value of the setting) the subscription will not be automatically cancelled and will not be set to pending return.

    If you want to enable this setting, follow these steps:

    • Login to your circuly operations backend.
    • Go to Settings > Customer Login > COMPANY INFORMATION > enable the switch for Auto cancel subscription.

    Once you enable this, all future cancellation requests made via the customer login will be auto cancelled and the subscription status will be set to pending return so that return workflow can trigger.

    When this setting is disabled, and a customer makes a cancellation request from the customer login the following happens:

    For your customer: your customer will receive an email that the cancellation request is being processed.

    For you: the connected customer support inbox will receive an email that a cancellation request has been made from the customer login. Additionally, a note will be created on the order level that a cancellation request has been made for this order.

    Read more
    Orders
    Subscriptions
    Cancel order, set as pending return

    The difference between “cancel order” and “set as pending return”

    Both “cancel order” and “set as pending return” are ways to process a cancellation request but with different logic and background.

    Introduction

    In circuly, there are two main ways to handle cancellation requests:

    • Cancel Order
    • Set Subscription Status as Pending Return

    While both actions are related to cancelling a customer's intent to keep a product, they serve different operational purposes and have different implications—particularly in how they impact order processing, return handling, and refunds.

    This article helps you understand when to use each and why the distinction matters.

    Feature Overview

    While both "cancel order" and "set as pending return" help you process cancellations, they serve very different purposes.

    Use "cancel order" when:

    • The order was placed, but the product hasn’t been shipped yet
    • There is no active subscription attached to the order
    • You want to cancel the order both in circuly and in your shop system
    • You want to issue a refund for the order immediately

    Use "set as pending return" when:

    • A subscription has already been created
    • The product is on its way to the customer or has already been delivered
    • You want to stop future recurring payments
    • You expect the product to be returned

    When to use “Cancel Order”

    You should cancel an order if the customer requests a cancellation before the product has been shipped and before the subscription has been activated. This is often the case if the customer changes their mind shortly after placing an order, or if you offer a cancellation window before fulfillment.

    When you cancel an order:

    • The order is also cancelled in your shop system (e.g. Shopify, WooCommerce)
    • This prevents your fulfilment partners from shipping the product
    • You have the option to fully or partially refund the order during cancellation
    • The subscription status is automatically set to pending return
    • If the product was never sent, you can skip the return process by manually marking it as returned

    This flow is especially important if you rely on logistics partners who do not use circuly but manage orders based on what they see in the shop system.

    When to Use “Set as Pending Return”

    If the product has already been shipped or a subscription has already been created, you should not cancel the order. Instead, set the subscription status to pending return.

    This action signals that:

    • The subscription is ending
    • The product is expected to be returned
    • All future recurring payments will be stopped
    • The return workflow is triggered in circuly

    This is the correct action when a customer wants to end a subscription mid-term, or at the end of their minimum commitment, and you want to track the return process and update inventory accordingly.

    Unlike cancelling an order, setting the subscription to pending return does not trigger a refund and does not cancel the order in your shop system.

    Additional Notes

    If you use fulfilment partners who depend on order statuses in the shop system, it’s critical to use “cancel order” when a product hasn’t been shipped. This will ensure they don’t send out an item the customer no longer wants.

    If a product has already been sent and the customer wants to return it, setting the subscription to pending return is the right approach. It prevents further billing, begins the return workflow, and ensures that the product eventually comes back and can be marked as returned.

    Refund logic also differs:

    • Cancelling an order gives you the option to refund during the process.
    • Setting a subscription as pending return only stops future payments—it doesn’t trigger any automatic refund.

    What Happens Next

    After you cancel an order:

    • The order status is updated to cancelled
    • The subscription status becomes pending return
    • A return can be manually skipped if the product was never shipped
    • Refunds (if selected) are processed automatically

    After you set a subscription as pending return:

    • The subscription is marked as ending
    • The return process is started
    • Future subscription payments are no longer triggered

    Choosing the correct action helps you stay aligned with your internal processes, avoid sending products unnecessarily, and handle customer expectations correctly.

    Read more about the return process.

    Read more about what is pending return.

    Read more
    Subscriptions
    Mark subscription status as pending return

    Mark a Subscription’s Status as Pending Return

    Marking the subscription status as “pending return” can be either done manually or it can be automatically triggered.

    Introduction

    When a customer ends their subscription, it’s essential to initiate the return process smoothly. circuly handles this through the “Pending Return” status, which helps trigger return workflows and customer communication automatically.

    The subscription can be marked as pending return automatically by the system or manually by a circuly user—depending on the situation.

    Feature Overview

    The Pending Return status plays a key role in return management:

    • It tells circuly that the customer is expected to return the product.
    • It ensures the return process (including automated emails) is triggered.
    • It prevents the need for manual tracking or intervention in standard return scenarios.

    There are two ways to set the subscription status to pending return:

    1. Automatically when the subscription reaches its end date.
    2. Manually—e.g. if a customer submits a cancellation request before the end date.

    💡 You can also automate this process using the Customer API:
    Use this PUT request to set a real subscription end date →

    Step-by-Step Guide: Manually Set Status to “Pending Return”

    Use this method if a customer requests a cancellation before their subscription ends.

    Step 1: Log in and Find the Subscription

    • Go to your circuly Hub
    • Navigate to the Subscriptions tab
    • Select the relevant subscription from the list

    Step 2: Set Status to Pending Return

    1. In the subscription details window, click the three dots in the top right corner.
    2. Select Set status as pending return.

    Step 3: Add Details (Optional)

    In the Set subscription to pending return window:

    • (Optional) Add a reason for setting the status, e.g. "Customer cancellation request."

    Step 4: Decide on Future Charges

    You’ll see the option: Delete future recurring payments.

    • Check this box if:
      You don’t want to charge the customer while the return is in progress.
    • 🚫 Leave unchecked if:
      You want to encourage timely returns by keeping the recurring charges active until the product is returned.

    Step 5: Confirm the Action

    Click the CONFIRM button to finalise.

    What Happens Next

    Once the subscription is marked as Pending Return:

    • The return workflow is triggered in circuly.
    • The customer receives the "Subscription Pending Return" email from your email templates.
    • Depending on your settings, future recurring payments may be deleted or continue.
    Read more
    Returns
    Repairs
    Pending return

    What is “pending return” and what does it do?

    In the circuly operations backend, you’ll find the words “pending return” in multiple places. Multiple operations and workflows are either trigged through “pending return” or are dependent on it.

    Introduction

    In circuly, the term "pending return" appears in multiple tabs and processes within the circuly Hub. It’s not just a label—it’s a core status that plays a critical role in operations like cancellations, returns, and subscription reactivations. This article explains what "pending return" means, when and how it’s applied, what it triggers, and which settings it depends on.

    What does “pending return” mean?

    The status "pending return" indicates that a product is still with the customer but is expected to be returned.

    You’ll see this status in the Status column of various lists in the circuly Hub, including:

    • Subscription List
    • Return List
    • Asset List
    • Email History
    • And others like Orders, Payments, Recurring Payments, etc.

    What does "pending return" do?

    If the status of a subscription is not set the to "pending return":

    • The subscription stays active, and payments continue unless manually paused or canceled.
    • The return process will not begin.
    • The product will not appear in the Returns tab, and follow-up actions (like sending return emails) will not be triggered.

    Setting the status to “pending return” is essential to:

    • Start the return workflow.
    • Give the customer a defined window to return the product.
    • Potentially trigger reactivation and charges if the product is not returned.

    Why is a product “pending return”?

    When a subscription is marked as pending return, it means the customer has the product but hasn’t returned it yet. This could be because:

    • The subscription period is still ongoing.
    • The return is within the allowed Return until period.
    • The customer is delayed in sending it back.
    • The customer changed their mind and wants to continue the subscription.
    • The customer is not planning to return the product.
    • In rare cases, the customer may be fraudulent.

    Regardless of the reason, you expect the product to come back. If not, you must have safeguards in place—like reactivating the subscription to continue charging the customer.

    Automatically set to “pending return”

    circuly will automatically update the subscription status to pending return in the following scenarios:

    • Subscription end date is reached and auto-renew is turned off.
    • Customer cancels via the Self-Service Portal, and the setting to auto-trigger pending return is enabled.
    • Swap is initiated, either by the customer or from the circuly Hub (in this case, the status becomes “pending replacement”, which follows the same logic as pending return).
    • Manual cancellation of the order from the circuly Hub.
    Exception: If the product is marked as stolen/missing during a swap, the status is not set to pending return—because you no longer expect the item to come back.

    Manually set to “pending return”

    You may need to manually assign the pending return status in the following cases:

    • A circuly user manually marks the subscription as pending return from the Subscription List.

    Doing so triggers the return workflow, including return instructions and tracking.

    What does “pending return” trigger?

    When a subscription is marked as pending return, circuly triggers the following actions:

    1. The subscription appears with the status “pending return” in the Subscription List.
    2. The order/product is listed in the Returns tab under the same status.
    3. If return-related settings are configured (see below), circuly starts the return timeline.
    4. If the product is not returned within the Return Until Period, circuly can reactivate the subscription and resume recurring charges—only if the Reactivation settings are enabled.

    Key settings connected to “rending return”

    To make the “pending return” workflow work efficiently, configure the following in Settings > Subscriptions > Cancel Subscription:

    • Return Until Period: Number of days a customer has to return the product.
    • Reactivate Subscription: Enable to automatically reactivate subscriptions if the product isn’t returned.
    • Reactivate Subscription Period (days): Defines when the reactivation should happen after the return window ends.

    Learn more about the return workflow and the assoiciated settings here.

    Read more
    Account & Setup
    Returns

    The Return Workflow and the Associated Settings

    What does the return flow look like in the circuly operations backend and which settings are associated with it?

    Introduction

    Product returns are a key part of running a subscription business. In circuly, returns can happen for various reasons—like swaps, cancellations, or when a subscription ends. Some return processes are fully automated, while others require manual steps.

    This article explains the different return scenarios, what actions you or your team need to take, and which settings control how circuly handles each case.

    Info: The return workflow ensures that when a subscription ends or when a customer requests a cancellation or swap you either receive the product back, or you resume charging the customer if the product is not returned within a specified time frame.

    Scenario 1: Swap return workflow

    When a customer requests a swap, circuly automatically sets the status of the product currently with the customer to Pending replacement (this has the same effect as "Pending Return").

    At the same time, circuly creates a new order for the replacement product.

    The customer receives a Swap Confirmation Email with instructions on how and when to return the original product. The customer must return the product within the time period you’ve defined in your settings (called the Return Until Period).

    If the product is not returned within that period, circuly can automatically reactivate the original subscription and resume charging recurring payments, depending on your settings.

    What you need to do:

    • No manual action is required unless you're managing the swap order manually.
    • Ensure your email template for swap confirmations is set up and that your return settings are correctly configured.
    Info: For a detailed guide on return settings, scroll down to the Return settings to configure section.

    In addition to the general return settings, you can also configure specific options that apply only when the product return is triggered by a swap request. Follow this guide to learn more.

    Scenario 2: Cancellation before subscription end date

    If a customer requests to cancel their subscription before the scheduled end date, the return workflow must be started manually.

    To begin the return process, you need to manually change the subscription status to "Pending Return" in the circuly Hub. Once marked as pending return, circuly automatically sends the Subscription pending return email to the customer with return instructions.

    From that point, the same return rules apply: the product must be returned within the Return until period. If it isn’t, circuly will reactivate the subscription based on your reactivation settings.

    What you need to do:

    • Manually set the subscription status to "Pending Return"
    • Ensure your return and reactivation settings are configured
    • Mark the product as returned once the product as been returned to your warehouse.
    Info: For a detailed guide on return settings, scroll down to the Return settings to configure section.

    Scenario 3: Return at the end of the subscription period

    When a subscription naturally reaches its end date, circuly automatically sets the subscription status to "Pending return"—no manual action is required.

    The customer should receive the Subscription almost over email ahead of the end date. This email should contain the return instructions.

    The customer is expected to return the product within the number of days defined in your Return until period setting. If they don’t return the product in time, circuly will automatically reactivate the subscription and resume charges, if that setting is enabled.

    What you need to do:

    • Nothing manual is required, as long as your settings and email templates are correctly set up.
    • Mark the product as returned once the product as been returned to your warehouse.
    Info: For a detailed guide on return settings, scroll down to the Return settings to configure section.

    Return settings to configure

    These three settings control how circuly handles product returns and subscription reactivations:

    1. Return Until Period
      • Defines how many days a customer has to return the product after the status changes to or is set to pending return or replacement
      • Go to: Settings > Subscriptions > Cancel Subscriptions
    2. Reactivate Subscription (toggle switch)
      • Enable this if you want circuly to automatically resume charging if the product isn’t returned
    3. Reactivate Subscription Period (days)
      • Set how many days after the Return Until Period circuly should wait before reactivating the subscription

    Example

    Let’s say:

    • Return Until Period = 14 days
    • Reactivate Subscription = Enabled
    • Reactivate Subscription Period (days) = 7
    • Subscription End Date = April 1

    In this case:

    • The customer has until April 15 to return the product
    • If they don’t return it, circuly will reactivate the subscription on April 22
    Read more
    Account & Setup
    Repairs

    Set Up the Repair Questions

    After a product is returned by the customer and before it can be rented out again, the product goes through the repair process.

    After a product is returned by the customer and before it can be rented out again, the product goes through the repair process. The repair process exists to make sure that the product meets the necessary quality standards before it is sent to another rental cycle.

    Since the repair process varies from one business to another, you can set-up your own custom repair process in the circuly operations backend. You can track the status of the product as well as the time and money needed to repair the product. This will help you to track your products’ lifetime value and keep the transparency about your products high.

    Before we begin with the set up of the Repair Questions, read the summary below to understand the various elements of the Repair Questions Section.

    Structure of the Repair Question Section

    • Components Column
    • Middle Column
    • Properties Column

    The three sections of the Repair Question Section are showcased below.


    Components Column

    The Components Column is used to create the repair process page(s) and to fill the page(s) with repair questions. Each page is one step of qualifying your product. The pages are connected to each other by a “next”/”back” button or “submit” button. See examples below of an existing Repair Workflow.


    Page 1 with three repair questions. The Repair Question type is Radio group (available in the Components Column and explained later in detail).



    More fields can show up based on the response to the question. See example below.


    Page 2 with two repair questions. The Repair Question type is Radio group (available in the Components Column and explained later in detail).


    Page 3 with one repair questions. The Repair Question type is Text Field (available in the Components Column and explained later in detail).



    Explanation of items available in the Components Column:

    Items in the Component Column showcased in the image below.


    Page: you always start by dragging a Page Item from the Components Column to the Middle Column. You CANNOT add any items from the Components Column to the Middle Column without adding a Page Item first. The items go into the page therefore adding a Page Item is the first step. You can drag multiple Page Items to the Middle Column. Each page represents one step in the repair process as shown in the example above with the different pages.

    The image below shows Pages in the Middle Column added from the Components Column.


    Select: the Select Item is a type of Question Item that you can use if you want a dropdown menu as the answer to the question. See image below for example.

    The image below shows the Select Item.



    Label: the Label Item contains a question and a description field. The Label Item can be used to group different items if they have the same main heading or belong to the same category. See example below.


    The image below shows the Label Item.


    Radio Group: a Radio Group Item is a type of Question Item from which one can select a value from a defined list. See example below.


    The image below shows the Radio Group Item.

    Switch: the Switch Item lets you toggle on/off your selection. See example below.

    The image below shows the Switch Item.


    Checkbox: the Checkbox item, as the name suggests, let’s you check/uncheck your selection. See example below.

    The image below shows the Checkbox Item.



    Text Field: the Text Field Item allows you to add a short text as a response to the question/state/description. See example below.


    The image below shows the Text Field Item.


    Text Area: a Text Area Item also allows you to add a text bit in contrast to Text Field Item where you can only add a short text, you can add a larger text in the Text Area Item.

    The image below shows the Text Area Item.



    Middle Column

    This is where you drag items from the Components Column to create pages and questions. The questions can be edited in the Properties Column. The middle column renders the selected item from the Components Column. Once you’ve set up a few pages you can switch between them.

    The image below highlights the Middle Column.



    In the Middle column you can only see the items and cannot edit them. To edit them you need to use the Properties Column. When you edit an item in the Properties Column, it is rendered in the Middle Column and gives you an idea of how the questions would be displayed.


    Properties Column

    The Properties Column lets you edit the items that you select and drag to the Middle Column from the Component Column.



    Explanation of items available in the Properties Column:


    Page Properties

    When you add a Page Item to the middle Column from the Components Column, the Page Properties are displayed in the Properties Column.



    Page Name: a unique text followed by a delete button. Clicking on the delete button will delete the page together with the questions in it. The page name is not editable and is randomly generated.


    Page Type: you can choose between Step or Summary as the Page Type. If you select Step, then this means that the current page is just one page out of x pages and will be followed by the next page when the user goes through the repair process. If you select Summary then the summary page is meant to be the last page before submitting the repair process.


    Page Question: in the Page Question section you can edit the questions and its components. The Page Question section is displayed only when there is a Question Item in the Page Item. See the image below:


    No Question item on the page.


    With Question Item on the page.




    Question Properties

    When you add a Question Item to the Middle Column from the Components Column, the Page Question Properties are displayed in the Properties Column. The Question Properties may change according to the Question Item selected from the Components Column.



    Page Questions: this section shows all the questions that are on a particular page. To edit a question field, select the question from the Page Questions list. You can use the up and down arrow icons displayed next to the question to change the order of the questions in which they are displayed on the Page Item.



    Question Name: the question name is randomly generated and cannot be edited.


    Parent Question: a parent question as the name suggests is a question upon which other questions are dependent. Basically a question from which the selected question can retrieve the following:

    - Description: the question will use the value of the parent question as a description. (eg: the parent question asks for damaged items and this question will retrieve those and ask for a price or repair duration)

    - Visibility: also defined as conditional value field, one can define a value the parent must have in order for the selected question to be visible (e.g.: the parent question asks if the item is rentable and the selected question(may be: delete from stock?) is visible when the parent’s value is "No").

    Let’s look at examples to understand how parent questions and non-parent questions interact together.


    Background

    The first Page Item in the Middle Column has 4 questions. Question 1 “Is the product complete?” is an independent question and is not dependent on any other question.


    If the user selects “Yes” in response to “Is this product complete” question, then the dependent questions will disappear because logically according to the question, it doesn't make sense to display the other questions, if the product is complete. See example below:

    Response to “Is this product complete?” is “No”, the other questions stay on the page.


    Response to “Is this product complete?” is “Yes”, the remaining questions disappear.


    How this process is set up is explained below:

    If the visibility of a question is dependent on the response/selection of some other question, then a few things need to be done in the Properties Column to make that interaction happen.

    In the image below you can see that the visibility of "Is any part missing" is dependent on the response of "Is this product complete?".


    • When you are editing the details of a non-parent question or a dependent question in the Properties Column, then in the Parent Question field, select the question on which your current question is dependent.




    “Is any part missing” is dependent on “Is this product complete” therefore while editing the properties of the “Is any part missing” question, select “Is the product complete” as the parent question in the Parent Question field. The Parent Question field displays a dropdown list of questions that are available and previously created. Therefore it is advisable to have the parent question first and then work your way down to the dependent questions.


    If you assign a conditional value, (see image below) then that means that white editing the properties of the next question, you define this question as the parent question and if the conditional value matches the value of the parent question then the next question will be displayed.

    Important: the Contitional Value field in the Properties Column is case sensetive.


    The conditional value of “Is any part missing” is “Yes”, which means that if the user selects “Yes” as a response to this question, then another action will happen, that is another question will become visible that is dependent on this question. (see image)



    This interaction happens when the parent question is defined as “Is any part missing” while editing the properties of the “What parts are missing” question and the Conditional Value input field contains “Yes”.



    Question Text: the main text displayed in the question field. See image below.



    Question Description: the description field that goes under the question. Can be left blank if you don’t want to have a description for the question. See image below:



    Question Type: question type has four possible options. They are explained below:



    - State: information indicating state. For example the state of the product (good, bad, needs repair, not rentable etc.)

    - Cost: information indicating cost. If the question is in the Summary Page Type then a checkbox will appear indicating if this is a total cost question, which will sum all the other cost questions if selected. Also the total cost question is only one and will be saved in the server as item repair cost.

    - Duration: information indicating duration. Comes with a “Duration to cost” checkbox that when selected will allow the user to specify a cost rate that will be multiplied by the duration and then included into total cost(if there is any). See example below:


    Important: Please note that Action as a Question Type is still in development and therefore cannot be used at the moment.


    Mandatory Checkbox: decide if you want to make the questions mandatory. If you make a question mandatory then you cannot proceed without selecting an option for the question.



    Label: you can add a label to Question Items that support it (e.g. checkbox, Select etc Question Items). See image below:



    Prefix: you can add a prefix to Question Items that support it. See image below:



    Suffix: you can add a suffix to Question Items that support it. See image below:


    Placeholder: you can add a placeholder text in Question Items that support it. The placeholder text will disappear when the user starts typing in the field.



    Options: adds/removes options to/from Question Items that support it (eg: radio group). See example below:



    How to set up repair questions:

    • Login to your circuly operations backend.
    • In the left navigation bar, scroll down to Admins and click on Repair Questions.




    • Click on the arrow head to expand the Components Column and the Properties column.  (if it’s not automatically visible)




    • Drag the Page item from the Components Column to the Middle Column.
    • In the Properties Column add the Page Name and select the Page Type.
    • Then drag a Question Item (available Question Items: Select, Label, Radio Group, Switch, Checkbox, Text Field, Text Area) to the Middle Column.
    • In the Properties Column edit the Page Question section.
    • Click on the save icon to save your progress and to publish your repair process.


    What statuses can my repairs have in the repair list?


    Your repairs can either be new (when a new return is added to the repair section and you haven’t worked on it yet) or blocked (when you have started with the repair process, but you haven’t finished yet). If you finish your repair it will be automatically deleted out of the repair list.


    You can save your progress when working on your repair at any time and continue working on it at a later point.

    Read more
    Products
    Returns
    mark as bought

    Mark Products as Bought

    ‍Mark products as "bought" during the return process

    Introduction

    During the return process, not all products are actually sent back. Some customers choose to buy the product instead of returning it—especially near or after the end of their subscription period.

    To reflect this accurately in your system, circuly now allows you to mark a product as bought directly in the return handling process—eliminating the need for a separate buyout workflow.

    Feature Overview

    This feature lets you handle two common scenarios more efficiently:

    • The customer returns the product as expected → ✅ Mark as Returned
    • The customer keeps (buys) the product → ✅ Mark as Bought

    By marking a product as bought during the return process, the circuly system will:

    • Skip return-related workflows
    • Reflect the product status as Bought Out in your Asset List
    • Give you control over whether to stop or continue charging recurring payments

    Step-by-Step Guide: Mark a Product as Bought

    1. Go to the Returns section in the circuly Hub.
    2. Select an order from the Return List.
    3. In the Return Handling window:
      • Click on Mark as bought instead of Mark as returned.
    4. (Optional) Check the box Delete future recurring payments depending on your contract terms.

    When to Use or Skip the “Delete Future Recurring Payments” Option

    • Check the box if:
      The customer has bought the product and should no longer be charged any future payments.
    • Do NOT check the box if:
      The customer is still within the minimum contract period but is returning or keeping the product early—you may still want to charge them for the remaining duration.

    What Happens Next

    • The product will be marked as Bought Out in your Asset List.
    • No return workflow will be triggered.
    • Future recurring payments will be stopped if you checked the option.

    This gives you operational flexibility while keeping your inventory and payment records accurate.

    Retaled articles

    Buyout process for your customer from the customer portal.

    Buyout process for a circuly user from the circuly Hub.

    Read more
    Email Templates
    Email setup

    Set Up an Email Template

    Email templates can be edited in the circuly operations backend.

    Introduction

    circuly helps you automate important customer communication through transactional emails. These emails are directly tied to certain events in your rental business — for example, when an order is placed, a payment is processed, a subscription renews, or a return is initiated. Once the event occurs, circuly automatically sends out the appropriate email to your customer.

    Important:

    • circuly only supports transactional emails, not promotional or marketing emails. For newsletters or promotions, please use a dedicated marketing automation tool.
    • Email templates in circuly can be set up in multiple languages based on your allowed language settings. If a template in the customer’s preferred language is missing, circuly will use the default language template. instead. However, if a template is missing in both, the email won’t be sent.
    Review this article to gain a deeper understanding of what default, allowed and preferred language is and how they are used by circuly.

    Setup Overview

    Here’s how circuly’s email templates work and what you can do with them:

    Types of Emails

    Most of the transactional email templates in the circuly Hub fall under four key categories:

    • Orders
    • Payments
    • Subscriptions

    (Some templates also exist outside these categories, which you can configure similarly.)

    Customisation Options

    • Edit the subject line and body: Include placeholders (variables) to dynamically pull customer or order data. Note: not all variables are available for every template.
    • Custom HTML & CSS: Style the emails to match your brand’s look and feel.
    • Multiple languages: Set up templates in the languages you’ve enabled in your circuly settings.

    Search & Organisation

    • Use the search bar on the Email Templates page to quickly find a specific template by name or keyword — helpful if you manage many templates across languages and events.

    Step-by-Step Guide

    1. Navigate to Email Templates

    • Log into your circuly Hub.
    • Click on Email Templates in the left navigation bar.
    • You’ll see template titles arranged in rows and languages in columns.

    2. Create a New Email Template

    • Find the email and language you want to set up, then click Create Template.
    • Decide on the type of template:
      • Blank Template:
        • Start from scratch using your own HTML & CSS.
        • Add any available variables.
        • Use the Preview button to check the look.
      • circuly Predefined:
        • Use a preset template that’s easier to customise.
        • Already styled and includes a basic subject and body — you adjust to fit your brand.
    • Click the save icon to either save progress or finalise the template.

    3. Edit or Modify Existing Templates

    Change the subject line

    • Hover over an existing template, click the pencil icon to edit.
    • Navigate to the email Subject in the top right.
    • Type your new subject and click save.

    Add or remove variables

    • In the edit view, click the Variables button to see the available variables.
    • Click the copy icon next to a variable, then paste it into your HTML wherever you want it displayed.

    Note: Variables are tied to specific templates, so not every variable is available everywhere.

    4. Customise the Design

    Add your logo

    • In circuly’s predefined templates, look for the <img> tag with the class="logo".
    • Replace the src with your logo URL.
    • Optionally adjust the height (default: height="36").

    Use your custom font

    Step 1: Preconnect in the <head>:

    The code is used in HTML to include a font from Google Fonts. It helps by establishing a connection to the font server in advance, allowing faster loading. It also ensures cross-origin access for the font resources. The code specifies the font URL and loads the font stylesheet.

    Place the following snippet within the <head> section.

    • <link rel="preconnect" href="https://fonts.googleapis.com">
      <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
      <link href="https://fonts.googleapis.com/css2?family=Neue+Montreal:wght@400&display=swap" rel="stylesheet">

    The third <link> tag specifies the URL of the font file you want to use. Modify this tag to link to your font from Google Fonts. For example, you can change the family attribute value to the desired font and weight.

    Step 2: Import the font

    The CSS code snippet provided in our example is used to define a custom font. It allows you to specify the font family name and the source URL or path where the font file is located.

    Import the source url of your chosen font (f.g. from Browse Fonts - Google Fonts )

    Step 3: Style specific class attributes with your customised font

    Styling specific classes allows you to target and apply styles to specific elements within your HTML structure. By using classes, you can selectively style certain elements while leaving others unaffected. This provides more control and flexibility in designing your template. It allows you to create consistent styles across multiple elements that share the same class, without affecting other elements on the page. (In our example we have styled the custom font for the card-header element)

    Identify the elements in HTML that you want to style and apply the font rule within the CSS section for this specific class.

    Use colour codes: Styling text colour with CSS

    Using colour codes in the hexadecimal format #ff0000or rgb(255, 0, 0) - both serve the purpose of defining colours. However, there are a few reasons why using hexadecimal colour codes is considered more advantageous because of its simplicity, memorability, flexibility, and compatibility with CSS. In our given example, the color of the text inside the <h2> element is styled using CSS. The colour property is set to #ff0000, which represents the hexadecimal value for the colour red.

    To Do:
    Pick your hexadecimal colour (f.g. HTML Color Picker) and apply the colour code as a rule to your CSS element

    Set up links: Create clickable hyperlinks

    To use a link in HTML, you need to use the <a> element, which is used to create clickable hyperlinks.In our example, the email address "example@circuly.io" is added as a mailto link within the <a> element. This allows users to click on the link to open their default email client with a pre-filled email to that specific address.

    To Do:

    Set the <a> element to create the link, specifying the destination URL or relative path in the href attribute and add the desired link text. Use <a href="URL">Link Text</a> as a general link or <a href="mailto:EMAIL">Link Text</a> as a mail link.

    Set up images: Integrate your custom images

    To add an image to your HTML document, use the <img> tag. Place the tag where you want the image to appear within the HTML structure.

    In our example we have the class attribute assigned to the image tag. It specifies a CSS class name ("image-main") that can be used to style the image using CSS later on. The src attribute specifies the source of the image. In this case, the image source is a URL pointing to an image file hosted on the web.

    To Do:
    Use <img src="URL" alt="Description of the image"> and set the URL of your hosted image.
    If desired, delete unwanted default circuly images by removing the <img> tags.

    Edit the footer section: Modify the footer section

    Our example HTML shows a <section> element with the class attribute class="card", which can serve as a container for your footer content. Within the section, there is a nested structure consisting of <div> elements with various classes for styling purposes. The innermost <div> with the class attribute class="card-body--image" contains the actual content of the footer. It includes a <strong> element for emphasising the text "We are here to help you," followed by plain text and an <a> element for adding a hyperlink. The relevant CSS styling classes for the provided code snippet are .card-body .card--list and .card-body--image

    To Do:

    If desired, modify the text and hyperlink in HTML or if you want to change the image to a custom picture, you can replace the 'URL' in the background-image CSS property with the URL of your custom image.

    Style buttons: Modify clickable buttons

    In our HTML example, the button's URL is dynamically populated by a variable called shop_url. This variable is used within the href attribute of the <a> element to determine the destination to your shop when the button is clicked. While the current default implementation uses the shop_url variable to automatically populate the button's URL, it is technically possible to replace this variable with any other URL redirection. Within the CSS below you can easily modify the styling of the button, such as background colour, text colour and shape.

    To Do:

    If desired, modify the text in HTML and button design in CSS.

    Style boxes: Modify text boxes

    Within the one-time password and refer a friend template, per default we have set up boxes to highlight the OTP and voucher code.In our example of the OTP template, the default HTML represents a paragraph element (<p>) with the class otp-backdrop. Inside the paragraph, there is a placeholder ({{otp_code}}) that suggests the usage of a variable to dynamically populate the code content.Within the CSS below you can easily modify the styling of the box, such as background color, text color and shape.

    To Do:

    If desired, modify the box design in CSS. Please do not replace the default variable.

    Read more