Changelog
Learn more about any recent changes in the Emporix API.
Order service - calculated prices
Overview
The Order Service has transitioned to using new calculated price attributes at both order and entry levels. The following changes have been implemented:
- New mandatory attributes:
calculatedPrice
(order level),calculatedPrice
andcalculatedUnitPrice
(entry level). - Previously used price attributes (
totalPrice
,unitPrice
) are now marked as deprecated and optional. - Backward compatibility is maintained - the API will continue to work if deprecated price attributes are provided without the new calculated price attributes.
These changes streamline price handling while ensuring existing integrations continue to function without disruption.
Updated endpoints
Endpoint | Description |
---|---|
Creating a new order (tenant-managed) | Order level calculatedPrice marked as mandatory and totalPrice marked as optional. |
Creating a new order (tenant-managed) | Order entry level calculatedPrice marked as mandatory and totalPrice marked as optional. |
Creating a new order (tenant-managed) | Order entry level calculatedUnitPrice marked as mandatory and unitPrice marked as optional. |
Creating a new order (customer-managed) | Order level calculatedPrice marked as mandatory and totalPrice marked as optional. |
Creating a new order (customer-managed) | Order entry level calculatedPrice marked as mandatory and totalPrice marked as optional. |
Creating a new order (customer-managed) | Order entry level calculatedUnitPrice marked as mandatory and unitPrice marked as optional. |
Known problems
There are no known problems.
Order service - Legal Entity information in the order model
Overview
A new optionallegalEntityId
field has been added to the endpoint.
This field is intended exclusively for B2B cases and specifies the legal entity for which the order was created.Updated endpoints
Endpoint | Description |
---|---|
Creating a new order | New request attribute legalEntityId added. |
Updating an order | New request attribute legalEntityId added. |
Partially updating an order | New request attribute legalEntityId added. |
Retrieving orders | New response attribute legalEntityId added. |
Retrieving a specific order by ID | New response attribute legalEntityId added. |
Known problems
There are no known problems.
Weight dependent products
Overview
A new boolean attributeweightDependent
has been added to the product model. It allows to mark the product as weight-dependent if the line item price can change after packaging. This is necessary to ensure that credit card payments can be authorized.
Having the attribute available directly on the product level, the corresponding attribute weightDependent
in Adding a product to cart
API has been deprecated. The cart services checks the value specified on a product model and sets the weightDependent
value on the cart item.Updated endpoints
Endpoint | Description |
---|---|
Adding a product to cart | Deprecated request attribute weightDependent . |
Adding multiple products to cart | Deprecated request attribute weightDependent . |
Creating a new product | New request attribute weightDependent added. |
Creating multiple products | New request attribute weightDependent added. |
Upserting a product | New request attribute weightDependent added. |
Upserting multiple products | New request attribute weightDependent added. |
Partially updating a product | New request attribute weightDependent added. |
Retrieving a product | New response attribute weightDependent added. |
Retrieving all of products | New response attribute weightDependent added. |
Known problems
There are no known problems.
Important Security Update – Discontinuation of Weak Cipher Support
Overview
We are committed to ensuring the highest level of security for our API services. As part of this commitment, we are discontinuing support for weak cryptographic ciphers (api.emporix.io).
This update is essential to maintain the security and integrity of the data exchanged between your systems and our API.
Effective 24th of March, we will no longer support the following cipher suites:- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
These cipher suites rely on older encryption methods that are vulnerable to modern security threats. To ensure the highest level of security and compatibility, we will continue supporting strong ciphers, including TLS 1.2 and TLS 1.3 protocols.
What do you need to do:
Ensure that your systems and applications are configured to use the following ciphers:
- TLSv1.2:
ciphers:
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (ecdh_x25519)
TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (ecdh_x25519)
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (ecdh_x25519) - TLSv1.3:
ciphers:
TLS_AKE_WITH_AES_128_GCM_SHA256 (ecdh_x25519)
TLS_AKE_WITH_AES_256_GCM_SHA384 (ecdh_x25519)
TLS_AKE_WITH_CHACHA20_POLY1305_SHA256 (ecdh_x25519)
Media Service - support for brands
Overview
Request body for creating or updating assets has been extended with new reference type -BRAND
- which should be used to assign media to the brands.Updated endpoints
Endpoint | Description |
---|---|
Creating a media | Request body's refIds.type field has a new enum value - BRAND . |
Updating a media | Request body's refIds.type field has a new enum value - BRAND . |
Known problems
There are no known problems.
Brand Service - deprecations
Overview
All deprecations will be removed on 2025-09-01. From now on, use the media-service endpoints to manage media for brands.
Deprecated endpoints
Endpoint | Description |
---|---|
Creating a media | Endpoint will be removed. |
Deleting a media | Endpoint will be removed. |
Creating a brand | The image and cloudinaryUrl fields will be removed from request body. |
Updating a brand | The image and cloudinaryUrl fields will be removed from request body. |
Partially updating a brand | The image and cloudinaryUrl fields will be removed from request body. |
Known problems
There are no known problems.
Shopping List Service - metadata
field changes
Overview
Themetadata
field at root level is now deprecated in GET responses, as each shopping list now maintains its own independent metadata
field. This field will be fully removed on September 1st, 2025. Additionally we have added version validation for update operation where you can provide version
in the update payload to validate it against the current entity version, preventing unintentional overriding when multiple updates occur simultaneously.Updated endpoints
Endpoint | Description |
---|---|
Retrieving a shopping list | Deprecated metadata field on root level and added metadata field to each shopping list. |
Retrieving a customer shopping list | Deprecated metadata field on root level and added metadata field to each shopping list. |
Updating a customer shopping list | Added metadata.version to request payload which allows for version validation |
Known problems
There are no known problems.
OAuth service - Legal Entity information in the auth token
Overview
An optionallegalEntityId
query parameter has been introduced to the endpoint.
This is the recommended way to store information about the selected legal entity in the system.
Upon logging in, users should select a legal entity they want to act on behalf of. It invokes the refresh token endpoint with the chosen entity.
If the value is provided in the request, the validation process ensures that the customer is assigned to the specified legal entity.Updated endpoints
Endpoint | Description |
---|---|
Refreshing a token | The endpoint extended with an optional legalEntityId query param. |
Known problems
There are no known problems.
Media Service - support for labels
Overview
Request body for creating or updating assets has been extended with new reference type -LABEL
- which should be used to assign media to the labels.Updated endpoints
Endpoint | Description |
---|---|
Creating a media | Request body's refIds.type field has a new enum value - LABEL . |
Updating a media | Request body's refIds.type field has a new enum value - LABEL . |
Known problems
There are no known problems.
Label Service - deprecations
Overview
All deprecations will be removed on 2025-09-01. From now on, use the media-service endpoints to manage media for labels.
Deprecated endpoints
Endpoint | Description |
---|---|
Creating a media | Endpoint will be removed. |
Deleting a media | Endpoint will be removed. |
Creating a label | The image and cloudinaryUrl fields will be removed from request body. |
Updating a label | The image and cloudinaryUrl fields will be removed from request body. |
Partially updating a label | The image and cloudinaryUrl fields will be removed from request body. |
Known problems
There are no known problems.
Customer Segments Service - expanded response for retrieving category trees for a customer segments endpoint
Overview
From now on, the response of the "Retrieving category trees for a customer segments" endpoint includes new fields:localizedDescription
, localizedSlug
, ecn
, validity
, position
, and published
, which allows fetching complete category tree information in a single request.Updated endpoints
Endpoint | Description |
---|---|
Retrieving category trees for a customer segments | Added localizedDescription , localizedSlug , ecn , validity , position , and published fields to the responses. |
Known problems
There are no known problems.
Cart Service - deprecated fields
Overview
Several fields in cart's response have been deprecated and are now replaced bycalculatedPrice
and unitPrice
fields. The new fields provide a more comprehensive and consistent way to access price calculations.Deprecated cart-level fields:
totalPrice
- usecalculatedPrice.finalPrice
insteadsubTotalPrice
- usecalculatedPrice.price
orcalculatedPrice.discountedPrice
insteadtaxAggregate
- usecalculatedPrice.finalPrice.taxAggregate
insteadsubtotalAggregate
- usecalculatedPrice.price
insteadtotalDiscount
- usecalculatedPrice.totalDiscount
insteadfeeYrnAggregate
- usecalculatedPrice.totalFees
anditems[].calculatedPrice.fees
insteadshipping
- usecalculatedPrice.totalShipping
insteaditemFeesTotal
- usecalculatedPrice.totalFee
insteadpaymentFeesTotal
- usecalculatedPrice.paymentFees
insteadtotalAuthorizedAmount
- usecalculatedPrice.upliftValue
instead
Deprecated cart item-level fields:
price
- useunitPrice
insteaditemPrice
- useunitPrice
insteaditemTaxInfo
- usecalculatedPrice.price
insteadfees
- usecalculatedPrice.fees
insteadauthorizedAmount
- usecalculatedPrice.upliftValue
insteadtotalDiscount
- usecalculatedPrice.totalDiscount
insteadexternalFees
- usecalculatedPrice.fees
insteadcouponDiscounts
- usecalculatedPrice.totalDiscounts.appliedDiscounts
instead
Updated endpoints
Endpoint | Description |
---|---|
Retrieving cart details by ID | Deprecated response fields are replaced by calculatedPrice and unitPrice . |
Retrieving cart details by criteria | Deprecated response fields are replaced by calculatedPrice and unitPrice . |
Retrieving all products added to a cart | Deprecated response fields are replaced by calculatedPrice and unitPrice . |
Known problems
There are no known problems.
Cart Service - deprecated field
Overview
When applying discount on a cart, the request allows to specifycalculationType
with following values: ApplyDiscountBeforeTax
, ApplyDiscountAfterTax
The field has been deprecated, cart's calculatedPrice relays on site's configuration includesTax
which defines whether the discount should be applied on net or gross prices.Updated endpoints
Endpoint | Description |
---|---|
Applying a discount to cart | Deprecated request attribute calculationType |
Known problems
There are no known problems.
Fee management - new validation added
Overview
A validation rule ensures fee data consistency by requiring ataxCode
when creating or updating fees with taxable=true
. This enforces the logical dependency between taxation status and tax code identification.Updated endpoints
Endpoint | Description |
---|---|
Creating fee | Added validation of taxCode fee is marked with taxable=true |
Retrieving fee by id | Added validation of taxCode fee is marked with taxable=true |
Known problems
There are no known problems.
Site Settings - new field
Overview
A newcartCalculationScale
field has been added to the site setting. The field allows to control the number of decimal points in cart's calculatedPrice attributes.Updated endpoints
Endpoint | Description |
---|---|
Creating a site | Added cartCalculationScale field to the request. |
Fully updating a site | Added cartCalculationScale field to the request. |
Partially updating a site | Added cartCalculationScale field to the request. |
Retrieving a site | Added cartCalculationScale field to the responses. |
Known problems
There are no known problems.
Customer Service - new field
Overview
A newlastLogin
field has been added to the customer response, returning a date-time string. If the value is null, it indicates that the customer has not logged in since the field was introduced (14-02-2025).Updated endpoints
Endpoint | Description |
---|---|
Retrieving a customer's profile | Added lastLogin field to the responses. |
Retrieving a customer profile | Added lastLogin field to the responses. |
Retrieving a list of customers | Added lastLogin field to the responses. |
Known problems
There are no known problems.
Cart Service - enhanced price calculation details
Overview
The Cart Service now provides detailed price calculation information through thecalculatedPrice
field. This enhancement gives a comprehensive breakdown of prices including net values, gross values, tax details, fees, and discounts for both the entire cart and individual line items.Updated endpoints
Endpoint | Description |
---|---|
Retrieving cart details by criteria | Added calculatedPrice field to cart and cart items responses. |
Retrieving cart details by ID | Added calculatedPrice field to cart and cart items responses. |
Retrieving all products added to a cart | Added calculatedPrice field to cart items responses. |
Known problems
There are no known problems.
Order Service - enhanced price calculation details
Overview
The Order Service now provides detailed price calculation information through thecalculatedPrice
field. This enhancement gives a comprehensive breakdown of prices including net values, gross values, tax details, fees, and discounts for both the entire order and individual line items.Updated endpoints
Endpoint | Description |
---|---|
Creating a new order as employee | Added calculatedPrice field to order and order entries. |
Creating a new order as customer | Added calculatedPrice field to order and order entries. |
Retrieving order details | Added calculatedPrice field to order and order entries responses. |
Retrieving a specific order by ID | Added calculatedPrice field to order and order entries responses. |
Known problems
There are no known problems.
Order Service - new priceListId
field
Overview
ThepriceListId
field has been added to the create order endpoint.Updated endpoints
Endpoint | Description |
---|---|
Creating a new order | Added a new priceListId field to the request body. |
Known problems
There are no known problems.
Cart Service - new priceListId
field added.
Overview
ThepriceListId
field has been added to the get a cart endpoint. The field is populated only in the case when a returned price belongs to any price list. Otherwise the field is not returned.Updated endpoints
Endpoint | Description |
---|---|
Retrieving cart details by ID | Added a new priceListId (items.price.priceListId) field to the response. |
Known problems
There are no known problems.
Price Match - new priceListId
field added.
Overview
ThepriceListId
field has been added to the price match endpoints. The field is populated only in the case when a returned prices belongs to any price list. Otherwise the field is not returned.Updated endpoints
Endpoint | Description |
---|---|
Matching price for a specific attributes | Added a new priceListId field to the response. |
Matching price for session context | Added a new priceListId field to the response. |
Known problems
There are no known problems.
Algolia - added information about segments
Overview
The indexed products have a new field -segment_ids
- which informs to which segments the given product is assigned.Known problems
There are no known problems.
Availability Service - availability endpoints replacement
Overview
The availability endpoints that acceptsite
as a query parameter, are now deprecated. They have been replaced with new endpoints that use site
as a path parameter.New endpoints
Endpoint | Description |
---|---|
Retrieving a products availability | New endpoint that takes site as a path parameter is now available. |
Creating a new availability for a product | New endpoint that takes site as a path parameter is now available. |
Upserting availability information of a product | New endpoint that takes site as a path parameter is now available. |
Deleting availability information of a product | New endpoint that takes site as a path parameter is now available. |
Retrieving all availability information for a site | New endpoint that takes site as a path parameter is now available. |
Retrieving product availabilities for a site | New endpoint that takes site as an optional query parameter is now available. |
Deprecated endpoints
Endpoint | Description |
---|---|
Retrieving a products availability | Endpoint that takes site as a query parameter is now deprecated. |
Creating a new availability for a product | Endpoint that takes site as a query parameter is now deprecated. |
Upserting availability information of a product | Endpoint that takes site as a query parameter is now deprecated. |
Deleting availability information of a product | Endpoint that takes site as a query parameter is now deprecated. |
Retrieving all availability information for a site | Endpoint that takes site as a query parameter is now deprecated. |
Retrieving product availabilities for a site | Endpoint that takes site as a mandatory query parameter is now deprecated. |
Known problems
There are no known problems.
Order Service - deprecated fields
Overview
Several fields in order's response have been deprecated in favor of newcalculatedPrice
and unitPrice
fields. The new fields provide a more comprehensive and consistent way to access price calculations.Deprecated order-level fields:
totalPrice
- usecalculatedPrice.finalPrice
insteadsubTotalPrice
- usecalculatedPrice.price
orcalculatedPrice.discountedPrice
insteadtaxAggregate
- usecalculatedPrice.finalPrice.taxAggregate
insteadsubtotalAggregate
- usecalculatedPrice.price
insteadtotalDiscount
- usecalculatedPrice.totalDiscount
insteadfeeYrnAggregate
- usecalculatedPrice.totalFees
anditems[].calculatedPrice.fees
insteadshipping
- usecalculatedPrice.totalShipping
insteaditemFeesTotal
- usecalculatedPrice.totalFee
insteadpaymentFeesTotal
- usecalculatedPrice.paymentFees
insteadtotalAuthorizedAmount
- usecalculatedPrice.upliftValue
instead
Deprecated order item-level fields:
price
- useunitPrice
insteaditemPrice
- useunitPrice
insteaditemTaxInfo
- usecalculatedPrice.price
insteadfees
- usecalculatedPrice.fees
insteadauthorizedAmount
- usecalculatedPrice.upliftValue
insteadtotalDiscount
- usecalculatedPrice.totalDiscount
insteadexternalFees
- usecalculatedPrice.fees
insteadcouponDiscounts
- usecalculatedPrice.totalDiscounts.appliedDiscounts
instead
Updated endpoints
Endpoint | Description |
---|---|
Creating a new order as employee | Deprecated response fields in favor of calculatedPrice and unitPrice |
Creating a new order as customer | Deprecated response fields in favor of calculatedPrice and unitPrice |
Retrieving order details | Deprecated response fields in favor of calculatedPrice and unitPrice |
Retrieving a specific order by ID | Deprecated response fields in favor of calculatedPrice and unitPrice |
Known problems
There are no known problems.