> For the complete documentation index, see [llms.txt](https://apidocs.akinon.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://apidocs.akinon.com/commerce-openapis/checkout/shipping-and-delivery.md).

# Shipping & Delivery

## Checkout Shipping & Delivery

Configure shipping options and collect delivery preferences from your customers. These endpoints cover shipping method selection, delivery time slot selection, retail store and locker pickup, remote price calculation, delivery bags, and SMS notifications.

### Authentication

These endpoints support both authenticated and anonymous sessions.

* **Authenticated users**: Session cookie (`sessionid`) tracks checkout progress.
* **Anonymous users**: Guest checkout is available when the `CAN_GUEST_PURCHASE` setting is enabled.

### Request Format

Include the following header in all checkout requests:

* **x-requested-with**: `XMLHttpRequest`

### Dynamic Settings

The following settings are managed at runtime through the admin interface and do not require a server restart.

#### CHECKOUT\_SHIPPING\_OPTION\_SELECTION\_PAGE

Determines which shipping option page is active:

* `ShippingOptionSelectionPage` — standard shipping options
* `DataSourceShippingOptionSelectionPage` — options grouped by supplier
* `AttributeBasedShippingOptionSelectionPage` — options grouped by product attribute
* `RemoteShippingOptionSelectionPage` — options fetched from an external service

#### ATTRIBUTE\_KEYS\_FOR\_ATTRIBUTE\_BASED\_SHIPPING\_OPTION

Rules that determine how basket items are grouped by product attribute when the attribute-based shipping page is active. Rules are evaluated in priority order; the first matching rule determines the grouping key.

#### REMOTE\_SHIPPING\_OPTION\_PROVIDER

External service configuration used when `RemoteShippingOptionSelectionPage` is active. Includes the service URL and authentication credentials.

#### REMOTE\_DELIVERY\_OPTION\_PROVIDER

External service configuration for fetching delivery options remotely.

#### CHECKOUT\_RETAIL\_STORE\_FILTERS

Filtering options for the retail store list. When `by_stock` is enabled, only stores with available stock for basket items are shown.

#### DELIVERY\_BAGS\_CONF

Configuration for the delivery bags step. Set `is_active` to `true` to include the delivery bags page. Controls bag SKU, minimum quantity, and whether the customer can specify a custom quantity.

#### REMOTE\_PRICE\_ATTRIBUTE\_KEY

Product attribute key indicating that an item requires remote price calculation.

### Static Settings

The following settings are configured in the server environment and require a restart to take effect.

#### AUTOSELECT\_SHIPPING

When enabled, if only one shipping option is available after filtering, it is selected automatically and the shipping selection page is skipped.

#### CHECKOUT\_LIST\_RETAIL\_STORES

Controls whether retail stores are listed on the store selection page. When disabled, an empty list is returned.

#### ORDER\_BARCODE\_SENT\_SMS\_EXPIRATION\_IN\_SECONDS

Minimum interval in seconds between consecutive SMS sends for the same order. Prevents repeated sends within the cooldown period. Defaults to 1800 seconds (30 minutes).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://apidocs.akinon.com/commerce-openapis/checkout/shipping-and-delivery.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
