Available Extensions
This page lists all the extensions that are available for Salesforce Commerce. New extensions are added as they become available.
To create an extension provider, you must know which base Apex class to extend and the extension point name for mapping. Both the the base Apex class name and extension point name are listed for each extension.
This page lists two types of extensions: domain and endpoint.
Domain extensions extend functional domains, such as cart calculation. In contrast, endpoint extensions extend selected Connect API endpoints.
The release status and availability varies from extension to extension. This page is updated to reflect the latest release status of each extension.
The extensions listed in this section are all functionally related, and they all support cart calculations, including cart calculations that occur during checkout. These extensions comprise the Cart Calculate API.
Orchestrates multiple calculators to summarize the total cost in a cart. See Orchestrators and Calculators.
Each calculator is a separate extension that you can customize separately.
- Base Apex class: CartExtension.CartCalculate
- Extension point name: Commerce_Domain_Cart_Calculate
- Namespace:
CartExtension
. See Cart Reference.
CartCalculate currently supports the following set of cart and checkout operations:
- AddItemToCart
- EditCartItem
- DeleteCartItem
- AddCoupon
- DeleteCoupon
- StartCheckout
- PatchCheckout (address, set delivery method)
Calculates inventory for cart and checkout based on the inventory service.
- Base Apex class: CartExtension.InventoryCartCalculator
- Extension point name: Commerce_Domain_Inventory_CartCalculator
- Namespace:
CartExtension
. See Cart Reference.
Reserves and tracks available inventory. By default, this extension uses the Omnichannel Inventory (OCI) system for inventory data.
- Base Apex class: commerce_inventory.CommerceInventoryService
- Extension point name: Commerce_Domain_Inventory_Service
- Namespace:
commerce_inventory
. See Inventory Reference.
Calculates pricing for cart and checkout based on the pricing service.
- Base Apex class: CartExtension.PricingCartCalculator
- Extension point name: Commerce_Domain_Pricing_CartCalculator
- Namespace:
CartExtension
. See Cart Reference.
Tracks how products and services are priced. By default, this extension uses Salesforce price books for pricing data. If your store uses Faster Add-to-Cart, make sure that all products have an entry in a store price book before implementing the pricing service extension.
- Base Apex class: commercestorepricing.PricingService
- Extension point name: Commerce_Domain_Pricing_Service
- Namespace:
commercestorepricing
. See Pricing Reference.
Calculates promotions for cart and checkout. By default, this extension uses the Salesforce promotions service to perform its calculations.
- Base Apex class: CartExtension.PromotionsCartCalculator
- Extension point name: Commerce_Domain_Promotions_CartCalculator
- Namespace:
CartExtension
. See Cart Reference.
Calculates shipping costs. By default, there is no charge for shipping, so you must extend the base Apex class to see any effect.
- Base Apex class: CartExtension.ShippingCartCalculator
- Extension point name: Commerce_Domain_Shipping_CartCalculator
- Namespace:
CartExtension
. See Cart Reference.
Calculates taxes for cart and checkout. By default, this extension uses the Salesforce tax service to perform its calculations.
- Base Apex class: CartExtension.TaxCartCalculator
- Extension point name: Commerce_Domain_Tax_CartCalculator
- Namespace:
CartExtension
. See Cart Reference.
Applies taxes to products in the cart.
- Base Apex class: commercestoretax.TaxService
- Extension point name: Commerce_Domain_Tax_Service
- Namespace:
commercestoretax
. See Tax Reference.
The extension listed in this section is used for checkout but doesn't affect cart calculations, so it isn't part of the Cart Calculate API.
During checkout, this extension creates an order using information from the cart.
- Base Apex class: CartExtension.CheckoutCreateOrder
- Extension point name: Commerce_Domain_Checkout_CreateOrder
- Namespace:
CartExtension
. See Cart Reference.
The extension listed in this section is used for Order Management.
Expands product information by adding return reasons.
- Base Apex class: commerce_ordermanagement.ProductExpandService
- Extension point name: Commerce_Domain_OrderManagement_Product
- Namespace:
commerce_ordermanagement
. See commerce_ordermanagement.
Extends selected Connect API endpoints, allowing you to modify the endpoints request payload before the endpoint is called, or to modify the response after the endpoint is called, or both.
Unlike domain extensions, endpoint extensions extend the same base class.
-
Base Apex class: connectapi.BaseEndpointExtension
-
Extension point name:
Commerce_Endpoint_Account_Addresses
-- extends the Commerce Webstore Account Addresses endpoint -
Extension point name:
Commerce_Endpoint_Account_Address
-- extends the Commerce Webstore Account Address endpoint -
Extension point name:
Commerce_Endpoint_Catalog_Products
-- extends the Commerce Webstore Products endpoint -
Extension point name:
Commerce_Endpoint_Catalog_Product
-- extends the Commerce Webstore Product endpoint -
Extension point name:
Commerce_Endpoint_Search_Products
-- extends the Commerce Webstore Search Products endpoint -
Extension point name:
Commerce_Endpoint_Search_ProductSearch
-- extends the Commerce Webstore Product Search endpoint -
Extension point name:
Commerce_Endpoint_Search_ProductsByCategory
-- extends the Commerce Webstore Product Search by Category endpoint -
Extension point name:
Commerce_Endpoint_Cart_Item
-- extends the Commerce Webstore Cart Item endpoint. Available in version 62.0 and later. -
Extension point name:
Commerce_Endpoint_Cart_ItemCollection
-- extends the Commerce Webstore Cart Items endpoint. Available in version 62.0 and later. -
Namespace:
connectapi
. See connectapi.
See Also