---
schema_version: "1"
id: a1e3b7a2a19eda9fcbe9378981fa2c130f22eee3c7b63433811203f7c791df1a
title: New Product Attributes for Price Per Unit Feature
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/commerce/264-0-0/b2c_20_8_w7743292_ppu_attributes_lb.md
canonical_url: https://help.salesforce.com/s/articleView?id=commerce.b2c_20_8_w7743292_ppu_attributes_lb.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 702c9dabb5e9198c3a62bfe10bea0938cccd57d2557014988edea22127eb5f03
description: "You can now display two new product attributes for shoppers on the product display and product list pages: unit quantity and unit of measurement. These attributes let shoppers compare the value between similar products of varying quantities."
products:
  - Commerce
  - B2C Commerce
release: "264"
---
# New Product Attributes for Price Per Unit Feature

You can now display two new product attributes for shoppers on the product display and product list pages: unit quantity and unit of measurement. These attributes let shoppers compare the value between similar products of varying quantities.

How: You can import these two product attributes. The pricing engine then calculates and returns the price per unit (PPU) via the following APIs:

- OCAPI
    - Shop API
        - GET /products
        - GET /product\_search
    - Data API
        - GET /products
        - POST /product\_search
    - Script API
        - dw/catalog/ProductPriceModel
        - dw/catalog/ProductSearchHit

We don’t currently support the ability for the merchant to directly input the PPU from an external source. Although PPU can be shown as a product attribute in search results or on product list page (PLP), sorting and filtering by PPU is not currently supported. This functionality will be available in the Commerce API in a future release. For more information, see [Pricing and Price Books](https://help.salesforce.com/s/articleView?id=cc.b2c_pricing_and_price_books.htm&language=en_US).

Detailed list of APIs updated:

- Shop Resources (OCAPI)
- products\_{} with expand=prices
    - GET /products/{id}
    - New fields: "price\_per\_unit", "price\_per\_unit\_max"
- products\_({}) with expand=prices
    - GET /products/({id})
    - New fields: "price\_per\_unit", "price\_per\_unit\_max"
- product\_{}\_pricesGET /products/{id}/prices
    - New fields: "price\_per\_unit", "price\_per\_unit\_max"
- product\_search with expand=prices
    - GET /product\_search with expand=prices
    - New fields: "price\_per\_unit", "price\_per\_unit\_max"
- product\_search\_prices
    - GET /product\_search/prices
    - New fields: "price\_per\_unit", "price\_per\_unit\_max"
    - Data Resources (OCAPI)
- products\_{} with expand=prices
    - GET /products/{id}
    - New fields: "price\_per\_unit"
- product\_search with expand=prices
    - POST /product\_search
    - New fields: "price\_per\_unit"
- dw/catalog/ProductPriceModel (Script API)
    - getPricePerUnit() : Money
    - getPricePerUnit( quantity:Quantity ) : Money
    - getMinPricePerUnit() : Money
    - getMaxPricePerUnit() : Money
    - getPriceBookPrice(priceBookID : String) : Money (TODO in W-7655829)
    - getPriceBookPrice(priceBookID : String, quantity : Quantity) : Money (TODO in W-7655829)
    - getMinPriceBookPrice(priceBookID : String) : Money (TODO in W-7655829)
    - getMaxPriceBookPrice(priceBookID : String) : Money (TODO in W-7655829)
- dw/catalog/ProductSearchHit (Script API)
    - getMinPricePerUnit() : Money
    - getMaxPricePerUnit() : Money