# Pricing

Here you can find an overview of the Emporix API Price Service, along with its features and benefits.

{% hint style="info" %}

* Looking for code tutorials? Check out the [Price Service guide](/api-references/api-guides/prices-and-taxes/price-service/price.md).
* Looking for API reference? Check out the [Price Service](/api-references/api-guides/prices-and-taxes/price-service.md) in the Emporix API Reference.
  {% endhint %}

### Purpose

The Emporix API Price Service aims to simplify price management by introducing customizable price models and automated price operations.

### Features

The Emporix API Price Service introduces a set of features that make product pricing easier:

| Feature                             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Automatic calculation of prices** | <p>You can automatically calculate net and gross values for prices.</p><p><span data-gb-custom-inline data-tag="emoji" data-code="2139">ℹ️</span> <mark style="background-color:blue;">See:</mark> <a href="#automated-operations"><mark style="background-color:blue;">Automated operations</mark></a><mark style="background-color:blue;">.</mark></p>                                                                                        |
| **Customizable price models**       | <p>You can define multiple price models and adjust them to your business's pricing strategies. We have included three common examples — basic, tiered, and volume pricing.</p><p><span data-gb-custom-inline data-tag="emoji" data-code="2139">ℹ️</span> <mark style="background-color:blue;">See:</mark> <a href="#price-models"><mark style="background-color:blue;">Price models</mark></a><mark style="background-color:blue;">.</mark></p> |
| **Price matching**                  | <p>You can retrieve the lowest prices for desired products based on specified criteria.</p><p><span data-gb-custom-inline data-tag="emoji" data-code="2139">ℹ️</span> <mark style="background-color:blue;">See:</mark> <a href="#automated-operations"><mark style="background-color:blue;">Automated operations</mark></a><mark style="background-color:blue;">.</mark></p>                                                                    |

### Features and benefits for B2B commerce

The Emporix API Price Service comes with a set of features that specifically address the needs of B2B commerce. These features support complex pricing scenarios that are typically found in a B2B context:

| Feature                       | Benefits                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ----------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Multi-currency support**    | Businesses that sell globally can take advantage of our multi-currency implementation by configuring multiple currencies that their customers can choose from. To make it easier to manage a global business, you can create multiple sites and define a different default currency for each of them or support multiple currencies on a single site.                                                                                                                                                                                                     |
| **Net pricing mode**          | In B2B commerce, businesses often use net pricing. With that in mind, we added a site setting that you can use to define the default pricing mode — net or gross — for particular sites.                                                                                                                                                                                                                                                                                                                                                                  |
| **Tiered and volume pricing** | <p>Our customizable pricing model supports pricing strategies common in B2B commerce, such as tiered and volume pricing. You can experiment with these pricing strategies to find the most profitable way to sell your products.</p><div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><p>See: <a href="#price-models">Price models</a>.</p></div>                                                                                                                                                                        |
| **Price personalization**     | <p>You can set up prices that are exclusive to specific customers to improve your business's relationship with them. We have also introduced a <a href="#automated-operations">price matching</a> functionality that helps you determine the best prices for specific customers based on a number of inputs.</p><div data-gb-custom-block data-tag="hint" data-style="warning" class="hint hint-warning"><p>Currently, the price personalization functionality is limited to specific customers.</p></div>                                                |
| **Price lists**               | <p>Price lists can be used to offer personalized pricing to customers that match specific criteria, or to offer contract-specific pricing. You can configure predefined sets of prices and products for specific regions, countries, and customer groups. The Emporix price lists implementation is well-suited for international businesses as each price list can be expressed in a different currency.</p><div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><p>See: <a href="#price-lists">Price lists</a>.</p></div> |

|

The Emporix API Price Service has been designed to support the potentially high number of prices a B2B commerce company may require without impacting the system performance.

### Overview

In the Emporix e-commerce system, prices are not defined within products, but as separate entities that reference them.

Each price can be described with the following attributes:

