Help · Contracts · Contracts & Subscriptions

Contracts & Subscriptions: Sell, Bill, Renew

Here’s how to sell subscriptions and contracts in the XONIC Shop: Create contract items, generate follow-up invoices, process cancellations, and, if desired, collect payments via SEPA direct debit.

6 Payment intervals ranging from monthly to annual
2 Pricing bases: per billing period or for the contract year
12 Months term starting from the purchase date, followed by renewal
Automatic The contract takes effect upon order placement

At a Glance

  • Contract Item: An item labeled “Contract Item/Subscription” with an interval option becomes a contract upon purchase as soon as “Contract Management” is enabled under Settings → Contract Management.
  • Term: A contract created at checkout runs for one year. If the store continues to bill beyond the end of the term, the term is extended by another year until you enter a cancellation date.
  • Subsequent Invoices: “Generate Due Orders” creates invoices for subsequent billing periods; “Send Notifications” emails them to customers.
  • Pricing Basis: The catalog price applies either per billing period or for the entire contract year. For the contract year, the shopping cart calculates only the first billing period. from 4.9.134
  • Cancellation: Customers request cancellation through their customer account. You enter “Effective as of” in the contract; after that, the store terminates the contract automatically.
  • Direct Debit: Invoices from contracts can be collected via SEPA direct debit through Stripe. from 4.9.17

In this guide


How Contracts Work

Contract management turns a purchase into an ongoing contract. After that, the store automatically bills for each subsequent billing period until the contract is canceled.

  1. Contract Items: You mark an item as “Contract Item/Subscription” and select a feature as the interval option, such as “Payment Interval” with the values monthly, semi-annually, and annually.
  2. Purchase: The customer selects an interval and places an order. When the order is placed, the store creates the contract. The order serves as the invoice for the first billing period.
  3. Contract: It includes the term, payment interval, the amount per billing period, and the date of the next order.
  4. Subsequent Invoices: When a billing period is due, the contract management system generates the next order with an invoice and sends it to the customer with the click of a button.
  5. Renewal: When a billing period reaches its end date, the next term begins automatically.
  6. Cancellation: As of the “Effective as of” date, the store will only bill for billing periods that begin before that date and will mark the contract as canceled thereafter.

Term

The period for which the contract is concluded. Contracts from the checkout are valid for one year from the purchase date and automatically renew for one year at a time.

Billing Interval

How often billing occurs: monthly, every 2, 3, or 4 months, semi-annually, or annually. This is based on the option the customer selected. In the contract, this is referred to as the “billing period.”

Amount per Billing Cycle

The amount listed on each invoice for the contract. Whether this amount is the list price or the annual price is determined by the pricing basis.

Two intervals in the contract: Under “Term & Billing” in the contract, there are two fields labeled “Interval.” The contract interval determines the length of the term (contracts from checkout: annually), while the billing period determines how often an invoice is generated.

Initial Setup in Six Steps

Follow these steps to get your store ready for its first contract.

  1. Enable: Under Settings → Contracts, set “Contracts On/Off” to “ true ” and, under “Contract/Subscription Terminology,” choose whether your customers will see “contracts” or “subscriptions.”
  2. Set Order Status: On the same page, select “Default Order Status (Contract Management)” and also select this status under “Order Statuses for Email Notifications (Contract Management).” Otherwise, “Send Notifications” will not send invoices.
  3. Create contract items: Mark items as “Contract Item/Subscription” and assign the interval option; see Contract Items.
  4. Review email template: Under CMS → Emails & Marketing / Automations, customize the “Order Confirmation (Contract Management)” template to match your brand’s tone. This template is used to send follow-up invoices.
  5. Test Purchase: Order the item using a test account and check the contract under Contracts → Contract Overview: amount, billing period, and next order.
  6. Bill regularly: Bill due contracts using “Generate Due Orders” and send the invoices via “Send Notifications”; see Follow-up Invoices.

