> For the complete documentation index, see [llms.txt](https://docs.premsoft.de/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.premsoft.de/en/plugins/product-configurator/storefront/pricing-and-cart.md).

# Pricing and cart

The configurator is **price-effective**: what the customer selects affects the price immediately — and this price travels correctly into the cart and the order.

## Live price on the product page

While the customer configures, the shop recalculates the price in the background and updates the display — without reloading the page. The basis is:

* **Without a price formula:** product price **+ the sum of all selected option surcharges**.
* **With a price formula:** the result of the [formula](/en/plugins/product-configurator/admin-dashboard/formula.md) is the new unit price.

This way the customer always sees what their selection costs.

## Transfer into the cart

When the customer adds the configured product to the cart, the following happens:

* The **calculated price** is applied and re-checked on every cart update.
* The **entered values** are stored on the cart line item and — depending on the [plugin configuration](/en/plugins/product-configurator/configuration.md) — shown as a detail list.
* Optionally calculated **dimensions, weight** and a **product number** are carried along.
* Different configurations of the same product remain **separate line items**; identical configurations are merged.

{% hint style="info" %}
Which fields appear in the cart is controlled globally via *Configurator details in checkout* and per field via *Show in checkout*.
{% endhint %}

## Required fields & validation

Before adding to the cart, the shop checks the input:

* **Required fields** must be filled in.
* **E-mail** and **phone** fields are checked for a valid format.
* **Number** and **date** fields respect minimum/maximum.
* **Choice fields** only accept valid options.

Fields hidden by a [condition](/en/plugins/product-configurator/admin-dashboard/conditional-logic.md) are not enforced.

## Calculated dimensions, weight and product number

In the configurator's *Calculation* tab you can additionally enable that the configuration calculates **width**, **height**, **length**, **weight** and a **product number**. This is useful for:

* **Shipping costs** that depend on weight or dimensions,
* **production/picking** that needs a meaningful product number.

The calculation is done via [formulas](/en/plugins/product-configurator/admin-dashboard/formula.md) and the carried values end up in the order.

## Hidden, price-effective fields

A field does not have to be visible to affect the price. Via the field status or *Show in configurator* you can hide fields whose value still flows into the calculation — e.g. for internal surcharges.

{% hint style="info" %}
The entire pricing logic is also available through the [Store API](/en/plugins/product-configurator/store-api.md) — ideal for headless frontends that drive price, validation and cart themselves.
{% endhint %}


---

# 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://docs.premsoft.de/en/plugins/product-configurator/storefront/pricing-and-cart.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.
