> ## 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.

# Schedule a pickup

> Book a Bring or PostNord pickup from Pickups — carrier, address, date, time window, instructions, and dispatched shipments.

**Pickups** books a carrier collection for **dispatched** shipments. Sidebar **Pickups** (`/dashboard/pickups`). Title **Pickups**. Description **Schedule carrier pickup requests for dispatched shipments**.

This is not a droppoint (the shop the *recipient* visits) and not the **Pickup** party type on a shipment. See [Droppoint vs service point](/docs/how-to/drop-point-and-service-points).

Only **Bring** and **PostNord** connections appear in **Carrier**. GLS Denmark and other catalog carriers are omitted.

<Info>
  Shipments must already be **Dispatched**, match the selected carrier, and not sit on a **Confirmed** pickup. Pending labels cannot be added.
</Info>

## List

Header action **Schedule Pickup**. Container **Scheduled pickups**.

| Column                | What it shows                                                     |
| --------------------- | ----------------------------------------------------------------- |
| **Status**            | **Pending**, **Confirmed**, **Failed**, **Cancelled**             |
| **Brand**             | Only if the org has brands and you are not in a single-brand view |
| **Carrier**           | Connection name (fallback: slug)                                  |
| **Pickup Date**       | Booked date                                                       |
| **Shipments**         | Count of linked shipments                                         |
| **Packages**          | `packageCount`                                                    |
| **Carrier Reference** | Bring / PostNord booking id, or **—**                             |
| **Created**           | Created date                                                      |

Empty: **No pickups scheduled** / **Schedule a carrier pickup to collect dispatched shipments**. Button **Schedule Pickup**.

<Frame caption="Scheduled pickups — status, carrier, date, shipment count, and carrier reference">
  <img src="https://mintcdn.com/zippendo/OJ9RTi9o5Q3_r39V/images/how-to/schedule-a-pickup/01-pickups-list-light.png?fit=max&auto=format&n=OJ9RTi9o5Q3_r39V&q=85&s=992c6ac9918ca7e9b954806e4e3f49f2" alt="Pickups list with a scheduled PostNord pickup row" className="block dark:hidden" width="2880" height="1800" data-path="images/how-to/schedule-a-pickup/01-pickups-list-light.png" />

  <img src="https://mintcdn.com/zippendo/OJ9RTi9o5Q3_r39V/images/how-to/schedule-a-pickup/01-pickups-list-dark.png?fit=max&auto=format&n=OJ9RTi9o5Q3_r39V&q=85&s=70e7c29df88db86386c592b8b328926f" alt="Pickups list with a scheduled PostNord pickup row" className="hidden dark:block" width="2880" height="1800" data-path="images/how-to/schedule-a-pickup/01-pickups-list-dark.png" />
</Frame>

<Frame caption="Pickups filters — Status and Carrier">
  <img src="https://mintcdn.com/zippendo/OJ9RTi9o5Q3_r39V/images/how-to/schedule-a-pickup/05-pickups-filters-light.png?fit=max&auto=format&n=OJ9RTi9o5Q3_r39V&q=85&s=5fb6858222164ae774f51a9bfd0671dd" alt="Pickups filter popover with Status and Carrier" className="block dark:hidden" width="2880" height="1800" data-path="images/how-to/schedule-a-pickup/05-pickups-filters-light.png" />

  <img src="https://mintcdn.com/zippendo/OJ9RTi9o5Q3_r39V/images/how-to/schedule-a-pickup/05-pickups-filters-dark.png?fit=max&auto=format&n=OJ9RTi9o5Q3_r39V&q=85&s=30cded691a37514f2c7eab1d3e10e62c" alt="Pickups filter popover with Status and Carrier" className="hidden dark:block" width="2880" height="1800" data-path="images/how-to/schedule-a-pickup/05-pickups-filters-dark.png" />
</Frame>

### Filters

| Filter        | Options                                                   |
| ------------- | --------------------------------------------------------- |
| **Status**    | **Pending**, **Confirmed**, **Failed**, **Cancelled**     |
| **Carrier**   | Connected carriers                                        |
| Brand / scope | Same brand filters as other lists, only when brands exist |