Enable Contract Management

All basic settings are located under Settings → Contract Management. Contract Management is disabled by default.

Settings → Contracts: Contract/Subscription Terminology (B2C), Contracts On/Off (true), Contract Items: Pricing Basis: Period, Default Order Status and Order Statuses for Email Notification set to "Open," Order Status After Email Notification set to "Sent," Shipping Cost Calculation left blank, Allow Cancellation Request in Customer Account set to true

The first eight contract management settings: enabled, subscription language, pricing basis, and the order statuses for follow-up invoices and their delivery. Click to enlarge.

The most important toggles

  • “Contract Management On/Off”: Enables contract creation upon purchase, the account item for customers, and the “Contracts” backend menu.
  • “Contract/Subscription Terminology”: b2b refers to “contracts” in the customer account and lists costs plus sales tax; b2c (default) refers to “subscriptions” and lists costs including sales tax.
  • “Allow Cancellation Requests in Customer Account”: Default setting enabled.

The “Contracts” Menu

The “Contracts” menu, which includes the contract overview and payment authorizations, appears in the backend only when the contract management feature is enabled. The “Contracts” tab is added to the customer interface. If the menu is not visible, first check “Contract Management On/Off” and then review the permissions for your user group under Settings → Administrators → User Groups.

Contract Status

By default, the store creates the contract statuses “Standard,” “Cost,” and “Cancelled.” New contracts are assigned the “Standard” status.

You can manage custom statuses under Tools → General Statuses for the “Contracts” type. There, mark a status as “Active Status” or “Termination Status.” Follow-up invoices are generated only for contracts with an active status.


Creating Contract Items

A contract item is a regular item with two additional features: the “Contract Item/Subscription” toggle and an interval option.

  1. Set the toggle: In the Product Editor, on the General tab, set “Contract Item/Subscription” to YES and save. The Contracts tab will then appear.
  2. Create a characteristic: In the Characteristics tab, create a characteristic for the interval, for example, “Payment Interval” with the values monthly, semi-annually, and annually. It must be a selection: The option types “Text,” “Textarea,” “Show only,” and “Hide” are not permitted as interval options. Enter the price per value as a surcharge as usual.
  3. Select Interval Option: On the Contracts tab, click “Select Interval Option” and choose the attribute. The button will then display “Interval Option: …” followed by the name of the attribute.
  4. Interval per Value: Back in the “Attributes” tab, each value of the selected attribute now has an interval selection. Assign an interval to each value, ranging from monthly to annually. A value marked as “one-time” does not generate a contract.
  5. Contract Description: In the Contracts tab, maintain the text for the invoice in each language (see below).
Produkteditor des Artikels Kaffee-Abo Hausmischung 1 kg, Reiter Vertragswesen: Knopf „Intervall-Option: Zahlungsintervall“, Schalter „aktuellen Preis nutzen im Vertrag“ auf nein, Sprachreiter DE, blauer Hilfekasten mit den Platzhaltern und die Vertragsbeschreibung „Kaffee-Abo, Zahlung {contracts_period_interval}“ mit der Zeile „Zeitraum: {contracts_calculation_period}“

In the Contracts tab, the interval option, price selector, and contract description for the invoice are maintained. Click to enlarge.

Product Editor, Features tab: "Payment Interval" feature with the values "monthly," "semiannually," and "annually," each with a net surcharge listed to the right of each row in the interval selection; below that, the header for the "Grind Setting" feature with "one-time cost" set to "Yes"

On the right side of each row in the Interval Options section, select the interval; the setup fee is listed as a separate attribute under “One-time Costs.” Click to enlarge.

Contract Description

This text appears next to the item on every invoice generated by the contract management system. The store automatically fills in the placeholders when generating the invoice:

  • {contracts_term} Current contract term, from – to
  • {contracts_calculation_period} Billed period, from – to
  • {contracts_period_interval} Payment interval, such as “monthly”
  • {contracts_interval} Contract term interval; for contracts created at checkout, “annually”
  • {contracts_next_order_date} Due date for this billing

