> ## Documentation Index
> Fetch the complete documentation index at: https://www.zippendo.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Carriers

> Connect carriers in Zippendo and manage products, credentials, and test mode.

A **carrier** is a shipping company you book labels with — GLS, PostNord, Bring, and the rest of the catalog. Connecting one stores that account’s credentials on your organization so you can pick its **products** when you [create a shipment](/docs/tutorials/create-a-shipment).

This walkthrough uses the **Carriers** screen in the client. For the catalog list and credential notes, see [Supported carriers](/docs/carriers/supported-carriers) and [Adding and managing carriers](/docs/carriers/adding-and-managing-carriers).

<Info>
  You do **not** pick a sender address on the connect form. Add at least one [sender address](/docs/settings/sender-addresses) before you create a shipment — the address is chosen on the shipment, not on the carrier.
</Info>

## My Carriers

Open **Carriers** in the sidebar. The page title is **Carriers / Integrations**. Two tabs sit in the header:

* **My Carriers** — accounts you have already connected (`?tab=my-carriers`).
* **All Carriers** — the catalog you can connect from (`?tab=all-carriers`).

Each connected card shows the carrier logo, the name you gave the connection, a **Connected** badge, and **Edit Carrier**.

<Frame caption="My Carriers lists every connected account — PostNord and GLS Denmark in this organization">
  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/01-my-carriers-light.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=14eb4a93ed090c7040b4d294e1719dbb" alt="Carriers / Integrations on My Carriers with PostNord and GLS Denmark cards, each with a Connected badge and Edit Carrier" className="block dark:hidden" width="2880" height="1800" data-path="images/tutorials/carriers/01-my-carriers-light.png" />

  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/01-my-carriers-dark.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=c1d21c1952f39e5d2b302d5c741fcfca" alt="Carriers / Integrations on My Carriers with PostNord and GLS Denmark cards, each with a Connected badge and Edit Carrier" className="hidden dark:block" width="2880" height="1800" data-path="images/tutorials/carriers/01-my-carriers-dark.png" />
</Frame>

If you have not connected anyone yet, the tab shows **No carriers yet** and a **Browse Carriers** button that switches you to **All Carriers**.

You can connect the same carrier type more than once (for example two GLS accounts) as long as each connection has its own name and credentials.

## All Carriers

Switch to **All Carriers** to see the catalog. The count above the grid is the number of integrations available today.

<Frame caption="All Carriers is the catalog — Connect starts a new account, Learn more opens the carrier’s site">
  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/02-all-carriers-light.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=3e59840848b1fb0cfaa658f679d4b32b" alt="All Carriers grid with Bring, DAO Denmark, GLS Denmark, FedEx and other carrier cards" className="block dark:hidden" width="2880" height="1800" data-path="images/tutorials/carriers/02-all-carriers-light.png" />

  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/02-all-carriers-dark.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=e660a42e8b97d75ed3abd192c53e87fb" alt="All Carriers grid with Bring, DAO Denmark, GLS Denmark, FedEx and other carrier cards" className="hidden dark:block" width="2880" height="1800" data-path="images/tutorials/carriers/02-all-carriers-dark.png" />
</Frame>

Each card has:

* A short description of what the integration books.
* **Connect** — opens **Create new carrier**.
* **Learn more** — the carrier’s public site.

Some cards are marked **Deprecated** (for example an older Instabox API). Prefer the current integration unless you still need the legacy one.

The grid is the source of truth for what you can connect. [Supported carriers](/docs/carriers/supported-carriers) is the same list in documentation form.

## Connect a carrier

<Steps>
  <Step title="Open All Carriers">
    Go to **Carriers → All Carriers**.
  </Step>

  <Step title="Click Connect">
    Find the carrier (for example **Bring**) and click **Connect**.
  </Step>

  <Step title="Name the connection">
    The dialog title is **Create new carrier**. **Carrier name \*** is required. It defaults to the catalog name; change it if you will connect the same carrier twice.
  </Step>

  <Step title="Fill Carrier Configuration">
    **Required Fields** must be completed before **Create** is enabled. **Optional Fields** are extras the carrier accepts — customer numbers, return customer numbers, and **Sandbox Mode**.
  </Step>

  <Step title="Create">
    Click **Create**. A toast confirms **Carrier created successfully**, and the connection appears under **My Carriers**.
  </Step>