There is no pickup detail page and no row menu. Rows are not clickable.

## Schedule Pickup

Modal id `create-pickup-modal`. Title **Schedule Pickup**. Subtitle **Request a carrier to collect your dispatched shipments**. **Schedule Pickup** (pending **Scheduling…**) stays disabled until carrier, address, and at least one shipment are set. **Cancel**.

<Frame caption="Schedule Pickup — Carrier, Pickup Address, Pickup Date, and shipment picker">
  <img src="https://mintcdn.com/zippendo/OJ9RTi9o5Q3_r39V/images/how-to/schedule-a-pickup/02-schedule-modal-light.png?fit=max&auto=format&n=OJ9RTi9o5Q3_r39V&q=85&s=ee46ed3b9d2def692bc4044ccb17bb82" alt="Schedule Pickup dialog with carrier, address, date, and shipments section" className="block dark:hidden" width="2880" height="1800" data-path="images/how-to/schedule-a-pickup/02-schedule-modal-light.png" />

  <img src="https://mintcdn.com/zippendo/OJ9RTi9o5Q3_r39V/images/how-to/schedule-a-pickup/02-schedule-modal-dark.png?fit=max&auto=format&n=OJ9RTi9o5Q3_r39V&q=85&s=520c063ea626eccc5e11dcb57fb4fc40" alt="Schedule Pickup dialog with carrier, address, date, and shipments section" className="hidden dark:block" width="2880" height="1800" data-path="images/how-to/schedule-a-pickup/02-schedule-modal-dark.png" />
</Frame>

### Shared fields

| Field                               | Required | Control                                                                                                                                                                                                                                                                                            |
| ----------------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Carrier**                         | Yes      | Bring and PostNord connections only. Placeholder **Select carrier**. Empty catalog: **No pickup-capable carriers configured. Add a Bring or PostNord carrier to schedule pickups.** Validation: **Select a carrier**. Changing carrier clears the shipment selection and carrier-specific options. |
| **Pickup Address**                  | Yes      | Sender addresses as **\{\{name}} — \{\{address1}}, \{\{city}}**. Placeholder **Select pickup address**. Validation: **Select a pickup address**.                                                                                                                                                   |
| **Brand**                           | No       | Only when the org has brands. Label **Brand**. Helper: **Only this brand's shipments can be included in this pickup.** Hidden on orgs without brands.                                                                                                                                              |
| **Pickup Date**                     | Yes      | Date picker. Default: today (`YYYY-MM-DD`). Invalid value: **Invalid date format**.                                                                                                                                                                                                                |
| **Special Instructions (optional)** | No       | Placeholder **e.g. Ring doorbell, gate code 1234**.                                                                                                                                                                                                                                                |

Toasts: **Pickup scheduled successfully** / **Failed to schedule pickup**.

### PostNord

Selecting a PostNord connection shows a notice and two extra datetimes:

| Field                    | Copy                                                                                                                                                  |
| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| Notice                   | **PostNord pickup only supports international Collection Requests (sender country differs from pickup country). Domestic pickups are not supported.** |
| **Earliest Pickup Time** | `datetime-local`                                                                                                                                      |
| **Latest Pickup Time**   | `datetime-local`                                                                                                                                      |

Both times are optional. Domestic DK→DK collections are rejected by PostNord even if the form submits.

<Frame caption="PostNord selected — international Collection Request notice plus earliest and latest pickup times">
  <img src="https://mintcdn.com/zippendo/OJ9RTi9o5Q3_r39V/images/how-to/schedule-a-pickup/03-postnord-fields-light.png?fit=max&auto=format&n=OJ9RTi9o5Q3_r39V&q=85&s=c6512e8b94f066ddd66bc3e9d595c671" alt="Schedule Pickup with PostNord notice and Earliest Pickup Time and Latest Pickup Time fields" className="block dark:hidden" width="2880" height="1800" data-path="images/how-to/schedule-a-pickup/03-postnord-fields-light.png" />

  <img src="https://mintcdn.com/zippendo/OJ9RTi9o5Q3_r39V/images/how-to/schedule-a-pickup/03-postnord-fields-dark.png?fit=max&auto=format&n=OJ9RTi9o5Q3_r39V&q=85&s=4797fd94080dba54dfbf495a32868911" alt="Schedule Pickup with PostNord notice and Earliest Pickup Time and Latest Pickup Time fields" className="hidden dark:block" width="2880" height="1800" data-path="images/how-to/schedule-a-pickup/03-postnord-fields-dark.png" />