The “Period:” line

The contract management system reads the billing period from a separate line:

Zeitraum: {contracts_calculation_period}

Leave the word “Period” unchanged. A line such as “Billing period: …” will not be recognized, which means, for example, that an existing invoice cannot be linked to the contract.

“Use current price in contract”

If set to YES, the toggle in the Contract Management tab applies “Use current price” to new contracts created during checkout. The contract will then adopt subsequent price changes for the customer’s product group. If set to NO, it retains the price from the order.

One-time costs

Create a setup fee as a separate attribute and set it to “one-time costs.” It is charged only with the first order, never with a subsequent invoice. The “Features” tab displays this toggle only if the “One-time Option Costs” module is enabled under Settings → Checkout → Summary.


Price Basis: Price per Billing Period or for the Contract Year

This setting determines what the catalog price of a contract item represents: a billing period or the entire contract year. from 4.9.134

You can find this setting under Settings → Contracts → Contract Items: Price Basis. The default is “ period.” The update will not change anything in any store until you make the switch.

Position period (Default) year
Meaning of the catalog price Amount per billing period Price for the contract year
Product page List price List price, i.e., the annual price
Shopping cart, checkout, quote request, order editor Full line item price First billing period: Line price divided by the number of invoices per year
Unit of the line item Unit of the item The time period, such as “month,” “quarter,” or “half-year”; for annual payment, the unit of the item
Contract Line price as the amount per billing cycle Split amount per billing cycle

The calculation rule

Calculated price = Line price ÷ Invoices per year. For monthly billing, divide by 12; for every 2 months, divide by 6; for every 3 months, divide by 4; for every 4 months, divide by 3; for semiannual billing, divide by 2; and for annual billing, divide by 1.

Example with annual prices using the interval option, net:

Selected value Annual price in the catalog Calculated with the order
monthly €2,388 €199 (÷ 12)
Semi-annual €2,148 €1,074 (÷ 2)
annually €1,788 €1,788 (÷ 1)

The contract covers 199 € per billing cycle and bills for the following eleven months itself.

When the cost is split

Only if all four conditions are met. Otherwise, the full price applies as before.

  1. “Contract Management On/Off” can be found at true.
  2. “Contract Item: Price Basis” is located at year.
  3. The item is “Contract Subject/Subscription” and has an interval option.
  4. The selected value specifies an interval—not “one-time.”

What is split

The base price and all surcharges for the line item, because the contract bills the entire line item for each billing period. Exceptions are attributes with “one-time costs,” such as a setup fee: These are billed once and are never split.

Note, Multi-Store, Rounding

  • If the price basis is set to year, the “Contract Management” tab in the Product Editor displays a note.
  • The pricing basis applies equally to all domains. As long as it is set to “ year,” the “Contract Management On/Off” setting also applies equally to all domains.
  • Division occurs before rounding. If the annual price is not evenly divisible—for example, 1,000 € ÷ 12—the sum of the installments will differ from the annual price by a few cents.
This does not apply to items with a price per billing period. This setting applies to the entire store. An item whose catalog price already applies to a billing period must not have an interval option set to “ year ”; otherwise, it will be too cheap: A monthly price of 30 € would be divided by 12. Check all items with interval options before making the change.

What Happens During Purchase

When an order is placed, the store automatically creates a contract for each contract-based item without any action required in the backend.

  • Interval-only: A contract is created if the contract management feature is enabled and the customer has selected a value with an interval.
  • Term: one year from the date of purchase. The order covers the first billing period; the next order is due one period later.
  • Amount: The contract uses the price from the order line as the amount per billing cycle.
  • Lock in price: For the “ year ” pricing basis and for interval values with a surcharge, the store creates the contract without selecting “Use current daily price.” This ensures the agreed-upon amount remains fixed. from 4.9.134
  • Status and Link: The contract is assigned the default contract status. The contract is listed under “Contracts” in the order view, and the order is listed in the “Orders” tab within the contract.
  • Payment Method: The contract is billed via invoice. If the customer has an active direct debit authorization, subsequent invoices are processed as SEPA direct debits; see Direct Debit.
