# Order Detail

https://docs.wisecp.com/fr/order-detail

Settle a single order from one screen, so an approval, a status question or a billing dispute is answered without opening the client record, the invoice and every service in turn.

## Reaching the Screen

Open **Orders** from the main menu and select a row. The address carries the record id: `{admin}/orders/detail?id={order}`

The page renders for an administrator holding either the order viewing or the order operation privilege. A missing id, or one that no longer exists, ends on the not-found page.

Editing is a separate gate: the status list, the affiliate selector, the notes box, **Approve**, **Delete** and the row delete buttons need the operation privilege. A viewer sees the same figures, with the status as a badge and the notes box read only.

## What Is on the Screen

The title repeats the order number and prints the current status as a badge beside it. The body is built from four blocks.

- **Client and Identity**: Who ordered, under which order and invoice number, when and from where.
- **Status and Commercial Data**: Status, payment method, discounts, affiliate and coupons. Both editable selectors live here.
- **Order Items**: Every product, domain and add-on the order produced, with live status and its own actions.
- **Notes and Amount Summary**: The note kept on the order, which the client can also read, and the breakdown that adds up to the total.

### Client and Order Identity

The left card opens with the client card: avatar, name, company line and the group, affiliate and reseller tags. The buttons beside the name open the client summary, the administrator note (only when one exists) and the blacklist record (only when blacklisted).

Below it sits the identity of the order. **Order Number** is the business number, not a database id. **Invoice Number** links to the invoice and carries a **Complete** marker when that invoice is paid and an **Incomplete** one when it is unpaid. Any other invoice state, cancelled, refunded or waiting, prints no marker at all and leaves the number bare, while the order list calls the same record **Unknown**. Without an invoice it reads **None**. **Created By** appears only when the order did not come from the client, naming the staff member or reading **API** or **System**. **IP Address** appears only when an address was recorded, with a lookup beside it.

### Status, Discounts and Attribution

**Order Status** is a list; saving it is described under Tasks. **Payment Method** is read only and shows the gateway used, or **None**.

**Reseller Discount** shows what was deducted because the client is a reseller. When a breakdown exists, **View Details** opens it: each line names the rule that granted the discount (**Group**, **Category**, **General**, **Product**, **Domain** or **Addon**) with its rate and amount. The block closes with **Total Discount**.

**Affiliate** is a searchable selector, each entry showing the commission rate that will apply. **Coupon** lists every coupon used with its code and the amount removed.

### Order Items

The table lists what the order produced, one row per delivered unit, under **Product/Service**, **Cycle**, **Amount** and **Status**. The status is read live from the service, so it can differ from the order status.

A product row links to the service detail. A domain row prints the domain with three shortcuts: **WWW** opens the site, **WHOIS** the panel's own lookup, **intoDNS** an external DNS report. An information icon marks an item that collected extra information at checkout; a quantity above one becomes a multiplier next to the amount. When the service behind a row was deleted, the row keeps the name, loses its links and reads **Service Deleted**.

### Add-on Rows

A service carrying add-ons shows a toggle under its name with the add-on count and their combined amount. Opening it reveals a nested table listing each add-on with its cycle, amount and live status; the chevron opens the add-on detail window and the trash button removes that add-on.

An order line that only bought an add-on for an existing service is listed as its own row, marked **Addon**, with the parent service named underneath. If the add-on record is gone, the row reads **Addon Deleted**.

### Notes and Amount Summary

The notes box is written by its own button, not by leaving the page, and its text reaches the client.

The summary starts with **Subtotal**, then a **Discount** line for the coupon and another for the reseller share, each printed only when above zero. **Tax** follows with its rate, and every additional tax gets its own line and rate. A **Payment Fee** line appears when the linked invoice recorded a gateway fee; on a formal invoice the tax on the fee is included, so the lines add up to **Total Amount**.

## Fields

