
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.
circuly provides a comprehensive set of transactional email templates triggered by specific subscription lifecycle actions such as orders, payments, subscriptions, and returns. These emails are operational (not promotional) and can be customised to reflect your branding. Each email template is linked to a specific event, and when that event occurs, the email is automatically sent from the circuly Hub.
Important: circuly supports only transactional emails. For promotional content (like offers, discounts, or vouchers), use a marketing automation tool.
Email Template Categories and Triggers: Most of the email templates in circuly fall under four categories: Orders, Payments, Subscriptions, and Returns. A few templates fall outside these categories but are still essential.
The “One-Time Password” email is an email that is sent to your customer when the customer is logging in to the Customer Self- Service portal and requests a one-time password to log in.
The email that is sent to the customer (that is the "One time Password" email) contains a code and a link that can be used to sign in to the Self-Service Portal.
The "Buyout Order Confirmation" email template is a confirmation sent to the customer for a buyout order. This email template informs the customer that the buyout request was processed from your side.
The "Order cancellation" is an email that is sent to the customer to inform them that their order has been cancelled.
Order - Confirmation
The "Order confirmation" email is sent to the customer when a customer goes through your checkout and finalises their order. This email is used to inform the customer that the order has been received by you and is being processed.
Note: A confirmation email will not be triggered from your shop system so as to avoid sending the confirmation email twice to the customer.
Order - Fulfilment Completed
The “Order Fulfilment Completed” email is sent to your customer to inform the customer that their order has been fulfilled (aka Shipped).
Order - Offer
The "Order Offer" is an email that contains the offer for a manually created order and has an quote attached to it. The quote that is attached in the "Order offer" email is created from the "Order offer pdf" email template.
Order - Offer PDF
The "Order Offer pdf" is also a pdf invoice that is sent to the customer along with the "Order offer" email template.
Order - Swap Confirmation
The "Swap confirmation" is an email that is sent to the customer when a product swap request is made. This email informs the customer that the request to replace the order has been received and is being processed.
Payment - Failed
The "Payment has failed" email is an email that is sent to the customer every time a payment (initial, recurring and one-time) fails. This email informs the customer that their payment has failed.
Payment - Invoice
The "Your Invoice" is an email that is sent to your customer when a payment is to be charged but hasn't been charged yet. This email template is used just to inform the customer about the upcoming charge.
The "Invoice" email requires an invoice and is therefore sent in combination with the "Invoice" email template, attached as a PDF (if it's a recurring payment) or with the "One-time transaction" email template, attached as a PDF (if it's a one-time payment).
{% if initial_invoice == false %}
<p>Service period: {{current_period}}</p>
{% endif %}
Payment - Invoice (pdf)
The "Invoice" email template is simply an invoice that is sent as a PDF attachment in combination with emails that require an invoice.
Trigger: When an initial payment is successfully charged, the "Payment was successful" email is triggered. The "Payment was successful" email contains an invoice that is attached as PDF. For the PDF attachment the "Invoice" email template is triggered and used.
When a recurring payment is to be charged (on the upcoming billing date), the "Your Invoice" email template is triggered. The "Your Invoice" email contains an invoice that is attached as PDF. For the PDF attachment the "Invoice" email template is triggered and used.
Settings:
Payment - One-Time Transaction
The "One-time transaction" email template is also an invoice that is sent as a PDF attachment in combination with the "Your invoice" email to inform the customer that a one-time transaction will be charged from their saved payment method due to xyz reason.
Payment - Refund Invoice
Like the "Invoice" and "One-time transaction" email template, the "Refund Invoice" email template is simply an invoice that is sent to the customer in combination as a PDF attachment with the "Transaction refund" email template to inform the customer that a payment has been refunded.
Payment - Successful
The “Payment was successful” email is an email that is sent to your customer when a payment goes through or in other words is successfully charged.
Payment - Transaction Refund
The "Transaction Refund" is an email that is sent to the customer when a payment is refunded from the circuly Hub. The "Transaction Refund" email requires an invoice and is therefore sent in combination wih the "Refund Invoice" email template, attached as a PDF.
It is sent to the customer for both full and partial refunds.
—----
Return Unpaid Product
The "Return unpaid product" is an email that is sent to tell the customer that they need to return the product because there is an issue with their payment method and the payments cannot be charged after multiple payment attempts.
Subscription - Activated
The "Subscription activated" is an email that is sent to the customer to inform the customer that a subscription has been created and has started for their order. It also informs the customer that a recurring payment schedule has started and the payment will be deducted on the next billing date.
Subscription - cancellation received
The "Subscription cancellation received" is an email that is sent to the customer to inform them that the request that they have made from the Customer Self Service portal to cancel the subscription has been received by you and is being processed.
Subscription - Ended
The "Subscription has ended" is an email that is sent to the customer to inform them that their subscription has ended, the product has been received by you and the recurring payments will be stopped.
Subscription - Ending soon reminder
The "Subscription almost over" is an email that is sent to the customer x days before the subscription end date. This email informs the customer that their subscription is about to end.
Note: You can define the value for x in the Settings.
Note: The email is not triggered if the "Notify if auto renew is active" setting is disabled
Subscription - Pending Return
The "Subscription pending return" is an email that is sent to the customer to inform them the return request has been received.
This email is normally manually triggered but can also be automated.
The "Subscription pending return" email can also be used to inform the customer about the return procedure for the product.
Subscription - Reactivated
The "Subscription reactivated" is an email that is sent to the customer to inform the customer that their subscription has been reactivated.
Subscription - Return Reminder
The "Return Reminder" email is sent to the customer to remind the customer that they need to return their subscription product as their subscription has ended and is pending return.
Subscription - Return Unpaid Product
The "Return unpaid product" is an email that is sent to tell the customer that they need to return the product because there is an issue with their payment method and the payments cannot be charged after multiple payment attempts.
Subscription - Swap Pending Return
Sent automatically when a customer requests a swap or when a swap is initiated manually by a circuly user. This email refers to the original product that is being swapped and is awaiting return.
Return Instruction
The "Return instruction" is an email template that is sent to the customer to inform them about how to return the subscription product.
Refer a Friend
The "Refer a friend" is an email that is sent automatically when your customer use the Refer a friend feature in the Customer Self Service portal.
Follow this guide to learn more about setting up email templates.
circuly’s transactional email system ensures customers are notified clearly and promptly at each step of their subscription journey. With full template customisation and precise triggers, you maintain control over your brand voice while meeting compliance standards like invoice formatting.
The Merge Customers functionality in circuly allows you to combine duplicate or related customer profiles by transferring all data from one customer (the source) into another (the target). This is useful for keeping your customer database clean and ensuring all subscriptions, orders, and transactions are linked to the correct customer profile.
Important: Merging customers is a destructive and irreversible action. Once merged, the original (source) customer profile will no longer hold any data — everything will be moved to the target customer.
All subscriptions, transactions, orders, payment methods, notes, and product trackings from the source customer will now be transferred to the target customer profile.
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.
With invoice line item exports, you can:
If you’d like to receive invoice line item data automatically — without manually exporting every time — you can use circuly’s webhook functionality.
As with any webhook, data will be pushed to the destination URL whenever the event is triggered.
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.
A native integration for debt collection, offers the following benefits:
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.
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.
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.”
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.
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.
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.
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.
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
There are two steps to enabling and setting up the debt collection feature:
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.
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.
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.
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.
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.
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.
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
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.
In the circuly Hub, you can configure:
To access the settings:
Go to: Settings > Invoices & Payments > Failed Payment
Learn more: What is a payment cycle?
To access the settings:
Go to: Settings > Emails > Payment Notifications
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.
Possible status options and their explanation:
Tags do not have a fixed definition and can be used based on the definition that has been defined internally. Tags need to be changed manually and have no automation behind them. They shall be used to communicate between users internally after agreeing on a fixed definition for the existing tags. They are not visible to your customer. Tags are not shown in any form to your customer.
Find more info regarding updating the tag via API here.
The origin information is not shown to the customer in any form.
The subscription type information is not shown to the customer in any form.
The subscription frequency defines the billing schedule for the subscription or in other words how often the customer is charged for their subscription. Currently the following values are possible.
Numerical value ranging from 0 to x (Defined by you in your settings for failed payments. Associated setting: Number of payment retries).
Indicates the date when the next automatic payment charge try will be done. If the maximum number of autoamtic tries was done this will indicate the date when the last automatic payment try was done.
The displayed value varies according the payment service provider used. The information displayed here is directly taken from your connected service provider. Kindly check the failed reason articles from your respective PSP.
Note: The failed reasons are only for recurring payments.
Quick links for PSP documentation on failed reasons
Repair Status
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.
You can automate the return handling process using the circuly Customer API.
Use this option when:
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.
Once confirmed, you’ll see a message that the subscription has been ended.
If you’ve set up the Repair workflow in circuly:
The “Delete future recurring payments” checkbox determines whether upcoming charges should be canceled when processing a return.
This checkbox appears in two places:
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.
You can control how returned products affect your stock levels.
Go to Settings > Subscriptions > Return subscription > Enable Update stock on SKU level after return
If you do not want circuly to update your stock at all, please contact us via the Service Desk.
Tip: This process can be automated via our customer API. This is the POST request you can use https://api-docs.circuly.io/docs/customers-api-docs/eb7ac5d762d9d-fulfill-order-by-id that you can use for marking order as fulfilled.
For Bulk Update follow this link: https://api-docs.circuly.io/docs/customers-api-docs/7qbwc0gwj2t9q-fulfill-orders-in-bulk
When your customer completes the checkout process and finalises the order, an order is created in your Shopsystem and in the circuly Operations Backend. To start collecting recurring payments, a subscription needs to be created for the order.
In the circuly Operations Backend, you can find multiple ways to create a subscription. circuly provides you both, manual and automated workflows for creating a subscription.
The decision to choose a manual option or an automated one depends on the number/quantity of incoming orders and the amount of control you want over the operations.
Available options for creating a subscription:
In this article we’ll go over the Mark as fulfilled option. For all other ways to create a subscription, refer to this article: All Different Ways to Start a Subscription in the circuly Operations Backend
You can automate the process of creating a subscription by making the subscription create process dependent on the "Mark as fulfilled" button.
Typically the mark as fulfilled button is used to indicate that an order has been successfully delivered. Fulfilling order is part of the shipping process. You want to use the fulfilment function to mark that the order item has left the warehouse.
However it can also be used to automatically create subscriptions.
If you enable the Auto activate subscription setting in your Settings then subscriptions will be automatically started after they are marked as fulfilled by a circuly user.
To access the setting > Go to Settings > Subscriptions > CREATE SUBSCRIPTION > Enable the switch for Auto activate subscriptions.
Note: The subscription start date value will be taken from the Auto activate offset setting. Make sure that you define the value in the respective setting.
What does ‘mark as completed’ do?
(setting: Auto activate subscriptions)
What set-up is necessary for the fulfil order function?
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:
The extension price is configured per product variant in the circuly Hub It is used when:
Once set, this price will be automatically applied when the subscription enters its extension phase.
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.
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.
With 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.
To continue charging monthly after the prepaid period:
This price will be used when the auto-renewal activates after the prepaid term.
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.
There are two common reasons to use the Shopify Order Name instead of the circuly-generated Order ID:
The circuly-generated Order ID appears in:
If not changed, this is the value customers will see by default.
You should consider replacing circuly’s Order ID with Shopify’s Order Name if:
To use the Shopify Order Name instead of circuly’s Order ID:
{{order_ID}}
with the Shopify order name variable.Once updated, customers will see the Shopify Order Name in their emails and in the Self-Service Portal.
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.
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.
To enable automatic reservation of serial numbers:
Once this switch is enabled, circuly will:
When you create a subscription, the serial number will already be pre-assigned to the order item—saving you an extra step.
To use the serial number reservation feature, your assets need to be added to circuly and marked as “in stock”.
Once imported, circuly will use these assets to fulfill orders with automatic serial number reservation.
Customers can cancel their subscriptions either by using the Customer Self-Service Portal or by contacting your customer support. circuly provides flexibility in managing both types of requests, offering control over manual processing and automation where applicable.
When a customer contacts your support team directly, you (a circuly user) manually manage the cancellation request. This gives you full control over whether the subscription should be:
You can decide the course of action based on whether the customer has received a product and whether the order has an attached subscription. This approach is completely manual and requires user intervention in the circuly Operations Backend.
When a cancellation request is made through the Customer Self-Service Portal, the circuly system can automate parts of the process, reducing manual input.
When your customers get in touch with your customer support, you have full control over how you want to cancel the subscription and if you want to cancel it. This process is manual as it requires a circuly user to cancel the subscription or set it as pending return, depending on whether or not there is a subscription attached to the order and whether or not the customer has your products.
However when cancellation requests are made from the Self-Service Portal, you can enable the circuly system to take some actions fully automated without any manual input from your side.
One setting that influences what happens after a cancellation request is processed is the Delete recurring payments setting.
When a cancellation request is made from the self-service portal the Auto cancel subscription setting has an influence on the status of the subscription and the status of the subscription has an influence on the Delete recurring payment setting.
Note: The subscription status only has an influence on the Delete recurring payment setting when the cancellation request is made from the self-service portal, and the cancellation action sets the subscription status as pending return. Actions performed by a circuly user that set the subscription status a spending return in the circuly Operations Backend do not interact with the Delete recurring payment setting.
If any of the following conditions is met, the status of the subscription is automatically set to pending return
Learn more about the Auto cancel subscription setting.
As the name suggests the Delete recurring payment setting can be used if you want to delete future recurring 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.
As mentioned above user actions in the circuly Operations Backend that set the subscription status as pending return do not interact with the Delete recurring payment setting.
Important: The payments are deleted irrespective of whether or not you’ve received the product back from the customer.
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.
Introduction
If you are facing any issues with your subscription you can easily report an issue for the same.
To report an issue > Select Report an issue from the subscription action dropdown menu under Your Subscriptions and click on CONFIRM > You will be taken to the subscription overview window > In the same window, write a message in the Your Message input field describing the issue in detail and click on the SEND button.
Alternatively you can use the email address mentioned in the self-service portal to write an email to our customer support.
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.
To access the setting > Go to Settings > Checkout > PRE CHECKOUT > Check system stock.
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.
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.
Settings > Invoice & Payment > FAILED PAYMENT > Maximum number of payment attempts
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.
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.
Exchange Groups is a feature in the circuly Hub that lets you:
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
Note: An exchange group can include up to 1000 product variants.
To verify, scroll horizontally in the Variants tab to view the Exchange Group column.
Exchange Groups use the swap logic and associated settings. Ensure your swap settings are configured under Settings > Swaps.
To avoid offering out-of-stock products, activate the stock validation feature:
Note: Update your collections regularly if you have stock-sensitive items like refurbished products.
Here’s how the exchange process looks for your customers:
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.
Learn more about manually creating subscriptions or using the bulk update feature to update orders.
Also applicable to coffee, baby diapers, wine, and other consumables.
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.
circuly supports product swaps through two main channels:
Both methods integrate into your subscription flow and trigger a series of backend processes depending on how the swap settings are configured.
Here’s a breakdown of the key swap-related settings in the circuly Hub:
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.
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.
Note: if you don’t actively click this button, the filter won’t be applied.
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:
Important: Clicking on the cancel (×) icon next to a saved filter will permanently delete that saved filter.
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.
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.
Bookkeeping is an essential process for managing the financial transactions related to your subscription-based services or products. In a subscription business, it’s crucial to track and record various payment events, such as initial payments, recurring payments, one-time payments, refunds, and invoice management. Understanding how to set up and manage these financial transactions within circuly can help streamline your operations, ensure accurate record-keeping, and provide insights for forecasting revenue.
Bookkeeping in a subscription business involves recording and managing the financial transactions related to the recurring revenue from subscription-based services or products.
When your customers goes through your checkout, select a payment method and enter their payment details - Your customer goes over your checkout and places an order by adding their payment details and finalising the order. They select a payment method and add their payment details.
Note: The payment methods that are displayed on the checkout depend on the Payment Service Provider you use.
A payment profile is created - as soon as the customer is on on the Order confirmation page, a payment profile is created in circuly and in your connected Payment Service Provider.
Note: circuly never gets any access to the payment information of the customer and also doesn’t park any payments. Circuly only creates a payment token and triggers your Payment Service Provider to charge the payment. Any payment that is successfully charged, goes directly to your connected account.
In circuly there are three types of payments:
Every payment initiated in the circuly Hub has an email template attached to it. All payment-related email templates are sent with an invoice, which make use of the invoice email templates.
Here’s an overview of the email templates triggered by the three types of payments in the circuly Operations Backend:
Access the Miro board about Email Templates and their triggers.
Trigger: Typically automated and can be manual.
Associated email templates: Payment was successful and Invoice.
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. Typically the initial payment is triggered and charged automatically. However you can choose not to charge the initial payment in the checkout and delay the charge, (delayed charge) until a later point in time. When you do so, you’ll have to charge the initial payment manually.
Note: Typically subscriptions can only be created if the initial payment is successfully charged. This is the case bacuse any failures in charging the initial payment indicate that their might be problems with charging the recurring payments in the future.
You can choose to create a subscription even if the initial payment is not charged yet. In order to do that, you need to enable the Setting that allows you to create subscriptions for unpaid order or order without an initial payment.
Important: the option to delay the initial payment is available only for Stripe and Braintree users.
Trigger: automated
Associated email templates: Your invoice and invoice.
Recurring payments are the payments that have a schedule behind them and are charged on a recurring basis depending on the frequency such as daily, weekly, monthly or yearly.
In circuly the monthly subscription fees are charged from the saved payment method of the consumer automatically.
Note: Recurring payments can be manually charged. The option to charge a recurring payment manually is typically used when you want to charge a recurring payment ahead of its planned schedule or charge date or if there is any kind of problem in charging the recurring payment automatically. Learn more about charging a single recurring payment in the circuly Operations Backend.
Trigger: manual
Associated email templates: Your invoice and one-time transaction.
One time payments are payments that do not have schedule or frequency behind them and are charged manually by a circuly user from the circuly Operations Backend. The reason for charging the recurring payment can be anything from repair charges to additional services offered.
In the circuly Operations Backend you can initiate partial and full refund. Refunds are triggered manually and the refund action also makes use of the Email Templates to inform the customer about the refund. When you perform a refund action, the transaction refund email template is triggered. The transaction refund email is sent together with an invoice, for which the refund invoice email template is used.
Invoices are generated for payment-related actions such as initial payments, one-time payments, recurring payments and refunds. An invoice is also generated if you cancel an invoice, make corrections on the invoice and if you retry failed payments.
With circuly you have two options when it comes to sending invoices to your customers.
In the circuly Operations backend, invoices are available as templates in the Email Templates tab. Invoices are categorised based on the purpose such as one-time invoice for one time payment, refund invoice for refunds etc, and are triggered in combination with the Email Template it replies on.
You can enable circuly's default templates to get an idea about the information the different email templates typically contain.
Invoice email setup
In the circuly Operations Backend email templates are CSS and HTML based which gives you complete freedom to set up the email templates to fit your brand identity. If CSS and HTML are not your strongest suite, you can use the default templates of circuly and change the logos, and colour scheme to make the email fit your brand identity.
Note: Every email templates has a list of available variables that can be used while setting up the email templates. You can only use variables that are available.
Learn more about setting up email templates in the circuly Operations Backend.
Invoice data setup
The numeration scheme of the invoice is customisable and can be setup in the Settings. To do the setup go to Settings > Invoice & payments > INVOICE SETUP > Add your custom values to the given input fields.
Note: The invoices are date-to-date invoices meaning the performance period for each monthly payment is exactly thirty days. The performance period starts whenever the subscription is started - so at subscription start date + 30 days.
Pro tip: If this makes the bookkeeping processes too complicated to have varying performance periods that count into two months, we would advise to start each subscription on the first of the month. If a customer starts in the first half of the month, you could also start the subscription mid of the month and charge the remaining half of the month via a one-time payment to start recurring payments always on the first.
You can download the invoices by exporting them. You can use the filter function to only see invoices for a custom criteria.
Commonly used filter functions:
Similarly you can filter the Invoice list for finding invoices for initial payment, buyout articles, recurring payments, cumulated invoices, one-time transaction and cancellation.
To forecast revenue in a subscription business, ideally you needs to consider various factors that affect your revenue streams. Some of the key factors to consider include the number of subscribers, the price of the subscription, and the length of the subscription term. Other factor that may impact revenue include customer churn rate.
To create an accurate revenue forecast, businesses typically use historical data on their revenue streams and subscription trends, along with assumptions about future market conditions and customer behaviour.
However if your subscription business is new, you may not have a pool of historical data to play in.
Our recommendation therefore is to set up a minimum subscription duration (if it fits with your business case) for better financial planning.
This article explains how cancellations are handled in circuly when customers exercise their legal right to cancel within the early cancellation period (commonly 14 days in Germany). This process ensures legal compliance while allowing your team to automate most of the customer journey.
This article explains how the early cancellation process works in circuly if the option to cancel the subscription is available in subscription action menu and the cancellation is processed from the circuly Self-Service Portal.
When a customer initiates a cancellation within the early cancellation period:
Info: It is mandatory as per German law to provide a cancellation button to your customers and the possibility to cancel subscriptions within the early cancellation period.
Here's how the process looks for your customers and actions they take to make a cancellation request that is within the early cancellation period.
A window slides in from the right. The customer continues the cancellation process by selecting a "cancellation type" (normal or extraordinary cancellation) and "cancellation reason" (displayed as soon as the customer selects the cancellation type).
When a cancellation request is made, the circuly system checks is the request is within or outside of the early cancellation period.
If the request is within the early cancellation period, the customer sees two options under the field Return the product: immediately and after minimum subscription duration (See image below).
Option 1: The customer selects "immediately" as an option to return the product.
Option 2: The customer selects "after minimum duration" as an option to return the product.
However if the cancellation request is outside of the early cancellation period then the customer does not see any return option and can instead only make a cancellation request.
Kindly go through the settings explained above to set up the process once.
Your connected customer care email inbox receives an email about the cancellation.
Depending on the choice of the customer under "Return the product" the actions and process will vary.
The subscription gets the tag "cancelled by customer".
If Auto cancel subscription setting is enabled > The subscription status is set to "pending return", the subscription gets the tag "cancelled by customer", the subscription additionally gets the "cancelled on end date" status.
If Auto cancel subscription setting is disabled > The subscription status is NOT set to "pending return" and remains active, the subscription gets the tag "cancelled by customer", the subscription additionally gets the "cancelled on end date" status, the subscription will go to "pending return" state when end date has arrived.
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.
Refund order is a feature available in the circuly Hub that lets you refund any charged one-time payment, recurring payment, or buyout payment.
Important: A payment must already exist (and be charged) in order to process a refund.
When a refund is successfully processed:
Learn more about possible payment statuses in the Payments article.
Learn more about how to process a refund in the steps below.
Refunds can be processed for:
Whenever a payment is processed, circuly creates a corresponding invoice in the Invoices tab.
Important: Refunds are performed at the invoice level, not the payment level.
To identify what type of payment you're working with, refer to the Invoice type column in the Invoices tab.
You can only refund payments that have already been charged. If a payment is uncharged or scheduled for the future, the Refund button will be disabled (greyed out).
To check charge status:
Look at the “Paid” column in the Invoices tab.
If the column isn’t visible:
Option 1: Full refund
Option 2: Use custom value
Option 3: Select products
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}}
.
Once processed:
Given below are common reasons why your customers are prevented from placing an order
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.
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.
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.
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:
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.
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.
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.
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.
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.
The Customer Self-Service Portal empowers your customers to independently manage their subscriptions with ease. In the customer portal, your customers can take various actions such as cancel subscriptions, download invoices, update personal information, and report issues.
Note: the option to Report an issue is by default set to visible and is displayed in the Subscription action dropdown menu unless you decide to disable the option to report an issue in your circuly Hub Settings. To do so go to Settings > Self-Service Portal > Features > Toggle off the Allow report issue switch.
Prerequisite: In order to receive notification about issues make sure that you've added an email address under the Customer care email address setting as this is the email that receives notification about the reported issues. To learn more about the Customer care email address setting, how to enable it and information about which events trigger a notification/email to your defined email address, review this article.
The circuly system sends an email notification to the email(s) specified under the Customer care email address setting when events, like Report an issue, take place. The email is sent to your connected inbox. You can also access the information in the circuly Hub. The email History tab provides a history of all emails triggered from the circuly system. This also includes emails sent from the circuly system to to a circuly user or an email address specified under certain settings such as the Customer care email address setting for various events such as issue reporting from the customer portal.
Simply navigate to the Email History tab and use the filter function to search for the email. You can search for the subject of the email. For issues reported from the Self-Service Portal, the subject is "Customer reported an issue". Click on the email ID to see the email or hover over the eye icon for a quick preview.
Similar to the Customer care email address setting there is an additional setting that lets you add an email address. The difference between the two is that while the Customer care email address is a setting used by the circuly system to send a user notifications about certain actions, the Support email address is displayed in the Self-Service Portal as follows, see image.
The option to display a support email address is optional and can be skipped. However we recommend adding a support email address as doing so gives the impression to the customer that you are reachable and that increases the customers trust in your product.
Note: If your customer uses the email to make a cancellation request then there are no automated steps or operations followed.
To update or add an email address to the Support email address setting, go to your circuly Hub > Settings > Customer login > General > Support email address > Type an email address in the input field.
Note: You can only add one email address in this input field.
We also recommend adding a BCC list to get copies of all emails sent from the circuly Operations Backend.
To add a BCC list > Go to Settings > Email > General > BCC list > Click on the plus icon “+” to add an email > Repeat the step if you want to add more email addresses.
To encourage customers to use this feature for issue reporting, it’s important to proactively inform them about its availability and provide clear, step-by-step instructions or guides on how to navigate and use the portal effectively.
In the Customer Self-Service Portal there are two ways to report an issue. You can find detailed information about these options in this guide on how your customers can report issues from the Customer Self-Service Portal.
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.
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:
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.
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.
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.
replacement
to automatically tag orders associated with this swap.When you process order in the Returns tab you can either "mark the asset as returned or as bought". The option you pick depends on whether the asset has been returned to you or has been bought by the customer and is not expected to come back.
When should you mark an asset as returned: assets that have been successfully returned to you by the customer should be marked as returned in order to stop the subscription and the recurring payments attached to it.
Note: To stop recurring payments check the box for Delete future recurring payments when you mark the product as returned in the return workflow.
What happens when an asset is market as returned: when an asset is marked as returned the asset moves from the Return List to the Repair List (If you've set up the repair process in the repair section). Since the product needs to be repaired first (at least as per the circuly system) it is not directly pushed back into stock and made available for further renting.
The asset is displayed with “to repair” status in the Asset and Repair List denoting the location of the asset.
Additionally the Subscription ended email is sent to the customer as soon as the product is marked as returned.
When should you mark an asset as bought: assets that are not expected to be returned to you because they have been bought by the customer should be marked as bought.
What happens when an asset is marked as bought: when an asset is marked as bought the asset moves from the Return List but doesn't end up in the Repair List because the product is bought by the customer ans is not expected to be returned or repaired.
The asset is displayed with “bought out” status in the Asset List to denote the location of the asset.
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.
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:
What does "pending return" do?
If the status of a subscription is not set the to "pending return":
Setting the status to “pending return” is essential to:
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:
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.
circuly will automatically update the subscription status to pending return in the following scenarios:
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.
You may need to manually assign the pending return status in the following cases:
Doing so triggers the return workflow, including return instructions and tracking.
When a subscription is marked as pending return, circuly triggers the following actions:
To make the “pending return” workflow work efficiently, configure the following in Settings > Subscriptions > Cancel Subscription:
Learn more about the return workflow and the assoiciated settings here.
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.
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:
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.
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:
Info: For a detailed guide on return settings, scroll down to the Return settings to configure section.
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:
Info: For a detailed guide on return settings, scroll down to the Return settings to configure section.
These three settings control how circuly handles product returns and subscription reactivations:
Let’s say:
In this case:
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:
Review this article to gain a deeper understanding of what default, allowed and preferred language is and how they are used by circuly.
Here’s how circuly’s email templates work and what you can do with them:
Most of the transactional email templates in the circuly Hub fall under four key categories:
(Some templates also exist outside these categories, which you can configure similarly.)
Note: Variables are tied to specific templates, so not every variable is available everywhere.
<img>
tag with the class="logo"
.src
with your logo URL.height="36"
).
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.
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.
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
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.
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.
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.
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.
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.
When you want to export certain data from the operations backend, you can do so by:
Note: when the “Export underway” window says that “you will be notified when the export is ready to download”, this doesn’t mean that you will be notified via email. The notification about the export being ready will be in the notification panel.
In case the notification doesn’t pop up, then the most likely reason for that is that your session has timed out. Simple login again and check the notification panel.
Watch the video tutorial:
In some cases, you may need to extend or adjust the end date of a customer's subscription. This could be due to service delays, special agreements, or customer requests. The circuly Hub allows you to manually update the subscription's end date without altering other subscription parameters.
For questions or further adjustments, reach out to the circuly support team via the service desk.
When you get a return request from your customer either via email or via the customer login, there are two different ways to process the request.
NOTE: the process is not interchangeable as the workflows for the return request depends on how the request was made, that is was it via email or via the customer login.
In this article, we will cover both topics.
When you get a return request via email. Follow these steps to process the return request:
Note: The subscription is still active as the product hasn't been returned to you. Once you receive the product, you have to end the subscription in the operations backend. To end the subscription follow the steps given below:
Your customers may get a speeding ticket for their car subscription or require repair support for which you need to charge a one time transaction. What do you do when you need to charge your customers an extra amount besides their recurring payment?
To charge a one-time payment follow the steps given below or wathc the video tutorial:
Note: The input value in the Message to customer field is only included in the email if you've added the required email variable, that is {{description}}, in the One-time transaction email template.
A common situation in subscription e-commerce is dealing with failed recurring payments. Customers may miss a payment for a number of reasons — from insufficient funds to expired cards — and handling those cases efficiently is critical for healthy subscription operations.
When a recurring payment fails, the circuly system automatically attempts to retry the payment based on the settings you define. This reduces the need for manual work and ensures revenue collection doesn’t stop due to temporary issues.
The exact reason is displayed in the Recurring Payment List under the Failed Reason column. This is the same reason shown in your Payment Service Provider (PSP) dashboard.
Important:
If the Payment Settled column shows “X" (a cross) this does not mean the payment failed. It just means the payment hasn’t been charged or settled yet (e.g. the charge date is in the future).
If your settings allow it, circuly will retry the payment automatically. This can include:
These actions are powered by the settings below.
Follow this guide on failed payment settings.
If the last retry fails:
Yes, you can retry failed recurring payments manually, even after all automatic attempts are exhausted.
The payment status will now update to “Yes” under Payment Settled.
Only retry a payment manually when:
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.
Refund order is a feature available in the circuly Hub that lets you refund any charged one-time payment, recurring payment, or buyout payment.
Important: A payment must already exist (and be charged) in order to process a refund.
When a refund is successfully processed:
Learn more about possible payment statuses in the Payments article.
Learn more about how to process a refund in the steps below.
Refunds can be processed for:
Whenever a payment is processed, circuly creates a corresponding invoice in the Invoices tab.
Important: Refunds are performed at the invoice level, not the payment level.
To identify what type of payment you're working with, refer to the Invoice type column in the Invoices tab.
You can only refund payments that have already been charged. If a payment is uncharged or scheduled for the future, the Refund button will be disabled (greyed out).
To check charge status:
Look at the “Paid” column in the Invoices tab.
If the column isn’t visible:
Option 1: Full refund
Option 2: Use custom value
Option 3: Select products
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}}
.
Once processed:
Tags in the circuly Hub are internal tools that help you manage and track order statuses and actions efficiently. By attaching descriptive tags and relevant dates to orders, teams can collaborate better, maintain clarity, and streamline rental operations—without relying on memory or external documentation.
Tip: You can automate tag updates via circuly's Customer API. See API Docs
Tags provide visual and operational clarity. For instance, a tag can indicate whether a product has been delivered, picked up, or is lost. Used effectively, tags reduce ambiguity and improve team communication.
The following tags are predefined but can be customised according to your internal processes:
Note: Tags do not alter buffer times, delivery times, subscription start dates, or payment dates.
If you use a "Delivery Date Picker" in your checkout process, the selected delivery date will automatically populate the tag date field.
Q: Can tags affect order processing logic or subscription activation?
A: No. Tags are only visual and for internal tracking. They do not impact any backend logic.
Q: Can we define our own tags?
A: While common tags are predefined, your team can adopt your own internal definitions.
Q: Can we automate tag assignments?
A: Yes. Use the circuly Customer API to update tags programmatically.
Tip: This process can be automated via our customer API. This is the PUT request you can use https://api-docs.circuly.io/docs/customers-api-docs/pgyucirl7m7fh-update-order-s-tag to update the order tag.
A tag is a keyword assigned to a piece of information that helps describe it visually and allows it to be easily found. In the circuly operations backend a tag is a keyword assigned to an order. Accompanied with the tag date, a tag describes what action needs to be taken or is currently active and the date associated with that action. Every order can have a tag and a tag date attached to it.
Tags main purpose is to see the associated action of an order at first sight. In order to gain a better overview of the status of your orders you can add tags to each order. The additional information serves your team e.g. to assure everyone working in the system directly knows the handling status/fulfilment timeline regardless of an external additional document, a single person's memory or additional assumption being made based on other information. Tags are solely for internal use and do not change anything for the consumer. Using tags also does not influence the information and pre-set e.g. buffer time/delivery time, order date or subscription date started, payment date.
The different tags can be interpreted as follows - however can also be given a different definition within your team:
A tag date simply represents the fulfilment timeline of the tag.
Tags can be added and edited for an order in the Order List. You can find the Order List by navigating to Orders in the left navigation bar. To add a tag follow the following steps:
Note: If you have a "Delivery Date Picker" in your checkout, the selected delivery date will be used for the Tag date value for the order in question.
Tags and tag date are meant to be used for internal operations. They do not have any affect on the order or customer data. If there are multiple users of the operations backend, tags can help in efficiently managing rentals by providing a visual aspect.
You can create vouchers directly in the circuly Hub. The voucher creation functionality allows you to customise various parameters, such as the voucher code's validity period, the voucher amount, and even link the voucher to a specific customer.
10%BIGDISCOUNT
or 20%LASTOFFER
. These types of codes clearly communicate the discount amount and create a sense of urgency or exclusivity, which can help drive higher conversions. circuly’s Retailer Portal is a new, simplified solution that enables you to empower your retailers to create subscription orders without the complexity of accessing the full circuly Hub.
Here are a few use cases of how you can employ the retailer portal:
In-store orders and physical locations:
Multiple locations:
Sign-up with in-store verification:
Once an order is created through the portal, it follows the same logic as all other orders, including cancellations, swaps, buyouts, payment retries, and more—based on the settings you’ve configured in your circuly Hub.
Here's a brief overview:
Here's an overview of the steps:
Customise the retailer portal with theming. These customisations control how the it appears to your retailers and its users, ensuring a consistent brand experience.
You need to share the login details with the retailer. To do that > Go to Settings > Company settings > Company data > Retailer domain. Share this URL with the retailer along with the location ID and the password.
The Retailer Portal makes it easy for retailers to create subscription orders without needing access to the full circuly Hub. It’s simple, works on all devices, and integrates with the customer self-service portal, streamlining the order process.
Will the customer have access to the self-service portal if the order originates from a retailer?
Yes, all orders created through the Retailer Portal are fully integrated with the customer self-service portal, so customers will have access to manage their subscription, update details, and track their orders.
Can I control which products are available in the Retailer Portal?
Yes, you can control which products are available in the Retailer Portal, but this applies to all retailers. You manage the product selection centrally in the circuly Hub.
What happens if a customer doesn’t complete the checkout process?
If the customer doesn’t finalise their checkout, the order will not appear in Circuly, but it will be visible with the status "Open" in the Retailer Portal. Retailers can follow up with the customer and encourage them to complete the order.
Can I restrict which retailers can access certain products?A: No, product availability is controlled globally for all retailers. You cannot restrict specific products to individual retailers, but you can control which products are available across all retail locations.
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.
Variables used include: is_account_balance
, from_account_balance
, and final_invoice_amount
.
Clearly explain how the reward will be used (account balance, not cashback), and ensure transparency to avoid misunderstandings.
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.
Every product in circuly is tracked using a unique serial number. Serial numbers allow you to monitor key product KPIs like:
Sometimes, a serial number may need to be replaced—for example, due to a typing error or internal stock adjustment. circuly gives you the option to manually update the serial number from either the Orders or Subscriptions tab in the circuly Hub.
You can replace a serial number from two places:
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.
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:
For payments processed by circuly through your PSP, there's usually no need to mark them manually. These are automatically settled once charged.
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
⋯
next to the relevant payment to open the action menu.Option 2: From the Recurring Payments Tab
⋯
next to the payment.Once confirmed:
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.
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 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:
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:
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:
Note: You can only set one default language.
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:
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.
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 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
Step 5: Explore the Portal
Once logged in, the customer will see an overview of their subscriptions, payments, and more.
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 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
Option 2: Check via the Customer Profile
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
2. DNS settings are misconfigured
3. Using an unsuitable email provider
4. External links in your email template
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:
Submit a ticket to the circuly Service Desk. We’re happy to investigate further or guide you on the next steps.
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.
There are two ways to initiate a product buyout in circuly:
The difference between the two options:
The key difference between the two buyout methods lies in how much control you want over pricing.
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:
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:
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 of how to deal with buyouts from the circuly Hub, continue reading this article.
Step 1: Check the retail price
Before initiating a buyout, make sure the retail price of the product is correct:
Step 2: Initiate the buyout
Make sure the email template you use includes the {{description}}
variable so the custom message appears correctly in the customer communication.
Buyout payment can take some time to process when SEPA is chosen. This should be mentioned in the email communication with the customer. Example text that 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.
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.
The Pending Return status plays a key role in return management:
There are two ways to set the subscription status to pending return:
💡 You can also automate this process using the Customer API:
Use this PUT request to set a real subscription end date →
Use this method if a customer requests a cancellation before their subscription ends.
Step 1: Log in and Find the Subscription
Step 2: Set Status to Pending Return
⋯
in the top right corner.Step 3: Add Details (Optional)
In the Set subscription to pending return window:
Step 4: Decide on Future Charges
You’ll see the option: Delete future recurring payments.
Step 5: Confirm the Action
Click the CONFIRM button to finalise.
Once the subscription is marked as Pending Return:
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.
This feature lets you handle two common scenarios more efficiently:
By marking a product as bought during the return process, the circuly system will:
This gives you operational flexibility while keeping your inventory and payment records accurate.
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.
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:
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.
Editing an Order
Customer journey
If the updated order is sent to the customer:
If the order is processed internally:
In both cases, the updated order becomes active, and the original order should be cancelled and refunded manually if needed.
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.
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:
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.
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.
To enable automatic subscription creation, you need to configure two settings in your circuly Hub:
3
, the subscription start date will be 3 days after the order is marked as fulfilled.Settings > Subscription > Create Subscription.
3
).That’s it—circuly will automatically create a subscription for that order using the configured settings.
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.
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.
Settings
>
Subscription
>
General
.3
, the subscription will start 4 days after the order is placed.3
, making the total delay 4
days (1 + 3).When your customer goes over your checkout and places an order by completing the payment process, an order is created in the circuly Hub. In order to start collecting recurring payments for the order a subscription needs to be created for it.
In circuly the process of creating a subscription for an order enables various subscription-specific tasks such as creating a recurring payment schedule, charging the payment on the due date, tracking the minimum subscription duration, end date, renewals etc.
The process of creating a subscription for an order can be either performed manually or it can be automated. Under the manual process there are a few different options to create a subscription, whereas the automated way of creating a subscription is through circuly's Customer API.
To ensure these processes run smoothly, you need to decide how subscriptions are created—either manually or through automation. You can always change your approach at a later stage. When you are new to circuly and just getting started, the manual approach may be better suited as it gives you the possibility to see how the system works.
There are multiple ways to create a subscription in the circuly Hub. You can create a subscription from the following:
In this article we'll cover both the manual and the automated process of creating subscriptions for order.
Note: To identify which order have a subscription already and which don't, you can look at the Active subscription column.
Note: When you click on "Generate", circuly assigns a random unique ID to the product. If your products already have pre-defined serial numbers, you can manually enter them. This ensures accurate product-level tracking—like revenue, rental cycles, repairs, and usage—since all tracking in circuly is tied to the serial number.
Tip: This process can be automated via our customer API. This is the POST request you can use https://api-docs.circuly.io/docs/customers-api-docs/f301d280d321c-creates-a-new-subscription that you can use for creating a subscription.
Note: When you click on "Generate", circuly assigns a random unique ID to the product. If your products already have pre-defined serial numbers, you can manually enter them. This ensures accurate product-level tracking—like revenue, rental cycles, repairs, and usage—since all tracking in circuly is tied to the serial number.
Good to know
In order to create a subscription in the regular way you have to select an order (or customer if you are using the customer tab to create the subscription) and go to the Order Overview to create a subscription. You can skip that by bulk updating Orders into Subscriptions.
Detailed steps: How to bulk update orders into subscriptions.
With circuly you can create subscriptions in bulk and skip manually assigning serial number to a product in case you have thousands of orders coming in on a daily basis.
Detailed steps: How to create subscriptions in bulk.
You can use the circuly API to create subscriptions. Follow the link to the circuly Customer API documentation.
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.
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:
To enable the option to create subscriptions with a past start date:
Once enabled, the date picker in the subscription creation flow will allow you to select both past and future dates.
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.
There are two main types of cancellations your customers can make:
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.
If a customer’s subscription is still within the early cancellation period, they can cancel as follows:
Customer Journey: Regular Cancellation (Outside Early Cancellation Period)
Processing Rules:
Note: In both cases, subscriptions will not renew again, but the actual cancellation depends on timing.
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.
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.
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.
Here’s how your customers can change their preferred language:
Implication: Once changed, all future transactional emails will be sent in the selected language. The circuly system automatically saves this preference.
For more details on configuring language options or troubleshooting issues, refer to the language settings article.
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:
Learn more about delaying initial payments in this article.
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.
The Draft Order feature enables you to manually create a complete order in the circuly Hub. You can:
Once the draft is created, you have two powerful options for how to send it to the customer:
This dual delivery method gives you flexibility while retaining the smooth, familiar buying experience of your existing shop system.
Creating a draft order
Sending the order to the customer
Optional: You can also add a note for the customer under the Remarks field. Whatever you add here will be added to the email sent to the customer. You can use this field to inform your customer about any additional information.
Finally click on the Create button to finalise the draft order.
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.
Customer actions and journey
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.
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.
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:
If you choose to delay the charge during checkout, here’s what happens:
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:
📢 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.
Enable the setting
Note: The change applies to all orders only after you have activated the associated setting.
You need to charge the initial payment.
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.
Customer information in Circuly can be updated in three ways:
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.
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.
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.
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.
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:
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.
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.
There are multiple ways to create a subscription for an order in circuly. One of them is to Bulk upload subscriptions. With this feature you can skip the step of manually going through every order and starting a subscription.
To bulk upload subscriptions you simply create a a CSV file with all the information needed by circuly to start the subscription and then you simply use the upload function to import that information to circuly. Here's an example of how the CSV upload should look.
To bulk upload subscriptions:
Once the file has been imported, a feedback window will be displayed that tells you how many orders have been imported. In case there is an error, it will be displayed in the feedback window. To know the reason for the error, you can download the error report and check the reason for the error message. All the orders that are now imported have a subscription created automatically.
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.
The email address you define in your circuly Hub will receive alerts for the following types of events:
This setting ensures that your customer service team is always in the loop and can respond quickly to customer needs or potential problems.
Settings > Company Settings > Base Setup
✅ Tip: Use a shared customer support email (e.g., support@yourcompany.com) so multiple team members can monitor incoming alerts.
Below are examples of the kinds of notifications your team might receive:
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.
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.
You can configure your outgoing email setup in two ways:
Each approach ensures that all automated customer communication (order confirmations, subscription updates, etc.) is delivered reliably under your brand identity.
Settings > Setup and Design > Email Server Settings
This method gives you full control over email authentication and deliverability using your company’s own email infrastructure.
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.
Settings > Emails > General
service@yourcompany.com
)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.
Circuly will generate TXT and MX DNS records that you must add to your domain provider’s DNS settings.
Explanation of DNS Records:
⚠️ Verifying your MX records is highly recommended to prevent email delivery failures and improve authentication reliability.
Circuly’s technical team will:
These credentials ensure that emails are securely sent via Mailgun with the correct authentication.
You will receive DNS entries (TXT & MX) from Circuly. Here’s how to add them:
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.
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.
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.
The EU has set a threshold amount for businesses situated within the EU selling to customers in another EU country:
As mentioned above, the VAT is calculated and applied on the basis of three things:
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.
You do not need to configure tax rates if:
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:
Before getting started with the tax rate set up you need to do the following:
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.
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.
Products > Taxes
A new tax rule row will appear for this collection under both the base and delivery countries.
Now configure tax percentages for each collection and delivery country:
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?
To apply the correct VAT logic, map products to the appropriate collection:
Products > Products
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.
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.
Note: Credit cannot be transferred to a bank account and is strictly applied to future subscription payments.
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.
Your customers can change their name, email, and phone number by following these steps:
These changes are sent to the Circuly system and updated accordingly.
To update the shipping or billing address for a specific order:
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.
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.
Once the change is submitted:
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.
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.
The set up process based on the use case for exchanging a product.
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.
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.
Make sure you’ve configured the swap settings and added the swapping reasons.
Continue reading this article to learn more about swapping broken products.
If your rental subscription model allows customers to purchase their subscribed products either during or at the end of the subscription period, circuly makes the buyout process seamless through the circuly Hub and the Customer Self-Service Portal.
The Subscription Product Buyout feature in the circuly Hub allows your customers to purchase their subscribed product before or at the end of their subscription period. This feature simplifies the operational steps for your team and offers a smooth, self-service experience for customers.
You can choose to:
Key operational processes are handled automatically:
Additional settings allow you to:
This flexibility lets you adapt the buyout process to your business model, pricing structure, and customer experience preferences.
Summary of steps:
If you do wish to offer custom product prices when a customer request to buy the product, you can check out this article on initiating the buyout process manually from the circuly Operations Backend.
To learn more about the buyout process initiated by the customer from the Customer Self-Service Portal, continue reading this article.
Before enabling the buyout feature, ensure the retail prices of all relevant products are correct.
To make the buyout option available in the Customer Self-Service Portal you need the enable it in your settings first.
There are additional settings options available that enable you to customise certain aspects of the buyout process from the Self-Service Portal.
See the image below to see how the terms and conditions appear to your customer.
Your customer then sees a second page where they have to check the box for the terms and conditions set by you.
Once enabled, customers will see a "Buy Product" option in the dropdown for each active subscription.Step 5: Confirming Buyout
Important: The buyout price may vary based on your settings. Read information under point 2 and 3.
IMPORTANT: If you've enabled the Two step buyout process setting then the button will say CONTINUE. Read information under point 2 and 3.
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 that 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.
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.
circuly enables you to:
The result: A smoother customer experience and fewer support tickets related to surprise charges.
Step 1: Navigate to Email Settings
Step 2: Enable Reminder Email Option
Step 3: Define Timing for the Reminder Email
Step 4: Understand When the Email Triggers
Step 1: Navigate to Subscription Settings
Step 2: Enable Auto-Renew
Step 3: Manually Enable Auto-Renew for Specific Subscriptions (if needed)
📝 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:
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.
If you have access to the Admins section in the circuly Hub, you can add users to your company and customise their permissions.
With advanced user management in circuly, you can:
This gives you full flexibility to tailor permissions to each person’s role — without giving more access than needed.
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.
Login options:
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 contact our Customer Success team via a Jira ticket to resend the invitation.
To avoid login issues, ensure users complete their sign-up promptly.
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.
In the circuly Hub, the customer balance can be manually customised for any subscriber.
20
)-10
)The full balance (if available) will be automatically deducted from the customer's next payment.
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.
With Advanced User Management, you can define access per individual tab giving you full control over what each user can view or manage.
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.
✅ The user’s access is updated immediately.
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.
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.
Tip: You can user the filters options to filter the Invoice list and only display payment that have the "failed" payment status".
The circuly system attempts to charge the invoice.
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.
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.
By structuring products into collections, businesses can automate tax and shipping calculations, making pricing management more efficient and reducing manual effort.
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.
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.
The selected products are now mapped to your chosen product collection.
If you want to define the tax rules and shipping costs for each collection, follow these guides:
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.
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.
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.
After you have charged the initial payment, you can proceed to create a subscription for the order.
The circuly Customer Self-Service (CSS) Portal is a dedicated place for your customers to manage their subscriptions. It provides your customers with the necessary flexibility they need in managing their subscriptions and the transparency they expect from you. In the CSS, your customers can see all their subscriptions (active, ended, cancelled), make cancellation requests, make swap requests, report problems etc.
Why is a dedicated space aka customer self-service portal important?
If you decide to use circuly's Customer Self Service Portal solution you can customise it with your logo and brand colours (just like the checkout) to fit your branding and you can also customise various options and features available to your customer in the customer portal. This article summaries all the relevant information related to the self-service portal. Follow the links to the deciated articles to learn more about it.
Did you miss the customer login webinar? No worries. You can watch it here to get in-depth information about it.
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.
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.
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.
Checkout options
Options for cart limitation
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.
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.
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.
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.
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:
Chargebacks can be identified in both the Payments and Subscriptions tabs within the circuly Hub. Here's how to view chargebacks in each section:
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.
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.
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.
Some of the reasons to consider adding cancellation reasons to your cancellation process are:
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.
The process of terminating a subscription within the standard terms and conditions set forth by the service provider.
Extraordinary cancellation refers to the termination of a subscription under exceptional circumstances that deviate from the regular terms and conditions.
The cancellation reasons that you as a circuly user add under normal and extraordinary cancellation.
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.
To add cancellation reasons, follow these steps:
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.
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.
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.
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.
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.
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:
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.
In circuly you can cancel an invoice with the wrong information and generate a new invoice in its space with just a few clicks.
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 1: Correct the wrong information
Step 2: Cancel the old invoice
Step 3: Generate a new invoice
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.
Once you have corrected the wrong information, you can proceed to cancelling the invoice with the wrong information. To do so:
A few changes take affect:
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
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:
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.
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.
Note: Each bundle can only have a maximum of 10 items.
You can view all your created bundles under the Bundles tab, where they can be easily edited by clicking the pencil icon.
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.
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.
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.
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.
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.
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 want to enable this setting, follow these steps:
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.
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.
Follow these steps to efficiently bulk update orders and create subscriptions:
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.
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.
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:
Follow these steps to set up the Date Picker and customise the options for your customers:
See the image reference below to see how the time slots are displayed when the timeslot duration is 2 hours.
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.
The Checkout and Self-Service Portal are available in multiple languages and can be displayed in the following options:
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.
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.
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.
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.
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.
Follow the steps given below:
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.
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.
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.
You can easily select and deflect what you want to see in the Order List view by following these steps.
When you go to Orders in the left navigation bar, the Order List is displayed. The Order List shows the order List Columns that can be customised to display only what you want to see. In the order List are also additional functionality, explained below:
By embracing the power of the circuly Self-Service Portal, you're not just freeing your Customer Success team from operational constraints, but also delivering the transparency your customers crave. This transparency isn't just a feature – it's a catalyst that fuels the transformation of customer experience into something truly extraordinary.
This article offers detailed insights into the self-service portal's features. Written for your customers, you can easily copy and paste this information onto your website, providing them with a clear guide to navigate their self-service options effectively. We only recommend that you make use of your own screenshots so that the information appears to be tailored to your audience.
Note: If you do not provide one or more options mentioned below, compile your own custom article based on the information mentioned in this article and make it available on your own website.
In the Customer self service portal (CSS), you have an overview of all the products subscribed by you. Additionally, you can also access your invoices and personal detail. Given below is a list of all the things you can see in the CSS.
You can see both active and ended subscriptions in the CSS. You can also see the monthly subscription price for all your subscriptions. Under "Your Subscriptions", you can only see products that have or were a subscription. If you have one-time orders, they are displayed under "Your Orders".
You can find all your orders, both subscription and one-time, under "Your Orders."
You can access and download invoices for subscription payments that have already been paid under “Your invoices”.
The CSS enables you to perform actions such as cancelling subscriptions, changing your payment and personal details, downloading invoices and reporting product issues without calling customer support or writing an email. Given below is a list of actions you can perform in the CSS.
Subscriptions have a duration attached to it and there can be a number of circumstances under which you might be required to change the duration of a subscription.
Scenario: When your customer makes a request to extend the subscription duration and there is no change in the subscription price.
Action: Use the Extend subscription function. The “Extend Subscription” function only changes the end date of the subscription and extends it.
Scenario: When your customer changes their mind and wants to revert the change and set it back to its original duration.
Action: First check the already changed end date of the subscription. Then use the “Change subscription duration” function to revert the change.
Scenario: When your customer wants to change their subscription duration and as a result their is a change in the price of the subscription
Action: Use the “Change subscription duration function” to change the subscription and the subscription duration.
The function you use depends on the end result you desire.
If you only want to change the duration and do nothing with the payments attached to it, then we recommend using the "extend subscription duration" function.
If you want to change the duration and also make changes to the subscription price, then we recommend using the "change subscription duration" function.
To change the subscription duration follow the steps given below or the video tutorial given below:'
Steps:
Options
Alternatively you can also click on a subscription in the Subscription List to go to the Subscription overview. If you are in the Subscription overview, you can access the subscription duration setting by clicking on the three dots in the top right corner (see image).
Then follow the same steps mentioned above to edit the subscription duration.
To only extend the subscription duration, follow the steps given below:
Alternatively you can also click on a subscription in the Subscription List to go to the Subscription overview. If you are in the Subscription overview, you can access the subscription duration setting by clicking on the three dots in the top right corner (see image).
Then follow the same steps mentioned above to only extend the subscription duration.
Use case: Customer changed their mind about extending the subscription and wants the subscription to be restored to its original duration. How can you cancel the change already applied?
To cancel the extension of the subscription duration, simply use the Change subscription duration function to restore it to it's original duration.
Follow the steps mentioned above under Change subscription duration.
Your customers can make cancellation requests either from the Customer Self-Service Portal or by getting in touch with your customer support.
When they get in touch with your customer support, you have full control over how you want to cancel the subscription and if you want to cancel it. This process is manual as it requires a circuly user to cancel the subscription manually from the circuly Operations backend.
However when cancellation requests are made from the Self-Service Portal, a few actions can be taken by the circuly system depending on your setting.
One setting that influences what happens when a customer makes a cancellation request is the Auto cancel subscription setting.
The Auto cancel subscription setting is disabled by default and can be made active by turning on the switch.
Here’s an overview of the different cancellation situations and their implication based on the Auto cancel subscription setting:
Scenario 1
Result: The auto renew button is turned off (if it was originally in an active state), the subscriptions gets cancelled and the subscription status is set to pending return to trigger the return workflow.
Scenario 2
Result: The auto renew button is turned off (if it was originally in an active state), the subscriptions gets cancelled and the subscription status is set to pending return to trigger the return workflow.
You might have noticed that the state of the "Auto cancel subscription" setting has no impact if the cancellation request is made within the early cancellation period and the the option selected by the customer to return the product is "immediately". This is because the customer has the right to cancel the subscription if the cancellation has been made within the early cancellation period and therefore the auto cancel subscription setting has no impact on the cancellation request.
Scenario 3
Scenario 4
Scenario 5
Scenario 6
Learn more about the entire cancellation process in this Miro board to understand actions taken by a user and by your customer for cancellations.
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.
In October 2021, a new law was introduced in Germany about the termination of subscription contracts.
Here a recap:
The two click cancellation law is effective as on 1st July 2022.
Button on the website (taken care of by you): As part of the "two-click cancellation" process you must add a button on your website that indicated that it's a cancellation button.
Confirmation page (taken care of by circuly): The button should then lead to another page where the customer can provide information on the type of termination, the reason for termination, clear means of identification, the time at which the termination shall take effect and contact data to confirm the termination easily by electronic means.
Add a cancellation button on your website that is easily visible and accessible at all times and gives clear indication that it is a cancellation button. Your customers can click on this button to proceed to the cancellation steps.
Clicking on the button will take your customer to the customer self-service portal where they can sign in with their email (the email used to place the order on your website) to access and manage their subscriptions and request cancellation.
A visible cancellation button has been added to every product and can be seen under all the active subscriptions by the customer, as shown in the image below.
The cancellation button leads your customer to a confirmation page within the customer self service portal itself (as shown in the image below). The confirmation page provides the customer with the necessary information about the subscription they are cancelling and additional options to conclude their cancellation request.
Important note: Read more about how to set up cancellation reasons at the end of this article.
Important note: Displaying the “Pickup Date” on the confirmation page is optional. It is by default turned off and disabled. To enable it go to your circuly operations backend > Settings > Customer login > CANCEL OPTIONS > Enable the switch for Pickup date as shown in the image below.
If the customer has already sent the cancellation request for a particular product, then the following happens:
Important note: The subscription end date is based on the subscription start date. If the customer has selected a 12 months subscription and started the subscription on 1st April then the displayed subscription end date will be 31st March. When the subscription end date has arrived and the subscription is still active, the subscription is extended by a month (if auto renew is enabled) and the end date changes accordingly as per this date, that is the new end date will then be 30th of April.
As part of the “two-click cancellation” law, your customers get a confirmation email about their cancellation. The email that you customers receive from the Email templates (in circuly) is called Subscription Cancellation Received. Edit the email template to your liking and branding and include cancellation specific variables of your choice.
Important note: If you are using the “Auto cancel subscription” setting option to process the cancellation requests, remember to add return instruction in the Subscription Cancellation Received email because this option (that is using the “auto cancel subscription setting to process cancellation requests) bypasses the Subscription almost over email (which typically contains the return instructions for the product when the subscription is about to end).
The “Auto cancel subscription” setting is used when you want a subscription to be set to pending return automatically and bypass the minimum subscription duration period when a customer makes a cancellation request from the self-service portal.
Setting the subscription status as pending return triggers the return workflow which means that the minimum subscription period is not valid anymore and the subscription cancellation request will take effect as soon as the subscription status is set up pending return.
Example: Your customer made a cancellation request via the Customer Self-Service on 1st of July. If the “Auto cancel subscription” setting is enabled then the subscription is set to pending return immediately and the return workflow is triggered. Now the customer has “x” no. of days to return the product back to you (x is defined in the Return until period setting) after which the reminder emails will be sent and if the customer does not return the product the subscription will be reactivated and the recurring payments will continue to be charged again.
Go to Settings > Customer login > CANCEL OPTIONS > Enable the switch for Auto cancel subscription.
When this setting is enabled and when the customer makes a cancellation request from the self-service portal, the following happens:
When the “Auto cancel subscription” setting is disabled then the following happens:
Cancellation request is valid: If you want to process the request, you don't have to do anything. The circuly system will wait until the minimum subscription period is over and will send the “subscription almost over email” x days before the actual end date of the subscription. (You can define the value for “x”, that is when the subscription almost over email is sent to the customer is your settings. To define a value for this go to Settings > Email > SUBSCRIPTION NOTIFICATIONS > Enable the switch for Subscription is almost over > Add a numeric value in the Days calculation before ending input field.
Cancellation request is not valid: the only reason why a cancellation request is not treated as valid is when the request has been made while the subscription is still under the minimum subscription period. In this case the cancellation request is still valid but only after the minimum subscription period is over. Since auto renewal is turned off automatically and the subscription is not extended by another month, the system will follow the same process, that is it will wait until the minimum subscription period is over and will send the “subscription almost over email” x days before the actual end date of the subscription.
Support email is the email you’ve entered in the circuly operations backend under the Support email address setting.
If you haven't added an email yet you can do so by logging in to your circuly operations backend > Go to Settings > Customer login > COMPANY INFORMATION > And enter an email Id for support and contact matters in the Support email address input field.
The cancellation reasons are displayed to your customer in the customer self-service portal and can be edited.
To add cancellation reasons, follow these steps:
Both “cancel order” and “set as pending return” are ways to process a cancellation request but with different logic and background.
Orders can be “cancelled” and subscription status can be “set as pending return”.
Cancel order should be used when there is no active subscription attached to the order and the product has not been delivered yet. Cancelling an order in the circuly operations backend also cancels the order in the shop system. This is relevant if you work with fulfilment partners who do not have access to the circuly backend as a user but process the orders (that is send it out for delivery to the end customer) based on the order status in the shop system.
Another reason for orders are cancelled and not set as pending return because cancelling an order has monetary implications: when you cancel an order, you can process a refund at the same time. Whereas when you set the subscription status as pending return, only future recurring payments are stopped.
Marking the subscription status as pending return should be done when there is an active subscription for an order or when the product has already been delivered to the customer. Marking the subscription status as pending return means that you should expect the product to come back which is not the case when an order is cancelled because no product has been delivered anyway. But a subscription is created either when the product is being delivered or has been already delivered.
Another reason why subscription status are set as pending return and not cancelled because setting the subscription status as pending return triggers the return process.
Webhooks are automated messages sent from one app to another in case something happens or something is updated/changed. Example: if you want to send all transactions from the circuly operations backend to your bookkeeping system (tool) you can do that via Webhooks. In your circuly operations backend, you can now access Webhooks. You will find them in the left main menu under Admins.
In order for circuly to make the requested information available to you we need a URL where the information can be sent (pushed) to. The URL can be generated by tools like Zapier or it can be one of your API endpoints. Make sure that the URL where you want the information to be sent to, can be caught by circuly. To ensure that, make sure that URL allows a POST request since circuly PUSHES the information to your specified URL. Once you create an event for the information you want, circuly will push the information to the URL specified by you and will also push any changes made to the event.
To create a web hook:
At present Events can be created for customer, order, order item, subscription and transaction.
How Webhook works with Zapier?
In Zapier you can create a new Zap and say that the source is a webhook. On doing that Zapier will generate a URL that you can paste in the URL field of the Create Webhook window in your circuly operations backend.
Figure out what information is fired
You can use websites like Webhook.site to check what information is being fired.