Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion blog/2025-12-31-bonne-annee-2026.md
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ A long-postponed element, now fully integrated into the Proxmox module.

![noVNC](/img/blog/bonne-annee-2026/noVNC.png)

You just need to add a Proxmox role `CustomerPanel` with the `VM.Console` permission.
You just need to add a Proxmox role `PanelCustomer` with the `VM.Console` permission.


### Pterodactyl Module: Intelligent Diagnostics
Expand Down
38 changes: 38 additions & 0 deletions blog/2026-02-28-nouvelle-version-2.15.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
slug: nouvelle-version-2.15
title: New Version 2.15
authors: [martindev]
translated: true
---
# v2.15

We are pleased to announce the release of version **2.15** of ClientXCMS!
![version 2.15](/img/blog/versions/v2.15.png)

<!-- truncate -->

### Additions
- ➕ Security questions for users
- ➕ Account deletion
- ➕ Ability to remove the entire store and redirect to another URL
- ➕ Customization of robots.txt
- ➕ Customer API update
- ➕ Application API update
- ➕ Addition of temporary notes
- ➕ Ability to export invoices for a specific customer
- ➕ Addition of the cancellation management page
- ➕ Addition of various payment methods (Binance, SumUp, Mollie)
- ➕ Added support for Open Graph, Twitter cards, and canonical URLs
- ➕ Added a button to regenerate a PDF
- ➕ Support for a new system for section configurations

### Changes
- 🔄 Improved extensions page with the ability to multi-download extensions

### Fixes
- 🔧 `gateways/**` and `source/gateway/**`: added to authorized URLs without being logged in with the forcing option
- 🔧 Fixed API key creation

### Security
- 🔒 Upgrade to Laravel 12
- 🔒 PHP 8.3 minimum required
64 changes: 64 additions & 0 deletions blog/2026-03-29-nouveautes-mars-2026.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
slug: nouveautes-mars-2026
title: "New Landing Page & Quote Manager"
authors: [martindev]
tags: [news, announcement, ctxhosting, ctxmailer, translations]
translated: true
---

We are pleased to announce several important new features on ClientXCMS, as well as some upcoming changes regarding our related services. On the agenda: a brand-new landing page, the release of the Quote Manager addon, full translation of our resources, and updates to our Cloud and CTXHosting offers.

![New ClientXCMS landing page](/img/blog/new-landing-page-quote_manager/landingpage.png)

<!-- truncate -->

## New ClientXCMS Landing Page

We have completely redesigned the ClientXCMS homepage to make it more modern, clearer, and more representative of our solution's evolution.

This new interface highlights the key features of our CMS more intuitively, allowing you to discover the full scope of our services more easily.

## New Addon: Quote Manager

We are also thrilled to announce the release of a highly anticipated new addon: **Quote Manager**.

This tool allows you to easily create, manage, and send professional quotes directly from your ClientXCMS admin area. Your clients will then be able to view and validate their quotes seamlessly from their client area.

![Quote Manager Admin Interface](/img/next_gen/extensions/addons/quote_manager/admin_index.png)
![Quote Manager Details](/img/next_gen/extensions/addons/quote_manager/admin_show.png)
![Quote Manager Customer Preview](/img/next_gen/extensions/addons/quote_manager/preview_customer.png)