Order Editor: If you add a contract item to an order in the backend, the editor works just like the shopping cart and populates the placeholders in the contract description with actual data. The order editor does not create a contract: You do this via “Create Contract” and then link the invoice to the contract. from 4.9.134

Manage Contracts

You can find all contracts under Contracts → Contract Overview. The “Contracts” tab in a customer’s profile displays that customer’s contracts.

Contract Overview with the tabs "Contracts," "Generate Due Orders," "Cron: generate_orders and Forecast, the filters Contract Status, Contract Subject, and Date, the search function, the Create Contract button, and three coffee subscription contracts from Erika Musterfrau and Musterladen GmbH, one of which has been canceled

The contract overview shows the status, customer, product, net and gross price, contract date, next order, term, and billing period for each contract. Click to enlarge.

List and Filters

The list displays the contract number, status, customer, product, price, contract date, next order, interval, and billing period for each contract.

You can filter by contract status, contract subject, and the date of the next order. The “Search Contracts” function finds contract numbers, customer numbers, names, company names, and products. In long drop-down lists, such as the contract subject, you can type and search. from 4.10

Actions per Contract

  • “Edit” and “Delete”
  • “Change Customer Assignment” to assign the contract to a different customer
  • “Duplicate Contract”
  • “Show Orders for This Contract”
  • “Create Next Order from Contract” immediately bills the next period, even before the due date

Edit a contract

“Edit” opens the contract with the tabs “All,” “Contract Partner,” “Contract Subject,” “Contract Data,” “Template,” “Projects,” “Orders,” and “History.” To create a contract without a purchase, use “Create Contract”; the customer is already selected from the customer screen.

Contract 19801 for Erika Musterfrau, Reiter: Contract details, including the Basic Data section (contract date, next order, payment method: invoice, contract always as a single invoice), Term & Billing using the “Link Existing Invoice” button, and Termination with receipt date October 1, 2026, and effective December 31, 2026

The Contract Data tab displays dates, payment method, term, and billing period, as well as the contract’s termination terms. Click to enlarge.

Partner and Subject Matter

“Contract Partner” includes the customer, billing address, and shipping address. “Contract Subject” includes the product, quantity, tax rate, price, contract details, and the “Use Current Price” checkbox.

Contract Data

“Basic Data” includes the contract date, next order, payment method, and “Always Bill Contract as a Single Invoice.” “Term & Billing” includes the start date and interval of the term and the billing period; the shop calculates the end date automatically. Also included is “Termination”; see Termination.

Template

Under “Custom Template,” you can enter a custom invoice text for this specific contract. It replaces the contract description of the item.

Forward Planning

The “Forecasting” tab totals, by item, the quantities of all contracts whose next order falls within a freely selectable time period—for example, for purchasing. It counts the next due date for each contract.

Link First Invoice

If you created the first invoice outside the contract management system, link it in the “Contract Data” tab using “Link Existing Invoice.” Otherwise, the next run will bill the period a second time. Contracts with a price but without an invoice are collected in the “Contracts Without Invoice” tab. from 4.9.116


Generate and Send Subsequent Invoices

For each billing period due, the contract management system creates a new order with an invoice. The invoice is sent in a second step.

  1. In the contract overview, select “Generate Due Orders.” Any contract with an “Active” status whose next order is due today or earlier is considered due.
  2. Check the “Preview of Generated Orders” page. If an invoice that has not yet been linked already covers the period, the preview displays a red note. from 4.9.116
  3. Confirm by clicking “Generate Orders Now.” The new orders will be assigned the “Standard Order Status (Contract Management).”
  4. Select “Send Notifications” so that customers receive their invoices via email.
