Extensions - Registered External Service Values
- Shane Smyth
- Apr 30, 2024
- 1 min read
Updated: May 12, 2024
In one of the recent releases of Salesforce Commerce Cloud, we were given a brand new feature called 'Extensions'. This feature gives us more control over the integration lifecycle of our commerce storefronts.
If you're looking for a full overview of this capability you'll find the full demystifying video below.
These Extensions are essentially special Apex Classes, these apex classes inform the store how to handle a specific situation (like Taxes or Shipping). These classes are provided specific input variables, and the store expect specific output values.
Once you have a properly formatted extension class you need to register the class to make it available to be attached to your store. This requires you to create a RegisteredExternalService record. These steps are loosley outlined in this section of the offical Salesforce Commerce Cloud Extension guides: https://developer.salesforce.com/docs/commerce/salesforce-commerce/guide/extensions.html#alternate-methods
However, if you plan to create these records manually instead of using the CLI, the exact values aren't listed unless you know to go to the RegisteredExternalService object documentation where it'll show the values needed to create one of these records (https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_registeredexternalservice.htm).
What are the values you need when registering these records?
Extensions RegisteredExternalService Value Tables
If you've watched my video mentioned above, you know there are currently two generally available extensions types - Cart Calculator and Service. The following sections explain the exact values needed!
Cart Calculator
Master Label | Developer Name | External Service Provider Type | Extension Point Name | External Service Provider Id |
Cart Calc Tax | CartCalcTax | Extension | Commerce_Domain_Tax_CartCalculator | Id of the Apex Class |
Cart Calc Shipping | CartCalcShipping | Extension | Commerce_Domain_Shipping_CartCalculator | Id of the Apex Class |
Cart Calc Inventory | CartCalcInventory | Extension | Commerce_Domain_Inventory_CartCalculator | Id of the Apex Class |
Cart Calc Pricing | CartCalcPricing | Extension | Commerce_Domain_Pricing_CartCalculator | Id of the Apex Class |
Services
Master Label | Developer Name | External Service Provider Type | Extension Point Name | External Service Provider Id |
Cart Calc Tax | CartCalcTax | Extension | Commerce_Domain_Tax_Service | Id of the Apex Class |
Cart Calc Inventory | CartCalcInventory | Extension | Commerce_Domain_Inventory_Service | Id of the Apex Class |
Cart Calc Pricing | CartCalcPricing | Extension | Commerce_Domain_Pricing_Service | Id of the Apex Class |