</Frame>

### Bring

Selecting Bring shows **Service Type**. Placeholder **Select service type**. Options **Parcel** (`PARCEL`) and **Cargo** (`CARGO`). Optional.

### Shipments

Heading **Shipments**. Helper **Choose the dispatched shipments that should be included in this pickup.**

| State                     | Copy                                                                                                                                 |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| No carrier yet            | **Select a carrier first to load matching shipments.**                                                                               |
| Loading                   | **Loading shipments…**                                                                                                               |
| None eligible             | **No dispatched shipments available for this carrier. Shipments must be dispatched and not already assigned to a confirmed pickup.** |
| Submit with none selected | **Select at least one shipment**                                                                                                     |

Each row shows the shipment **reference** and **\{\{city}}, \{\{countryCode}}** (or **No address**). Search placeholder **Search by reference or address**. No matches: **No shipments match your search.**

Selection line: **\{\{selected}} of \{\{count}} shipment selected** / **shipments selected**. **Clear** appears when any are selected. Chips show up to three references, then **+\{\{count}} more**.

Presets (by shipment `updatedAt`):

| Button            | Window                   |
| ----------------- | ------------------------ |
| **Last 12 hours** | Last 12 hours            |
| **Last 24 hours** | Last 24 hours            |
| **Today**         | Since start of local day |
| **Last 48 hours** | Last 48 hours            |

<Frame caption="Shipment picker with presets, search, and dispatched PostNord rows">
  <img src="https://mintcdn.com/zippendo/OJ9RTi9o5Q3_r39V/images/how-to/schedule-a-pickup/04-shipment-selection-light.png?fit=max&auto=format&n=OJ9RTi9o5Q3_r39V&q=85&s=e261220aaba1c577cea521bf8ac7b8d4" alt="Schedule Pickup shipments list with Last 12 hours presets and dispatched shipment rows" className="block dark:hidden" width="2880" height="1800" data-path="images/how-to/schedule-a-pickup/04-shipment-selection-light.png" />

  <img src="https://mintcdn.com/zippendo/OJ9RTi9o5Q3_r39V/images/how-to/schedule-a-pickup/04-shipment-selection-dark.png?fit=max&auto=format&n=OJ9RTi9o5Q3_r39V&q=85&s=a31e379a0e14411e6fc7766574501daa" alt="Schedule Pickup shipments list with Last 12 hours presets and dispatched shipment rows" className="hidden dark:block" width="2880" height="1800" data-path="images/how-to/schedule-a-pickup/04-shipment-selection-dark.png" />
</Frame>

## Pickup Details on Create Shipment

**Pickup Details** on `/dashboard/shipments/create` only renders when a product service id is literally `pickup`. GLS Denmark and PostNord catalogs in the live client do not expose that id (Bring’s extra service is named **Pickup** but uses service id `1073`), so the card does not appear for those products.

If it did appear, the fields would be **Pickup Location** (**Same as Address**), **Pickup Date \***, **Time Window \*** (**Morning (08:00 - 12:00)**, **Afternoon (12:00 - 17:00)**, **Evening (17:00 - 20:00)**, **All Day (08:00 - 20:00)**, **Custom** with **From** / **To**), and **Special Instructions (optional)**. Use **Pickups** for Bring/PostNord collection after dispatch instead.

## Related

* [Send a shipment](/docs/how-to/send-a-shipment) — dispatch first
* [Carrier products and services](/docs/how-to/carrier-products-and-services)
* [Sender addresses](/docs/how-to/sender-addresses)
* [Droppoint vs service point](/docs/how-to/drop-point-and-service-points)
* [Create a shipment](/docs/tutorials/create-a-shipment)