Preview of the generated orders, including two pre-configured orders for Erika Musterfrau (monthly, €24.90) and Musterladen GmbH (annual, €259.00), each with addresses, contract details including the term and amounts, followed by a summary and the “Generate Orders Now” button

Before generating the orders, the preview shows each prepared order with addresses, contract descriptions, and totals. Click to enlarge.

What the run does

  • Consolidated Invoice: A customer’s due contracts with the same billing and shipping addresses and the same payment method are combined into a single invoice. Selecting “Always Bill Contracts as Individual Invoices” ensures each contract receives its own invoice.
  • Invoice number: Using its own invoice number range, the run assigns a number immediately, provided the amount is greater than 0.
  • Rollover: Afterward, the contract displays the next billing period and the next due date. The next term begins immediately after the current term ends.
  • Individual Contracts: “Create next order from contract” in the row or “Create orders from selected contracts” for a selection.

Notifications

  • “Send Notifications” sends a message to all contract orders with a status from “Order Statuses for Email Notification (Contract Management)” and then sets them to “Order Status After Email Notification (Contract Management)”; the default is “Sent.”
  • The email uses the “Order Confirmation (Contract Management)” template and attaches the invoice as a PDF, along with any attachments you have enabled under Settings → Interfaces → Email Marketing / CRM → Email Options for the order confirmation.
  • A copy is sent to the addresses listed under “Order Copy via Email To” in the email options and to the addresses listed under “Email Address (Invoice)” in the customer profile.
  • If you use your own invoice number range, only orders with an invoice number are sent out. If a payment term is missing or is shorter than the value specified under Settings → Checkout → General → Payment Term in Days, the system will reset it.
Fixed Schedule: Process the contracts due on a regular basis—for example, weekly—and then send out the notifications. Contact XONIC Support to set up an automated process.

Cancellation and Contract Expiration

Enter a termination in the contract. The contract management system handles the rest: It calculates charges through the end of the term and then marks the contract as terminated.

  1. Entering a Termination: In the contract, on the “Contract Data” tab under “Termination,” enter the “Received” date and the “Effective From” date, then save. A saved “Received” date cannot be changed.
  2. Remaining Periods: Any billing period that begins before the “Effective From” date will still be billed in full.
  3. End: If the next period begins on or after the “Effective From” date, the store sets the contract to “Terminated” status and no longer generates orders. If the “Effective From” date is today or earlier at the time of saving, this happens immediately.
  4. Verification: For each automatic termination, the store creates a task titled “Automatic Contract Termination” in the ticket system, containing all contract details.

Request from the Customer Account

If a customer requests a cancellation via their customer account, the store enters the request itself. If the ticket system is enabled, a ticket titled “Termination Request for Subscription/Contract #…” is created; otherwise, an email is sent to the address specified under “Info Mail Tickets” in Settings → General → Tickets & Tasks or to the store’s email address. You must enter the “Effective From” date yourself.

When the store processes cancellations

The shop processes due cancellations when saving the contract, when opening the contract overview, and when “Generate Due Orders.” You can manually trigger the check via “Execute Cancellations Now” in the action menu of the contract overview.

Have it reviewed by a lawyer: For contracts with consumers, there are legal requirements regarding term, renewal, and cancellation. Have your contract terms and the cancellation process reviewed by a lawyer.

Payment Reminders and Collection Notices

If a contract invoice remains unpaid, the contract management system can send reminders and demand notices in several stages. These stages will only be triggered once they have been set up for your store.

  • “Dunning: Process”: legacy (default) sends dunning notices from the contract management system; marketing runs the dunning stages as marketing automation events; off does not send any dunning notices at all. from 4.9.17
  • Grace Period: “Grace Period Until Payment Reminder (Days)”, “Grace Period Until 1st Reminder (Days)”, and “Grace Period Until 2nd Reminder (Days)”; default values are 20, 17, and 17 days, respectively. The first grace period begins on the invoice date and from the date of the last order change.
  • “Payment Terms for Reminder Stages (Days)”: a comma-separated list with one value per stage, set to 7,7,7,7 by default.