</Steps>

<Frame caption="Create new carrier for Bring — name, then required API Key and API Secret">
  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/03-connect-modal-light.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=67efd74c818c07ca9f9595547d78f4a3" alt="Create new carrier dialog with Carrier name Bring and Carrier Configuration fields for API Key and API Secret" className="block dark:hidden" width="2880" height="1800" data-path="images/tutorials/carriers/03-connect-modal-light.png" />

  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/03-connect-modal-dark.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=900727af2b144215e1b73285428cd8c1" alt="Create new carrier dialog with Carrier name Bring and Carrier Configuration fields for API Key and API Secret" className="hidden dark:block" width="2880" height="1800" data-path="images/tutorials/carriers/03-connect-modal-dark.png" />
</Frame>

There is **no sender-address picker** on this dialog. Scroll **Optional Fields** for extras that sit below the fold (Bring’s **Return Customer Number** and **Sandbox Mode**).

### Credentials by carrier

The form is generated from that carrier’s config. Typical fields:

| Carrier         | Required                                                               | Optional                                                          |
| --------------- | ---------------------------------------------------------------------- | ----------------------------------------------------------------- |
| **GLS Denmark** | **Login Name**, **Password**, **Customer ID**, **Contact ID**          | **Sandbox Mode**                                                  |
| **Bring**       | **API Key**, **API Secret**                                            | **Customer Number**, **Return Customer Number**, **Sandbox Mode** |
| **PostNord**    | **Customer Number**, **Country** (Denmark, Sweden, Norway, or Finland) | **Return Customer Number**, **Sandbox Mode**                      |

**Sandbox Mode** books against the carrier’s test environment. Leave it off for live labels.

<Tip>
  If your organization has [brands](/docs/tutorials/settings-team-brands), a **Brand** field appears on this dialog and on the edit page. Assigning a brand means only that brand can use the connection. Leave it unset for an organization-wide carrier. The field is hidden when you have no brands.
</Tip>

<Warning>
  If **Create** fails, check required fields and that keys have no extra spaces. Auth errors after you send a shipment are covered in [Carrier authentication failures](/docs/knowledge-base/carrier-authentication-failures).
</Warning>

## Edit a carrier

On **My Carriers**, click **Edit Carrier**. The page title is **Edit your carrier**.

<Frame caption="Edit your carrier — General name plus Carrier settings, including Sandbox Mode">
  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/04-edit-carrier-light.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=270fde04ae2958d356f62d0c8b4ff562" alt="Edit your carrier for GLS Denmark with Login Name, Password, Customer ID, Contact ID, and Sandbox Mode" className="block dark:hidden" width="2880" height="1800" data-path="images/tutorials/carriers/04-edit-carrier-light.png" />

  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/04-edit-carrier-dark.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=d22d969e36e75c8f60569c845f27ae24" alt="Edit your carrier for GLS Denmark with Login Name, Password, Customer ID, Contact ID, and Sandbox Mode" className="hidden dark:block" width="2880" height="1800" data-path="images/tutorials/carriers/04-edit-carrier-dark.png" />
</Frame>

Two cards:

* **General** — **Carrier name**, and **Brand** if the organization has brands.
* **Carrier settings** — the same dynamic fields as connect (credentials plus **Sandbox Mode**).

Header actions are **Delete** and **Save**. Saving shows **Carrier updated successfully**.

This page does **not** include ZPL, cancel-at-carrier, or print-on-error toggles. Those are not carrier-form settings. Label format and printers live on the shipment and under [Printers](/docs/tutorials/labels-printing).

## Products

Connecting a carrier does not pick a product. Products appear when you create a shipment, under **Carrier Settings**: choose **Carrier \***, then **Product \***.