- **Order Status**: Required, always carrying the current value. Depending on the value picked it saves at once or opens a confirmation window.
- **Affiliate**: Optional, empty by default. Searchable, showing the commission rate. Selecting or clearing it saves at once.
- **Notes & Additional Info**: Optional. Free text visible to the client, saved only by its button. Markup is stripped on save.

Everything else on the screen is read only: the numbers, creator, date, address, payment method and discount figures are set when the order is created.

## Tasks

### Approving a Waiting Order

1. In the **Order Items** block, use the green **Approve** button above the table. It stays disabled while no item is waiting.
2. In the **Approve Order Confirmation** window decide on **Apply on API**, offered only when an item is bound to a module, then confirm with **Approve** at the bottom of the window.
3. The order moves to the in progress status, which is pushed to its items except those already further along, and the page reloads.

### Changing the Order Status

1. Pick the new value in **Order Status** in the right card.
2. For the in progress status the change is written straight away and a **The changes were saved successfully.** marker flashes beside the list.
3. For the active, waiting and cancelled statuses a window opens first and states what will happen to the items and the invoice; confirm with **Activate**, **Set to Pending** or **Cancel**. Closing it without confirming restores the previous value.
4. The page reloads. Active, in progress and cancelled are also applied to the order's services; waiting changes the order alone.

### Attributing the Order to an Affiliate

1. Open the **Affiliate** selector in the right card and type part of a name, company or e-mail address.
2. Select the entry; the rate after the name is the commission that will be credited.
3. The change is saved at once with no confirmation and the panel reports it. Clearing the selector removes the attribution.

### Saving a Note on the Order

1. Type into the notes box in the lower left card.
2. Use **Save Notes** at the top right of the same card; leaving the page without it discards the text.
3. The panel confirms the save, and the client sees the same text on their own order.

### Removing an Item From the Order

1. In the last column of the item row, use the red trash button. Add-ons have their own inside the nested table, but that one is answered by the service screen rather than the order screen, so it asks for the service operation privilege.
2. In the **Delete Service Confirmation** window decide on **Apply on API**, offered only when that service is bound to a module and already on, since it also removes the account on the server. Confirm with **Delete**.
3. The row disappears and the page reloads; if it was the last item, the panel returns to the order list.

### Deleting the Order

1. Use the red **Delete** button above the item table.
2. In the **Delete Order Confirmation** window read what will be removed, decide on **Apply on API**, then confirm with **Delete**.
3. The order and its services are removed and the panel returns to the order list. The record cannot be restored.

## Things to Watch

> **The API switch reaches the real server**
> 
> Approval, the active and cancelled statuses and every delete offer **Apply on API**, already on, whenever the item behind them is bound to a module. With it on, the module runs the action on the server: an account can be created, suspended or removed for real. Turn it off to change only the panel record. **Set to Pending** never offers the switch, because setting an order back to pending touches the order alone.

> **Deleting is not cancelling**
> 
> The cancelled status keeps the order, its items and its history readable. **Delete** removes the order together with its services, and nothing here brings it back.

> **Two edits save without asking**
> 
> The affiliate selector and the in progress status are written the moment you touch them. Everything else asks first, and the notes box waits for its own save button.

## Required Privileges

Opening the page needs `ORDERS_LOOK` or `ORDERS_OPERATION`. Every change on it needs `ORDERS_OPERATION`.

One button is the exception. The trash button on an add-on row is drawn for `ORDERS_OPERATION`, but the request it sends is handled by the service screen and checked against `SERVICES_OPERATION`. Staff holding only the order permission see the button, press it and are told they lack the privilege; give them `SERVICES_OPERATION` as well if removing add-ons is part of their work.

## Related Articles

- [Orders](https://docs.wisecp.com/en/orders)
- [Creating an Order](https://docs.wisecp.com/en/creating-an-order)
- [Service Detail Overview](https://docs.wisecp.com/en/service-detail-overview)
- [Invoice Detail Overview](https://docs.wisecp.com/en/invoice-detail-overview)
- [Client Detail Overview](https://docs.wisecp.com/en/client-detail-overview)
