Shippit is a multi-carrier shipping platform that connects your store to couriers. StoreConnect retrieves live carrier rates from Shippit at checkout and can register shipments for carrier collection. Tracking updates are delivered automatically via webhook.

You need a Shippit account before configuring this integration. Visit [Shippit](https://www.shippit.com/) to sign up.

## Shipping provider configuration

Create a **Shipping Provider** record on your Store with these values:

| Field | Value |
|---|---|
| **Provider** | Shippit |
| **API URL** | Contact Shippit for your API endpoint |
| **API Key** | Bearer token from your Shippit account |
| **API Secret** | Leave blank |
| **Zone** | The geographic zone this provider serves |
| **Active** | Checked |

## Allow products to be shipped with Shippit

For Shippit carrier rates to appear at checkout, each product must be configured to allow Shippit as a shipping method.

On each product record, find the **Shipping Methods** multi-select picklist field and add **Shippit**.

If Shippit does not appear in the picklist, ask your Salesforce System Admin to add a new picklist value with the API Name **Shippit**.

Shippit rates are offered at checkout when all items in the cart have Shippit listed as an allowed shipping method.

## Register a shipment for collection

Once an order is ready to ship, you can lodge it with Shippit to arrange carrier collection.

Requirements before lodging:
- The shipment has a **Stock Location** with a complete address (including country using ISO code, e.g. AU)
- Each product has **Weight**, **Weight Unit**, and **Dimension Unit** configured

:::note
Shippit expects weight in **kilograms** and dimensions in **metres**. Ensure your product dimensions and weight units are set accordingly.
:::

To lodge the shipment:

1. Open the order's shipment record.
2. Set **Provider** to `Shippit`.
3. Set **Provider Service** to the Shippit service level (see values below).
4. Set **Status** to `Ready to ship`.
5. Save the record.

**Service level values**

| Value | Description |
|-------|-------------|
| `standard` | Standard delivery |
| `express` | Express delivery |
| `priority` | Priority delivery |
| `on_demand` | Same-day or on-demand delivery |

StoreConnect sends the shipment details to Shippit. Shippit returns a tracking number, which is stored in the **Provider Shipment ID** field. If an error occurs, the message is stored in the **Error** field.

### Shipping Carrier Product configuration

When Shippit rates are first returned at checkout, StoreConnect automatically creates a **Shipping Carrier Product** record for each rate code. For shipment lodging to work correctly, you must set the following fields on each Shipping Carrier Product record:

| Field | Description |
|-------|-------------|
| **Courier Type** | The Shippit courier type code (provided by Shippit) |
| **Service Level** | The service level value (e.g. `standard`, `express`, `priority`, `on_demand`) |

These fields tell StoreConnect which courier type and service level to send when lodging a shipment with Shippit. Without them, lodging will fail.

## Tracking

Shippit sends webhook-based tracking updates as the shipment moves through the delivery process. StoreConnect receives these updates automatically and updates the shipment record's tracking status. No manual configuration is required for tracking once the provider is active.