> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://doc.common-services.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Transport

## Available Carriers

The module displays the carriers you have selected in your Cdiscount back-office configuration. Only your selected carriers will appear here:

![Carrier selection](https://storage.crisp.chat/users/helpdesk/website/-/3/f/a/8/3fa8ee645cd13200/transporteur-backoffice-cdisco_1z01n5y.png)

> 📌 **Key Rules for Shipping Rates:**
> * **Destination Zone:** Shipping rates are calculated specifically based on your PrestaShop **France zone** settings during offer exports, rather than individual destination countries.
> * **Heavy Items (> 30 kg):** Products weighing over 30 kg bypass standard shipping modes and require dedicated large-parcel shipping modes. If no large-parcel mode is mapped, the product may be skipped from the offer export.

---

## Simplified Configuration

The **Preparation time** field is **strictly mandatory**. It determines the delay (in business days) required to prepare and dispatch the order. This value can be overridden at the profile or individual product level.

At a minimum, configure your mandatory shipping modes and assign your corresponding PrestaShop carriers:

![Shipping mode and minimum values](https://storage.crisp.chat/users/helpdesk/website/-/3/f/a/8/3fa8ee645cd13200/transport-2_1ibpurj.png)

### Minimum Shipping Charges
Although the UI highlights the **Minimum** column in red, leaving it empty is allowed by the module code.

* **Fallback Behavior:** If left blank, the module will rely solely on your PrestaShop carrier grid. If you enter a Minimum amount, it acts as a price floor: the module compares the rate calculated from your carrier grid against your Minimum setting, and exports whichever value is higher.
* **Entering "0":** Entering `0` does **not** mean free shipping; the grid value will still apply. If you want "no floor", leave the field empty instead.
* **Order Imports:** An empty Minimum field will **not** block or disrupt order imports.

---

## Detailed Calculation Logic

![Detailed configuration](https://storage.crisp.chat/users/helpdesk/website/-/3/f/a/8/3fa8ee645cd13200/transport_1q5mepq.png)

### Associated Carriers (A & B)
* **A – Required Carriers:** The mandatory shipping methods required by Cdiscount.
* **B – Optional Carriers:** Additional shipping options offered to customers.

### Shipping Fee Calculation Order
When exporting offers (via XML), shipping fees are calculated in the following order:
1. **Weight Grid:** The module checks your PrestaShop carrier's weight-based shipping grid. If a matching weight range is found, this value is used.
2. **Price Grid:** If the weight grid is empty or has no matching range, the price-based shipping grid is checked.
3. **Price Floor Application:** The calculated fee is compared against the **Minimum (1)** value. The module exports whichever value is higher.

### Field Definitions

1. **Minimum:** The baseline price floor. For example, if your PrestaShop grid returns €1.00 but your Minimum is set to €5.00, €5.00 will be exported. If left empty, the exact grid value is used.
2. **Additional:** An optional **absolute amount** (in euros) applied as additional shipping for extra units of the same item. This is **not** a percentage. Example: `2.50` = €2.50 additional. Leave empty if unused. Use a dot as the decimal separator (e.g. `4.50`).

---

## Sync Types & Octopia Overwrites

> ⚠️ **Important for Stores Managing Rates in Octopia:**
> * **Full Offer Sync (XML):** Sends full offer data, **including shipping charges**. Running a Full Sync **will overwrite** shipping rates configured directly inside Octopia/Cdiscount back office.
> * **Stock & Price Sync (XML):** Updates inventory and pricing only—it **does not send shipping data**, preserving rates managed directly in Octopia.

---

## Package Tracking Notification

Carriers are referenced at Cdiscount using standardized nomenclature:
* The carrier name
* The default package tracking URL

In this section, map your Cdiscount carrier to your corresponding PrestaShop carrier:

![Carrier association](https://storage.crisp.chat/users/helpdesk/website/-/3/f/a/8/3fa8ee645cd13200/notification-suivi_lbqzdu.png)

* If a tracking URL is missing from your PrestaShop carrier settings, the default Cdiscount URL shown on the right will be used as a fallback.
* The mapped Cdiscount carrier name will be transmitted when updating tracking statuses.

> 💡 *Note: The tracking notification workflow remains valid across all module versions, though UI labels or layout may vary slightly depending on your installed version.*