<Frame caption="After you select GLS Denmark, Product lists BusinessParcel, PrivateDelivery, ShopDelivery, and the express products">
  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/05-carrier-products-light.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=3e817679b62415be6da40169828193db" alt="Create Shipment with the GLS Denmark product list open" className="block dark:hidden" width="2880" height="1800" data-path="images/tutorials/carriers/05-carrier-products-light.png" />

  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/05-carrier-products-dark.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=d8370a057d4d517cab1b3fc860d220b8" alt="Create Shipment with the GLS Denmark product list open" className="hidden dark:block" width="2880" height="1800" data-path="images/tutorials/carriers/05-carrier-products-dark.png" />
</Frame>

The list is filtered by shipment **Type**: outbound products for **Outbound**, return products for **Inbound**. Each option shows a short description. It does **not** show a live price.

After you pick a product, Zippendo may show a **weight range**, **Services** (for example **Notification Email**), and extra options that product requires.

[Shipping rules](/docs/tutorials/shipping-rules) can pre-select carrier and product so you do not pick them by hand every time. The full create flow is in [Create a shipment](/docs/tutorials/create-a-shipment) and [Creating a shipment](/docs/shipments/creating-a-shipment).

## Service points (drop points)

Some products deliver to a parcel shop or locker instead of the door. In the app that is **Drop Point** / **Service Point**. **GLS ShopDelivery** is one of those products.

Pick the shop product. The **Drop Point** card appears under **Carrier Settings**. Until the receiver has address, postal code, city, and country, it shows **Please add a receiver address first to find nearby droppoints.**

<Frame caption="GLS ShopDelivery selected — Drop Point waits for a complete receiver address">
  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/06-drop-point-light.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=46d8ab386a3dcccb0cffc9b53ef90da3" alt="Create Shipment with GLS ShopDelivery, Notification Email, and a Drop Point card asking for a receiver address" className="block dark:hidden" width="2880" height="1800" data-path="images/tutorials/carriers/06-drop-point-light.png" />

  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/06-drop-point-dark.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=99081e03dfcbd9be54b181cc3ddfe773" alt="Create Shipment with GLS ShopDelivery, Notification Email, and a Drop Point card asking for a receiver address" className="hidden dark:block" width="2880" height="1800" data-path="images/tutorials/carriers/06-drop-point-dark.png" />
</Frame>

<Steps>
  <Step title="Add the receiver">
    Click **Receiver**, fill name, address line 1, postal code, city, and a 2-letter country code, then save.
  </Step>

  <Step title="Select Service Point">
    The **Drop Point** card searches nearby shops. Click **Select Service Point** (or **Change Service Point** if one is already filled).
  </Step>

  <Step title="Confirm Selection">
    The **Select Service Point** dialog lists points with distance and a map. Choose one and click **Confirm Selection**.
  </Step>
</Steps>

<Frame caption="Select Service Point lists nearby shops on a map — confirm to attach one to the shipment">
  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/07-service-points-light.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=bc28db7a72dda7e67a5a3ce14354ea79" alt="Select Service Point dialog with three shops and a map of Copenhagen" className="block dark:hidden" width="2880" height="1800" data-path="images/tutorials/carriers/07-service-points-light.png" />

  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/07-service-points-dark.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=4c5aeb9675b12a9eb33af3ada0dee99b" alt="Select Service Point dialog with three shops and a map of Copenhagen" className="hidden dark:block" width="2880" height="1800" data-path="images/tutorials/carriers/07-service-points-dark.png" />
</Frame>

You cannot create the shipment until a service point is selected on a shop product. If search returns nothing, check the receiver address and use **Retry**. More detail: [Droppoint search](/docs/shipments/droppoint-search).

**Pickup** (the carrier collects from you) is a different thing — a **service** on some products, or a later [scheduled pickup](/docs/pickups/scheduling-a-pickup). It is not the Drop Point card.

## Request a missing carrier

If the catalog does not include the carrier you need, open **Carrier Requests** in the sidebar. The page title is **Carrier Integration Requests**. This is a request queue, not a health dashboard.