Setup: The reminder stages require their own order statuses, email templates, and a regular schedule. XONIC Support will set this up with you. The process marketing requires the Marketing Automation module; see Marketing & Automation. XONIC Premium: Marketing / Automatisierungen & Künstliche Intelligenz

Collection via SEPA Direct Debit

Invoices from contracts can be collected via a SEPA direct debit mandate that your customer issues through Stripe. from 4.9.17

Prerequisites

  • The Stripe payment module is installed and configured; see Payment Methods.
  • SEPA Direct Debit must be enabled in your Stripe account. Stripe requires an additional review for this; be sure to request it early.
  • The creditor ID has been decided: your own or Stripe’s. Once the first actual payment has been processed, it can no longer be changed.

Enabling

  1. Under Settings → Contracts, set “Order Status Upon Successful Direct Debit”; the default is “Payment Received.” If you leave it set to “No Change,” an invoice paid by direct debit will continue to be subject to reminders.
  2. Select “Order Status During Direct Debit” and “Order Status Upon Failed Direct Debit,” and check “Lead Time Until Direct Debit (Days)” and “Maximum Amount Per Direct Debit.”
  3. Under “Authorization Revocation: Private Customers” and “Authorization Revocation: Business Customers,” specify whether customers can terminate their authorization themselves in their account (self_service) or only request it (request). The business customer rule applies to the groups listed under “Mandate Revocation: Business Customer Groups.”
  4. Finally, set “Direct Debit via Payment Authorizations On/Off” to true.

Here’s how the customer grants the mandate

  • In the customer account under “Payment Methods” by selecting “Add Bank Account for Direct Debit” or in the contract card by selecting “Switch to SEPA Direct Debit.” The customer enters their bank details on a Stripe page.
  • Alternatively, you can generate a link in the customer profile via “Action” → “Generate Direct Debit Link” and send it yourself. It is valid for 14 days; this can be adjusted under “Validity of Setup Link (Hours).”
  • The store then automatically links the customer’s active contracts with prices to the mandate. Exception: Contracts marked “Do not collect via direct debit,” such as when a third party pays.

Collection

  • The contract overview displays the tabs “Direct Debit: Preview” and “Direct Debit: Collect Now.” The preview shows, for each invoice, whether the amount would be collected and, if not, why.
  • For automatic collection, under Contracts → Payment Authorizations in the “Cron Addresses” box, there are two addresses to copy: the collection (daily) and the authorization reconciliation (hourly).
  • Under Contracts → Payment Mandates, you can reconcile mandates, pause them, resume them, or revoke them.

Which invoices are collected

  • Only invoices generated by the contract management system. The shop never processes invoices created in the order editor.
  • Only invoices that were issued as direct debit invoices—that is, those created while a mandate was active. from 4.9.116
  • Only after the lead time specified in “Lead Time Until Collection (Days)”: The invoice serves as the advance notice of the direct debit.
  • Only after “Send Notifications” has delivered the invoice. from 4.9.116
  • No invoices from the period before the direct debit authorization. They remain bank transfer invoices. from 4.9.116
  • If the amount exceeds the “Maximum Amount per Collection,” the store will not collect it at all; the invoice remains a bank transfer invoice.
Note in the invoice email: In the “Order Confirmation (Contract Management)” template, text between {mandate:if_active} and {/mandate:if_active} appears only for invoices that will be collected via direct debit; text between {mandate:if_none} and {/mandate:if_none} appears only for customers without a direct debit authorization. {mandate:debit_date} specifies the earliest collection date, and {mandate:portal_url} links to the direct debit page in the customer account. from 4.9.116

Contracts in the Customer Account

