Skip to content
inspiran edited this page Feb 20, 2011 · 7 revisions

Abstract

Pricing is probably one of the most complex aspect of ecommerce business. Although perceived as being simple in reality the final sales order price is influenced by many factors.

Pricing means in our context all price related values (net price, vat price), costs (freight, export, handling fee, administration fee, ...) , discounts required to determine the final sales order price.

Functionality and expected behavior

The goal is not to create a generic system which can cope with all possible pricing scenarios but rather have a framework which can handle different price configurations. Several templates will be provided for common cases.

Configuration should be configurable by the end user rather than being developed. However at this stage in the project, configurations will need to be developed within the framework supplied.

The developer should be free to

  • add new pricing elements (eg. discount value, special customer specific handling fee, ...)
  • manipulate how final prices are calculated
  • configure different pricing configurations for different products if they would need to be handled differently
  • Vary price calculation based on different contexts

Before we dive further into the service we need to understand common use cases.

Price elements

Several price values do exist at the basic product / service level varying from business to business, but following ones are widely used:

Gross / net prices of a product

A product typically has at least one net price for a given quantity. Different net prices are possible depending of the ordered quantity. For instance a T-shirt could have the price of 15 euro but if somebody buys at least hundred the price is lowered to 12 euro each.

Furthermore it happens that a price is defined for a given unit and extrapolated to the ordered quantity. For instance one could define that a specific type of motor oil would cost 50 euro for 2 liter. If the customer requests 5 liter, the net price would be 20 euro ( 50 euro / 5 * 2).

Discounts

Discounts can be applied to individual products or the sales order as a whole. It makes sense to store the calculated value of the applied discount together with the applied discount percentage in the sales order so it can be used later on for reporting purposes.

Contributions / Referral fees

When the sales order was the result of a third party involvement a part of the profit is payed to the third party. The same applies for sales manager which get some part of the pie if they can attract customers into buying goods.

  • Various associated costs (handling fee, packaging cost, shipment cost)

Administration costs to fullfill the good of service.

  • Third party costs

Costs and fees which are determined by a third party

  • ...

VAT

No need to reinvent the wheel, nice information can be found on the Ofbiz project and here for more information about EU regulations.

Influencing price values

A net value for a given product can further be influenced by the context of the sale. What can furthermore influence the price value?

  • Customer group
  • Sales channel
  • Payment type (direct, cash on delivery, deliver now - pay later )
  • Individual customer agreements ( by product, by product category, by product brand, by delivery region, ...)
  • Active promotions
  • Customer location