Calculators
Performing calculations with Calculators in Umbraco Commerce.
Calculators are small service implementations with the sole responsibility of calculating prices for a given aspect of an Order. There are five main Calculator service interfaces in Umbraco Commerce:
IShippingCalculator - Responsible for calculating the Shipping Method price/tax rate of a given Shipping Method.
IPaymentCalculator - Responsible for calculating the Payment Method price/tax rate of a given Payment Method.
IProductCalculator - Responsible for calculating the Product unit price/tax rate of a given Product.
IOrderLineCalculator - Responsible for calculating the price/tax rate of a given OrderLine.
IOrderCalculator - Responsible for calculating the entire Order.
All Calculator services can be replaced with alternative implementations should you wish to change how Umbraco Commerce performs its calculations.
Defining a Custom Calculator Implementation
The individual Calculator interfaces may differ but the process for defining a custom Calculator implementation is the same for all of them. It is possible to create a new class that implements the default system Calculator that you wish to replace. You can then override the relevant calculation methods.
Registering a custom Calculator implementation
Last updated
Was this helpful?