Customers can find their contracts in their customer account under “Subscriptions” or “Contracts”; the page is titled “My Subscriptions” or “My Contracts.”

Customer Account, "My Subscriptions" page: "Active Subscriptions 1" tiles (1 canceled), annual cost and next payment date, toggle switch for "Active Subscriptions" and "Canceled Subscriptions," Search and Sort, below which is the expanded card for the coffee subscription showing the subscription price, monthly payment, next payment date, billing address, and the “Cancel Subscription” link

On “My Subscriptions,” customers can view their active subscriptions and request cancellation. Click to enlarge.

Overview

At the top are the active contracts, the annual cost, and the next invoice or payment date. Below that is a card for each contract showing the amount, payment interval, and term. Customers can switch between active and terminated contracts, search, and sort. from 4.9.17

Request Cancellation

If “Allow cancellation requests in customer account” is enabled, the card for an active contract will display “Cancel subscription” or “Cancel contract.” After confirmation, the request is sent to you; see “Cancellation.” The card will then display “Cancellation already requested” with the date and, once you’ve entered it, “Effective as of.”

If direct debit is set up, contracts without a mandate will display the “Switch to SEPA Direct Debit” button, and the customer account will include the “Payment Methods” section.


Settings at a Glance

All options are located under Settings → Contracts.

Basic Settings

Contract/Subscription Terminology
b2b “Verträge, zzgl. USt.” (Contracts, plus VAT) or “ b2c ” (Subscriptions, incl. VAT, default) in the customer account.
Contract Management On/Off
Enables contract management. Default: false.
Contract Item: Price Basis
period (default) or year; see “Price Basis.” from 4.9.134
Default Order Status (Contract Management)
Status of orders generated from a contract. If no selection is made, the store’s default order status applies.
Order statuses for email notifications (Contract Management)
Orders with these statuses receive an email via “Send Notifications.” If no selection is made, no emails are sent.
Order Status After Email Notification (Contract Management)
Status after the notification has been sent. Default: “Sent.”
Shipping Cost Calculation (Contract Management)
Shipping method for orders from Contract Management. If no option is selected, they are marked as “Free Shipping.”
Allow cancellation requests in the customer account
Default: true.

Reminder System

Grace period until payment reminder, until 1st reminder, and until 2nd reminder (days)
Default values: 20, 17, and 17 days.
Payment terms for dunning stages (days)
One value per stage; default: 7,7,7,7.
Dunning Process: Procedures
legacy (default), marketing or off.

Direct debit

Direct debit via payment mandates: On/Off
SEPA direct debit via stored mandates. Default: false.
Approved Payment Providers
Default: stripe.
Lead time until collection (days)
Time between invoice and collection; default: 3.
Maximum amount per collection
Default: 9,500 in the store’s currency. The store will not collect amounts exceeding this.
Collection attempts per invoice and waiting period between collection attempts (days)
Default: 2 attempts at 5-day intervals. After that, the invoice reverts to the normal process.
Order status upon successful collection, during collection, and upon failed collection
Default: “No change.” Be sure to set the status to “Successful” upon successful direct debit.
Withdrawal of authorization: Private customers, business customers, and business customer groups
For individual customers, the default is “ self_service ”; for business customers, “ request.” If no groups are selected, the individual customer rule applies to all.
Validity of the setup link (hours)
Default: 336, i.e., 14 days.
Collect invoices up to age (days)
The process no longer collects older invoices; default is 120.

The entries “Licenses: …” and “KPI Dashboard: …” are part of XONIC’s license management and are not needed in your store. Leave them unchanged, just like the cron settings for payment mandates.


Pitfalls