Discover and grab the Quote Manager on our marketplace: [https://clientxcms.com/resources/quote-manager](https://clientxcms.com/resources/quote-manager)

## Fully Translated Resources and Documentation

Accessibility is one of our top priorities. That is why we are proud to announce that **all our resources are now fully translated**, including the official documentation.

![Translated resources](/img/blog/new-landing-page-quote_manager/translated_items.png)

Whether you speak English, French, or another language, you can now navigate and configure your ClientXCMS site in your native language with high-quality translations.

## End of CTXMailer Service and New License Benefits

Starting from the 1st of next month, we will be discontinuing our **ctxmailer** messaging service. We have made this decision to refocus on our core business: the development of ClientXCMS.

However, to compensate for this closure, we have excellent news for Premium and Enterprise license holders: **paid extensions will now be included by default** in your licenses! This means you will benefit from powerful new features at no additional cost.

![New License Benefits](/img/blog/new-landing-page-quote_manager/pricing.png)

## Infrastructure Change for Cloud Offers

We are preparing a major evolution for our Cloud offers. An **infrastructure change is planned for mid-May**.

This migration aims to improve the performance, stability, and security of your hosting. We will communicate more detailed information very soon regarding the steps of this transition.

## CTXHosting Maintenance

In the same spirit of continuous improvement, **CTXHosting** services are currently undergoing maintenance while we upgrade the infrastructure.

**What this means:**
- **Current clients:** Your services remain active, and you can continue to renew them normally without interruption.
- **New clients:** We are temporarily suspending orders for new VPS servers.


We thank you for your trust and loyalty. Stay tuned for upcoming updates, and feel free to share your feedback with us!
41 changes: 41 additions & 0 deletions docs/extensions/addons/helpdesk_autoreply.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
sidebar_position: 25
translated: true
---

# Helpdesk Auto-Reply

This addon significantly improves your customer support efficiency by automating initial interactions and providing quick response tools for your technical team.

## Auto-Replies
Automate message sending when a ticket is created by a customer.
- **Department Targeting**: Define specific replies for departments like "Technical Support", "Sales", etc., or a global reply.
- **Schedule Management**: Enable replies only outside business hours or during weekends using the day and hour selector.
- **Dynamic Variables**: Personalize your messages with the customer's first name, ticket ID, application name, etc.

![Auto-reply configuration](/img/next_gen/extensions/addons/helpdesk_autoreply/show_autoreply.png)

## Canned Responses
Save time on recurring requests with a library of ready-to-use responses.
- **Quick Access**: Available directly in the ticket management view via a dedicated sidebar panel.
- **Auto-Close**: Option to configure certain responses to automatically close the ticket after sending (ideal for closing messages).
- **Copy or Direct Send**: Choose to copy the content into your reply field for editing, or send it directly with a single click.

![Ticket view](/img/next_gen/extensions/addons/helpdesk_autoreply/show_on_ticket.png)

![Canned responses management](/img/next_gen/extensions/addons/helpdesk_autoreply/show_predefined_response.png)

## Internationalization
Native translation support for names and message bodies (FR/EN by default). You can add your own translations via the administration interface.

![Internationalization](/img/next_gen/extensions/addons/helpdesk_autoreply/translations.png)

## Available variables

You can use the following variables in your templates and responses:
- `{firstname}` / `{lastname}` / `{name}`: Customer information
- `{ticket_id}` / `{ticket_uuid}`: Ticket identifiers
- `{department}`: Name of the relevant department
- `{priority}`: Ticket priority
- `{app_name}` / `{app_url}`: Your platform's information
- `{date}`: Current date and time
56 changes: 56 additions & 0 deletions docs/extensions/addons/quote_manager.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
---
translated: true
---

# Quote Manager

The **Quote Manager** addon allows your staff to create and manage professional quotes directly from CLIENTXCMS. Your customers will be able to view offers, accept or reject them directly from their client area.

## Configuration and Settings
To configure the extension, go to `Admin Panel` > `Settings` > `Quote Manager` > `Settings`.

![img](/img/next_gen/extensions/addons/quote_manager/settings.png)

A settings section is available to allow you to configure the global options for your quotes.

## Step-by-step Usage

### 1. Creating a Quote
The staff can initialize a quote very simply by selecting the client and filling in the basic information of the proposal.

![img](/img/next_gen/extensions/addons/quote_manager/create_quote.png)

### 2. Adding lines and discounts (Draft)
Like a traditional invoice, you can then edit the draft quote to add different lines (products or services) with their prices and quantities, as well as discounts.

![img](/img/next_gen/extensions/addons/quote_manager/draft_quote.png)

### 3. Management and Detailed View
You can view the list of your quotes at any time and track their status (draft, sent, accepted, rejected). The detail of a quote allows the staff to have all the information at hand.

**List of quotes:**
![img](/img/next_gen/extensions/addons/quote_manager/admin_index.png)

**Detailed view:**
![img](/img/next_gen/extensions/addons/quote_manager/admin_show.png)

### 4. Validation and Sending
When the quote is ready, you can validate it to send it to the client.
During this validation, the administrator can define a **signature link** (e.g., a link to Yousign or DocuSign) to facilitate the formalization of the agreement. The quote will then be sent by email and become accessible on the client area.

![img](/img/next_gen/extensions/addons/quote_manager/validate_send.png)

### 5. Client Area (Preview)
The client will find the quote in their client area, where all pricing information and lines will be detailed. It is from this interface (or via the signature link) that they will be able to accept or reject the proposed quote.

![img](/img/next_gen/extensions/addons/quote_manager/preview_customer.png)

### 6. Conversion to Invoice
Once the quote is accepted by the client, you can convert it into an invoice in one click. The quote will then be archived and the invoice will be created with the same information.

![img](/img/next_gen/extensions/addons/quote_manager/convert_to_invoice.png)

### KPI
You can view the key performance indicators of the extension in the `Admin Panel` > `Quote Manager` > `Statistics` menu.

![img](/img/next_gen/extensions/addons/quote_manager/kpi.png)
92 changes: 91 additions & 1 deletion docs/extensions/addons/socialauthplus.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ translated: true

# SocialAuth+

The SocialAuth+ extension makes it easy to connect with OAuth2 for the following platforms: [Google](#google), [Discord](#discord), [GitHub](#github) and [Facebook](#facebook).
The SocialAuth+ extension makes it easy to connect with OAuth2 for the following platforms: [Google](#google), [Discord](#discord), [GitHub](#github), [Facebook](#facebook), [Microsoft](#microsoft), [Minecraft](#minecraft), [Twitch](#twitch) and [ClientXCMS](#clientxcms).
> Make it easier for your potential customers to access your platform with SocialAuth+. This solution uses OAuth+ technology for fast and secure login. Your users can register and log in with one click via their accounts, without worrying about losing their password. Simplify their user experience and increase your conversion rate with this advanced authentication extension.


Expand Down Expand Up @@ -43,6 +43,10 @@ It is generally formatted like this: ``https://your.domain.com/auth/<platform_na
- discord
- facebook
- github
- microsoft
- minecraft
- twitch
- clientxcms

## Obtaining OAuth2 Authentication Keys

Expand Down Expand Up @@ -200,6 +204,92 @@ You will then have the "Client ID" and "Client Secret" keys for your application

![Image: Facebook Config - Publish the application](/img/next_gen/extensions/addons/socialauth/SA+_Facebook9.png)

### Microsoft

**1.** Go to the [Microsoft Entra admin center](https://entra.microsoft.com/) and sign in with your Microsoft account.

**2.** In the left navigation menu, go to **Identity** > **Applications** > **App registrations**.

**3.** Click on **"+ New registration"** at the top.

**4.** Fill in the required information:
- **Name:** Enter a display name for your application (e.g., the name of your site).
- **Supported account types:** Select **"Accounts in any organizational directory and personal Microsoft accounts"** to allow all Microsoft users to authenticate.
- **Redirect URI:** Select **"Web"** as the platform, then enter the [redirect URI given by ClientXCMS in the configuration page](#redirect-uri).

**5.** Click on the **"Register"** button to create the application.

**6.** You will be redirected to the **Overview** page of your application. Copy the **"Application (client) ID"** — this is your **Client ID**.

**7.** In the left menu, click on **"Certificates & secrets"**.

**8.** Under the **"Client secrets"** tab, click on **"+ New client secret"**.

**9.** Enter a description (e.g., "ClientXCMS OAuth") and select an expiration duration, then click **"Add"**.

**10.** **Important:** The secret **Value** is displayed only once. Copy it immediately — this is your **Client Secret**. If you lose it, you will need to generate a new one.

**11.** Insert both the **Client ID** and **Client Secret** in the [platform OAuth configuration](#oauth2-configuration-example) on ClientXCMS.


### Minecraft

Minecraft authentication uses Microsoft OAuth2 (since Minecraft accounts have migrated to Microsoft accounts). The setup is the same as for [Microsoft](#microsoft).

**1.** Follow **steps 1 to 10** of the [Microsoft](#microsoft) section above to register an application in the [Microsoft Entra admin center](https://entra.microsoft.com/) and obtain your **Client ID** and **Client Secret**.

**2.** During registration, make sure to use the **Minecraft-specific** [redirect URI given by ClientXCMS in the configuration page](#redirect-uri) (the Minecraft redirect URI is different from the Microsoft one).

**3.** In your application's **API Permissions** section, click **"+ Add a permission"**, then select **"Xbox Live"** and add the **`XboxLive.signin`** scope. This permission is required for Minecraft authentication through Xbox Live services.

**4.** Click **"Grant admin consent"** to approve the permission.

**5.** Insert the **Client ID** and **Client Secret** in the [platform OAuth configuration](#oauth2-configuration-example) on ClientXCMS.

### Twitch

**1.** Make sure **Two-Factor Authentication (2FA)** is enabled on your Twitch account. This is required to register applications on the Twitch Developer Console.

**2.** Go to the [Twitch Developer Console](https://dev.twitch.tv/console) and log in with your Twitch account.

**3.** Click on the **"Applications"** tab in the top navigation.

**4.** Click on the **"+ Register Your Application"** button.

**5.** Fill in the required information:
- **Name:** Give your application a unique name (do not include "Twitch" in the name).
- **OAuth Redirect URLs:** Enter the [redirect URI given by ClientXCMS in the configuration page](#redirect-uri) and click **"Add"**.
- **Category:** Select the category that best describes your application (e.g., "Website Integration").

**6.** Complete the CAPTCHA verification and click **"Create"** to register the application.

**7.** Back on the **Applications** tab, find your newly created application and click the **"Manage"** button.

**8.** Copy the **Client ID** displayed on the management page.

**9.** Click the **"New Secret"** button to generate a **Client Secret**. **Important:** The secret is displayed only once — copy it immediately and store it securely.

**10.** Insert both the **Client ID** and **Client Secret** in the [platform OAuth configuration](#oauth2-configuration-example) on ClientXCMS.


### ClientXCMS

ClientXCMS can also be used as an OAuth2 provider, which allows your users to log in using their ClientXCMS account.

:::info
Access to the ClientXCMS OAuth2 provider is **not available by default**. You must **open a support ticket** on the [ClientXCMS platform](https://clientxcms.com/client/support) to request access to the OAuth2 provider feature. The ClientXCMS team will provide you with the necessary credentials.
:::

**1.** Open a support ticket on the [ClientXCMS platform](https://clientxcms.com/client/support) requesting access to the OAuth2 provider.

**2.** The ClientXCMS team will review your request and provide you with a **Client ID** and **Client Secret**.

**3.** Once you have received the credentials, insert them in the [platform OAuth configuration](#oauth2-configuration-example) on ClientXCMS.

**4.** Make sure to set the [redirect URI given by ClientXCMS in the configuration page](#redirect-uri) when communicating with the support team.

---

## Error 403 Problem

To fix this problem, go to your Plesk management panel, then Web Application Firewall. In the firewall mode change to "Detection only". It should initially be at "On".
Expand Down
5 changes: 4 additions & 1 deletion docs/extensions/modules/Proxmox.md
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,9 @@ If no IP is found, this error is returned.
| `proxmox:cleanup-console-users` | Cleans up Proxmox console users. | - |

### Support NoVNC
To support noVNC, you must create a custom role in Proxmox with the `VM.Console` permission named "CustomerPanel".
To support noVNC, you must create a custom role in Proxmox with the `VM.Console` permission named "PanelCustomer".

You can define in the Proxmox server metadata on ClientXCMS the key `proxmox_url` with the value `proxmox.example.com` if you use a local proxmox to indicate the URL of the proxmox.

### Support Backups
To support backups, you must define in the Proxmox server metadata on ClientXCMS the key `proxmox_backup_storage` with the value of the backup storage to use for VPS. For example, if your backup storage is called "backup", you must define `proxmox_backup_storage` with the value `backup`. This will allow ClientXCMS to know which storage to use for VPS backups.
59 changes: 59 additions & 0 deletions docs/settings/store/payment_gateways/binance.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
translated: true
sidebar_position: 6
---

# Binance Pay

The **Binance Pay** gateway allows you to accept cryptocurrency payments from Binance users.

You can manage payment gateways from:

`Settings` > `Store Settings` > `Binance Pay`

![Binance Pay configuration](/img/next_gen/settings/store/payment_gateways/binance/config.png)

## Retrieving Your Keys

To configure Binance Pay, you need to retrieve your credentials from the Binance Merchant Portal:

1. Log in to your **Binance Merchant account**.
2. Go to **Developers > API Management**.
3. Create a new API key for your store.
4. Securely copy your **API Key**, **Secret Key**, and **Merchant ID**.

:::warning Important
The **Secret Key** is only displayed once when created. Make sure to save it in a secure location.
:::

## System Operation

### Payment Process

1. **Payment Method Selection**: The customer chooses "Binance Pay" during checkout.
2. **Redirect to Binance**: The customer is directed to Binance's secure payment page.
3. **Payment Validation**: The customer completes the transaction using their Binance account or QR code.
4. **Notification**: Binance sends a notification to your system via webhook.
5. **Automatic Validation**: The order is automatically processed upon confirmation.

## Gateway Configuration

### Essential Parameters

**Gateway Name** | (text)<br />
Use "Binance Pay" or "Crypto Payment" for your customers.

**Minimum Amount** | (amount)<br />
Define the minimum amount required for this payment method.

**Merchant ID** | (text)<br />
Your unique Binance Merchant identifier.

**API Key** | (text)<br />
The public API key provided by Binance.

**Secret Key** | (text)<br />
The secret key used to sign requests and secure transactions.

**Status** | (dropdown menu)<br />
Set to **"Active"** to enable the gateway for your customers.
Loading
Loading