# aaPanel

https://docs.wisecp.com/fr/aapanel

Connect aaPanel to sell isolated hosting accounts and let clients manage their websites from WISECP.

## Opening the Screen

Open **Products → Hosting & Servers → Server Settings → Add New Server**. Under **Server Automation Module → Web Hosting**, select **aaPanel**.

`{admin}/products/servers-add`. Click an existing server’s name to edit it.

## Before You Connect

This integration uses aaPanel Pro’s **Account (Sub aaPanel)** and resource packages. A single-administrator installation without those account APIs is insufficient. Install the required web server, PHP, database and FTP services in aaPanel’s App Store. Prepare packages under **Account → Package**. [aaPanel account prerequisites](https://www.aapanel.com/docs/Function/Account.html).

In aaPanel, open **Settings → API → Modify**, enable API access and add your WISECP server’s outgoing IP to the **IP whitelist**. Copy the API secret key into WISECP’s API Token field. Use an administrator key authorized for account, package, website and enabled tool operations. [aaPanel API instructions](https://www.aapanel.com/docs/api/api-list.html).

Use an active WISECP server record and a Hosting product. Provider licences and hosting costs are separate; set sale prices and billing currency in WISECP.

## Connection and Product Settings

- **Address / Hostname**: Both are required. Address is the connection host; Hostname names the server record. Do not include a URL path in Address.
- **Use Custom Port**: Module defaults: HTTP 8888, HTTPS 7800. Enter the actual panel port when different; changing HTTPS does not change aaPanel itself.
- **Username / API Token**: Username is required by the server form. API requests use the API Token. Enter the aaPanel API secret key, not an account login token.
- **Security Entrance**: Enter the panel’s random path segment, such as abc123de. Leave blank only when no security entrance is configured. A wrong path can return 404.
- **Verify SSL Certificate**: On for new records. Keep HTTPS and certificate verification enabled; use the hostname covered by the certificate.
- **Identity and Capacity**: Monthly Cost starts at zero; select its currency. Empty Maximum Accounts becomes 200. Occupancy alerts use that limit. Nameservers accepts four lines.

### Module Configuration

After server selection, open the product’s **Automation → Module Configuration** section.

- **Package**: Choose an existing resource package. The saved value is its name; WISECP resolves the target server’s package ID. Empty means no explicit package assignment.
- **PHP Version**: Optional. Server Default is selected initially. Available installed versions apply to the account’s primary site.

## Tasks

### Connect the Server

1. Fill **Connection Details**, including **Security Entrance**, and click **Test Connection** in the server summary.
2. Confirm the result. The system-information test checks API access, not Pro account provisioning or every tool.
3. Complete **Identity and Capacity** and click **Add New Server**. Confirm the list entry; editing uses **Save Changes**.

### Map a Hosting Product

1. Open a Hosting product’s **Automation** tab. Choose **aaPanel** under **Module Assignment**.
2. Under **Server Configuration**, select **Single Server** or **Server Group**. Group members need matching package names.
3. Select Package and PHP Version in **Module Configuration**. Review **Resource Limits**; available package quotas fill those fields.
4. Keep the initial product hidden and **Automatic Setup** off. Click **Save Changes**, then reopen Automation to verify the saved settings.

Package selection does not import products or prices. This module creates no saleable add-ons or requirements and has no add-on mappings. Provisioning creates a sub-account and its primary website; check the website’s actual PHP version afterward.

### Import Existing Accounts

1. Open the saved server’s **Import** tab and click **List Results**. The list shows account domains and usernames.
2. Select accounts, then match the client, product, billing cycle and dates. Existing domain matches prevent duplicate service links.
3. Click **Import** below the list and check **Linked Services**. Existing aaPanel accounts are linked, not provisioned again.

### Manage Services and Tools

Open a service’s **Management → Overview** for actions and tools. **Management → Settings → Package** changes the account package and reapplies its limits. See [Service Management](https://docs.wisecp.com/en/service-management) for action windows and confirmations.

Administrators can create, suspend, reactivate, terminate, change account passwords and switch packages. Client panel sign-in requests an account login link; if unavailable, it opens the normal panel address. Administrator panel sign-in also opens that address.

In the saved server’s **Preferences → Client Area Preferences**, choose tools and click **Save Changes**. Product restrictions and service Preferences also apply. Clients use their service’s **Management** tab.

Tools: FTP Accounts, Databases, Addon Domains, Subdomains, PHP Version, Cron Jobs and SSL Management. FTP supports create/password change/delete without quotas. Databases support create/delete, without separate user, privilege or password controls. Domains support create/delete, without editing or custom subdomain roots. PHP applies per site. Cron jobs support create/edit/delete without notification email. SSL supports Let’s Encrypt and custom certificate/key installation, plus removal; reinstall is unavailable.

Disk, bandwidth, database, addon-domain and FTP usage can feed enabled metrics. Scheduled collection does not synchronize package prices. Inspect an existing test service’s overview and enabled tools before automatic setup.

## Things to Watch

> **Data and Quotas**
> 
> Termination deletes the sub-account and its data. Keep backups outside this module; it has no backup tool. Lower package quotas can restrict existing usage. Cron commands execute on the hosting server; review their effects before saving.

## Required Privileges

Server settings require **MODULES_SERVERS_SETTINGS**; product changes require **PRODUCTS_OPERATION**. Administrator panel sign-in requires **MODULES_ROOT_LOGIN_BUTTON**. Service actions require their corresponding service privileges.

## Related Articles

- [Adding a Server](https://docs.wisecp.com/en/adding-a-server)
- [Product Automation](https://docs.wisecp.com/en/product-automation)
- [Server Groups](https://docs.wisecp.com/en/managing-server-groups)