| **Mandatory**                | **Optional**    |
| ---------------------------- | --------------- |
| Amount[^1]                   | Customers       |
| Country                      | Date-time range |
| [Currency](#currencies)      | Sale discount   |
| [Price model](#price-models) |                 |
| Product                      |                 |
| Sites                        |                 |
|                              |                 |

You can manage prices through the Emporix API Price Service.

{% hint style="info" %}
Looking for API reference? Check out the [Price Service](/api-references/api-guides/prices-and-taxes/price-service.md) in the Emporix API Reference.
{% endhint %}

### Price models

Based on a number of factors — such as a diverse customer base or a variety of offered products — your business may incorporate multiple pricing models. To support such cases, we have introduced customizable price models with which you can define price structures.

You can create as many price models as you need. Each model can be described with the following attributes:

| Mandatory                 | Optional    |
| ------------------------- | ----------- |
| Measurement unit          | Description |
| Name                      |             |
| Price type — net or gross |             |
| Pricing strategy          |             |
| Pricing tiers             |             |
| Measurement unit          |             |

Each price model can specify one of three pricing strategies:

* **Basic** pricing, where the price per unit is constant, regardless of the ordered quantity.
* **Volume** pricing, where the price per unit depends on the ordered quantity.
* **Tiered** pricing, where the price per unit depends on the tiers that the ordered quantity falls into.

{% hint style="success" %}
Take a look at a comparison of pricing strategies:
{% endhint %}

| Tier                   | Basic pricing                                  | Volume pricing                           | Tiered pricing                                                             |
| ---------------------- | ---------------------------------------------- | ---------------------------------------- | -------------------------------------------------------------------------- |
| 1-10 units             | $1.50                                          | $1.50                                    | $1.50                                                                      |
| 11-20 units            | $1.50                                          | $1.25                                    | $1.25                                                                      |
| 21+ units              | $1.50                                          | $1                                       | $1                                                                         |
| **Total for 25 units** | <p>25 x $1.50<br>= <strong>$37.50</strong></p> | <p>25 x $1<br>= <strong>$25</strong></p> | <p>(10 x $1.50) + (10 x $1.25) + (5 x $1)<br>= <strong>$32.50</strong></p> |

{% hint style="warning" %}
Currently, our price models support basic, volume and tiered pricing.
{% endhint %}

### Price lists

You can create multiple sets of prices for the same products. If all criteria specified for a price list are met, prices from that list take precedence over catalog prices originally defined for products.

Each price list needs to indicate a site that it's applicable to. Additionally, you can narrow down the list's validity with the following factors:

* Customer groups
* Countries
* Date range
* Regions

Prices in lists can also be expressed in a different currency than originally defined for products.

#### Automated operations

To help automate price management, we have introduced the following functionalities:

* Price matching, which you can use to retrieve the lowest prices for desired products.

{% hint style="warning" %}
Currently, the price matching functionality is limited to finding the lowest defined price.
{% endhint %}

* Tax calculation, which you can use to calculate:
  * Net prices to gross prices.
  * Gross prices to net prices.
  * Gross prices in one country to gross prices in another country.

{% hint style="info" %}
For more information on the tax calculation functionality, check out the [Tax classes guide](/ce/core-commerce/taxes-v2.md).
{% endhint %}

Additionally, you can specify whether prices assigned to a particular site should be — by default — presented as gross or net values.

{% hint style="info" %}
For more information on sites and how to configure them, check out the [Sites guide](/ce/core-commerce/sites.md) and the [Site Settings Service](/api-references/api-guides/configuration/site-settings-service.md) in the Emporix API.
{% endhint %}

### Related resources

#### Currencies

Your business may accept more than one currency. To make it easier to manage multiple currencies, we have introduced the Emporix API Currency Service.

{% hint style="info" %}
Looking for API reference? Check out the [Currency Service](/api-references/api-guides/configuration/currency-service.md) in the Emporix API Reference.
{% endhint %}

To minimize data redundancy, each currency needs to be defined in a separate configuration and then referenced in applicable prices.

{% hint style="danger" %}
Currently, the exchange rates are defined statically and are not influenced by actual currency exchange rates. If you want the statically defined exchange rates to reflect the actual rates more closely, you will need to manually update these on a regular basis.

See: [Currency exchange](/api-references/api-guides/configuration/currency-service.md) in the Emporix API Reference.
{% endhint %}

[^1]: If the price model uses tiered or volume pricing, this attribute defines amounts for specific tiers.


---

# Agent Instructions: 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:

```
GET https://developer.emporix.io/ce/core-commerce/pricing-v2.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