<Frame caption="Carrier Integration Requests — submit a new integration or review the ones you already sent">
  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/08-carrier-requests-light.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=6fc654565ffacdd0d55ab9c3a8bbc036" alt="Carrier Integration Requests empty state with Request Integration" className="block dark:hidden" width="2880" height="1800" data-path="images/tutorials/carriers/08-carrier-requests-light.png" />

  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/08-carrier-requests-dark.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=9efce9f42965b63dfed30296410132a0" alt="Carrier Integration Requests empty state with Request Integration" className="hidden dark:block" width="2880" height="1800" data-path="images/tutorials/carriers/08-carrier-requests-dark.png" />
</Frame>

<Steps>
  <Step title="Request Integration">
    Click **Request Integration** in the header or the empty state.
  </Step>

  <Step title="Describe the carrier">
    The **Request carrier integration** dialog asks for **Carrier Name**, optional website and docs URLs, **Authentication Type** (API Key, OAuth 2.0, Basic Auth, or Custom), test credentials, and **Notes**.
  </Step>

  <Step title="Submit request">
    Zippendo tracks the request under **Your requests** with **Carrier**, **Status**, **Auth Type**, **Submitted**, and **Last Updated**.
  </Step>
</Steps>

Statuses include **Pending**, **Approved**, **In Progress**, **Awaiting Review**, **Completed**, **Released**, **Rejected**, and **Failed**.

## Delete a carrier

On **Edit your carrier**, click **Delete**. Confirm in the **Delete Carrier** dialog.

<Frame caption="Delete Carrier asks you to type the connection name in uppercase before you can confirm">
  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/09-delete-carrier-light.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=4318af10e13588fc2d2935fb0b7fa9d6" alt="Delete Carrier dialog for GLS Denmark with the name typed in uppercase to confirm" className="block dark:hidden" width="2880" height="1800" data-path="images/tutorials/carriers/09-delete-carrier-light.png" />

  <img src="https://mintcdn.com/zippendo/nCpImT05qv67zgRn/images/tutorials/carriers/09-delete-carrier-dark.png?fit=max&auto=format&n=nCpImT05qv67zgRn&q=85&s=ca38c8e4edcc2b6b4ebf0bf19051797f" alt="Delete Carrier dialog for GLS Denmark with the name typed in uppercase to confirm" className="hidden dark:block" width="2880" height="1800" data-path="images/tutorials/carriers/09-delete-carrier-dark.png" />
</Frame>

The copy is **This will permanently delete carrier "{{name}}". This action cannot be undone.** Type the carrier name in **uppercase** to enable **Delete**. A toast confirms **Carrier deleted successfully**.

Disconnecting is safe if you need to reconnect with corrected credentials. Shipments already booked with that account keep their labels and tracking.

## When a send fails

There is no separate carrier-health screen in the client. If **Send Shipment** fails:

* The shipment shows a **Shipment failed to send** banner on the overview, with the localized error and **Request Logs**.
* Open the shipment’s request logs for the carrier response.
* Re-check **Edit your carrier** — wrong keys, mixed sandbox/live credentials, or an expired password are the usual causes.

See [Carrier authentication failures](/docs/knowledge-base/carrier-authentication-failures) and [Labels not generating](/docs/knowledge-base/labels-not-generating).

## Next steps

<CardGroup cols={2}>
  <Card title="Create a shipment" icon="package" href="/docs/tutorials/create-a-shipment">
    Pick carrier and product, then send.
  </Card>

  <Card title="Labels and printing" icon="printer" href="/docs/tutorials/labels-printing">
    Book the label and print it.
  </Card>

  <Card title="Shipping rules" icon="route" href="/docs/tutorials/shipping-rules">
    Pre-select carrier and product from order data.
  </Card>

  <Card title="Settings, team, and brands" icon="users" href="/docs/tutorials/settings-team-brands">
    Assign a carrier to a brand.
  </Card>
</CardGroup>

Field-level: [Carrier credentials](/docs/how-to/carrier-credentials) · [Sandbox mode](/docs/how-to/sandbox-mode) · [Products and services](/docs/how-to/carrier-products-and-services) · [Request a carrier](/docs/how-to/request-carrier-integration)
