With pallet costs (*Palettenkosten*, also called pallet costs for loading) you charge a client a fixed price for every pallet shipped. X-Sitter counts the actual pallets of the client's orders in the billing period.

![Screenshot: Pallet Costs (Loading) Templates list with columns Client, Name, Costs and Active](/billing/images/pallet-costs-overview.png)

## Before you start
- Your user needs the permissions for the pallet costs in the cost settings – ask your administrator.
- The client's orders are picked as pallets or packed as pallets at the packing station, see [Picking](/outbound/picking.md), [Pallet rides](/outbound/pallet-rides.md) and [Packing](/outbound/packing.md).
- Recommended: [Service categories](/billing/service-categories.md) are set up.

## Step by step
1. Open **WMS › Settings › Cost settings › Pallet Costs** (*WMS › Einstellungen › Kosteneinstellungen › Palettenkosten*).
2. Click **Create template** (*Vorlage anlegen*).
3. Section **General Information** (*Allgemeine Informationen*): choose the **Client** (*Mandant*), enter a **Name** (*Name*), optionally a **Custom Name** (*Individueller Name*) and a **Description** (*Beschreibung*), and choose the **Category** (*Kategorie*) and the **Itemized statement on the invoice** (*Detail-Darstellung auf Rechnung*).

![Screenshot: Section "General Information" of the pallet cost template form](/billing/images/pallet-costs-form-general.png)

4. Section **Cost settings** (*Kosten & Einstellungen*): enter the **Cost per pallet** (*Kosten pro Palette*), tick **Active** (*Aktiv*) and optionally set a [validity period](/billing/validity-period.md).
5. Click **Save** (*Speichern*), or **Cancel** (*Abbrechen*) to discard.

![Screenshot: Section "Cost settings" with Cost per pallet, Active and the validity period fields](/billing/images/pallet-costs-form-costs.png)

## Fields and options
| Field | Meaning | Required |
|---|---|---|
| **Client** (*Mandant*) | The client you are billing. | yes |
| **Name** (*Name*) | Name of the item on the statement. | yes |
| **Custom Name (Optional)** (*Individueller Name*) | Text per line in the detailed breakdown, e.g. with `#Auftragsnummer#` (order number), `#Menge#` (quantity) or `#Avisierungsnummer#` (advance notice number). | no |
| **Description** (*Beschreibung*) | Description of the item on the statement. | no |
| **Category** (*Kategorie*) | Service category, see [Service categories](/billing/service-categories.md). | no |
| **Itemized statement on the invoice** (*Detail-Darstellung auf Rechnung*) | **No details**, **As subheadings** or **Detailed breakdown in the appendix**. | no |
| **Cost per pallet** (*Kosten pro Palette*) | Price per pallet. | yes |
| **Active** (*Aktiv*) | Only active templates are charged. | – |

## How the pallets are counted
- X-Sitter takes the client's orders with an order date in the billing period that have pallets.
- **Pallets registered at the packing station** count first. If an order has no pallets registered there, the **full pallets picked** (status picked, packed or shipped) are counted instead.
- The two sources are never added up, so no pallet is charged twice.
- The detailed breakdown shows the date, the order number (or your custom name) and the number of pallets.

![Screenshot: Client statement appendix with pallet cost lines showing date, order number and number of pallets](/billing/images/pallet-costs-statement.png)

## Good to know / Troubleshooting
| Message | Cause | Solution |
|---|---|---|
| The entry has been created / updated / removed | The action was successful. | – |
| Should the entry really be removed? (*Soll der Eintrag wirklich entfernt werden?*) | Confirmation before deleting. | Confirm. |
| Pallets missing on the statement | The order was not picked or packed as a pallet, or the order date lies outside the billing period. | Check the order and the billing period. |

- Use **Duplicate** (*Duplizieren*) in the list to copy a template. The copy is inactive until you activate it.