Things to watch out for

  1. No invoice emails: “Order statuses for email notification (Contract Management)” does not include the status of new orders.
  2. One-time fee treated as a regular surcharge: With the pricing basis “ year,” this is reported incorrectly. Set the attribute to “one-time costs.”
  3. In-stock items with an interval option: If their price is already calculated per billing period, they will be too cheap when using “ year.”
  4. “Billing Period:” instead of “Period:”— In this case, the contract management system cannot find the paid period.
  5. No interval specified for the value: A value without an interval or marked as “one-time” will not generate a contract.
  6. Contract Management off: In this case, no contracts are created upon purchase, and the “Contracts” menu is missing.
  7. First invoice created manually: Without a link to the contract, the next run will bill the same period again.
  8. Status without “Active” flag: Contracts in a custom status without “As Active Status” do not receive follow-up invoices.
  9. Direct debit paid, but still a reminder: “Order status upon successful collection” is set to “No change.”
  10. Multiple domains: The pricing basis applies equally to all domains.

Checklist: Switch the pricing basis to the contract year

  • Check version —under Tools → xoUpdate; this setting is available starting with XONIC 4.9.134.
  • Check items – all items with an interval option: Does the price apply for the year?
  • Mark one-time costs – Set up fees to “one-time costs.”
  • Check existing contracts – Contracts with “Use current daily price” for items with an interval option will then be calculated using the annual price divided by the number of days.
  • Switch settings – Set “Contract Items: Price Basis” to year.
  • Test purchase for each interval – The shopping cart and order show the first billing period.
  • Check the contract – Verify the amount per billing cycle, the billing period, and the next order, then delete the test data.

Frequently Asked Questions

Does a contract renew automatically?

Yes. When the billing period reaches the end of the term, the next term begins; for contracts created at checkout, this is another year. This only ends with a “Effective as of” termination date specified in the contract.

How do I cancel a contract in the backend?

In the contract, under the “Contract Data” tab, enter the “Receipt” and “Effective From” dates under “Cancellation,” then save. The store will continue to bill for any periods that begin before the cancellation date; after that, it will mark the contract as canceled.

Can I bring forward the next invoice?

Yes, by selecting “Generate Next Order from Contract” in the contract’s row. The store will bill the next period immediately and extend the due date.

Why are there multiple contracts on one invoice?

The process groups together a customer’s contracts that are due, provided they have the same address and payment method. If you want a contract to always receive its own invoice, select “Always invoice contract separately” in its contract details.

Why didn’t my customer receive an invoice email?

The email is only sent when you click “Send Notifications,” and only for orders with a status listed in “Order Statuses for Email Notifications (Contract Management).” If you’re using a custom invoice number range, the order also needs an invoice number.

Why does the product page show the annual price, but the shopping cart shows a lower amount?

When the price basis is set to “ year,” the catalog price for the contract year is displayed. The product page shows this price unchanged, while the shopping cart calculates only the first billing period. The contract management system bills for the subsequent periods.

Can I set the pricing basis for each individual item?

No, the setting applies to the entire store. It does not affect items without an interval option.

How do I charge a setup fee only once?

As a feature labeled “one-time costs.” The toggle appears when the “one-time option costs” module is enabled under Settings → Checkout → Summary. This ensures the fee is charged once and never split.

What happens to existing contracts if I change the pricing basis?

They retain their original amount per billing cycle. Exception: Contracts with “Use Daily Updated Price” on items with an interval option will subsequently be calculated using the annual price divided by their payment interval. Please review these contracts before making the change.

Why didn’t an agreement result from an order?

Most often, the contract feature is disabled, the item has no interval option, or the selected value does not have an interval. Orders created in the order editor never generate a contract.

What should I do with my payment provider after activating the contract?

This is not part of the contract management system. For instructions on how to set up a payment provider such as VR Payment in your store, see the Payment Methods Guide.

How do I disable the automatic newsletter subscription after an order is placed?

Subscriptions in this guide are contracts with recurring billing. The Newsletter guide explains the newsletter subscription that occurs after an order.

Related Guides

We’ll work with you to set up your contract management system

We’ll assist you with contract terms, pricing structures, follow-up invoices, direct debit, and the dunning process.

Contact Support Now