{"id":145,"date":"2018-06-18T15:36:37","date_gmt":"2018-06-18T14:36:37","guid":{"rendered":"http:\/\/mayeur.com\/wordpressfr\/?p=145"},"modified":"2018-06-18T15:36:37","modified_gmt":"2018-06-18T14:36:37","slug":"dynamics-365-product-prices","status":"publish","type":"post","link":"https:\/\/mayeur.com\/wordpressfr\/dynamics-365-product-prices\/","title":{"rendered":"Dynamics 365 : Product Prices"},"content":{"rendered":"<p>Determining the price calculation rules of a product in an opportunity or transactional entity (quote, order or invoice) may be quite complex, due to the multiple combinations available. This complexity gives the freedom to comply to various business needs.<\/p>\n<p>I created the following schema to summurize these options, and will explain them in more details. Most of the options relate to the \u00ab\u00a0Product Line\u00a0\u00bb, some are global to the whole entity.<\/p>\n<p><a href=\"http:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing_schema.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-148\" src=\"http:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing_schema.jpg\" alt=\"\" width=\"994\" height=\"521\"><\/a><\/p>\n<h1>Use system pricing calculation<\/h1>\n<p>First of all, we need to check if system pricing calculation rules are applied (which is the cas by default), in system settings (in the Sales tab) :<\/p>\n<p><a href=\"http:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-146\" src=\"http:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing1.png\" alt=\"\" width=\"964\" height=\"84\" srcset=\"https:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing1.png 964w, https:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing1-300x26.png 300w, https:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing1-768x67.png 768w, https:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing1-500x44.png 500w\" sizes=\"auto, (max-width: 964px) 100vw, 964px\" \/><\/a><\/p>\n<p>If it is not the case, a plug-in should be created and registered (will be explained in a future post).<\/p>\n<h1>Find \u00ab\u00a0Price List\u00a0\u00bb<\/h1>\n<p>Assuming we use System pricing calculation, you need to choose an applicable Price List for your whole entity. Take care that a given Price List relates to unique currency : it must be the same than that of your entity. Moreover, you will need to have \u00ab\u00a0Price List Item\u00a0\u00bb for any product added in the lines.<br \/>\nDefault value : if there exists a \u00ab\u00a0Sales Territory\u00a0\u00bb assigned to you, and that Sales Territory is attached to one (and only one) Price List, that Price List will be selected by default, unless you turn that functionnality off in system settings :<\/p>\n<p><a href=\"http:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-147\" src=\"http:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing2.png\" alt=\"\" width=\"962\" height=\"78\" srcset=\"https:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing2.png 962w, https:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing2-300x24.png 300w, https:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing2-768x62.png 768w, https:\/\/mayeur.com\/wordpressfr\/wp-content\/uploads\/2018\/06\/product_pricing2-500x41.png 500w\" sizes=\"auto, (max-width: 962px) 100vw, 962px\" \/><\/a><\/p>\n<h1>Find \u00ab\u00a0Price List Item\u00a0\u00bb and associated \u00ab\u00a0Pricing Method\u00a0\u00bb<\/h1>\n<p>Once you have choosen a \u00ab\u00a0Price List\u00a0\u00bb, you need to add products to your transaction entity. The price that will be applied is retrieved from the \u00ab\u00a0Price List\u00a0\u00bb, if a releavant \u00ab\u00a0Price List Item\u00a0\u00bb exists : the same Product with the same Unit as selected in the transactional entity.<br \/>\nThe Price List Item defines the \u00ab\u00a0Pricing Method\u00a0\u00bb :<\/p>\n<ul>\n<li>Currency Amount : a fixed amount<br \/>\nPercent of List : the \u00ab\u00a0List Price\u00a0\u00bb is defined on the Product : Percentage * List Price<\/li>\n<li>Percent markup &#8211; current cost : the \u00ab\u00a0Current Cost\u00a0\u00bb is defined on the Product. Percent Markup is Current Cost * ( 100 + Percentage) \/ 100<\/li>\n<li>Percent margin &#8211; current cost : the \u00ab\u00a0Current Cost\u00a0\u00bb is defined on the Product. Percent Margin is Current Cost + (Current Cost * Percentage) \/ (100 &#8211; Percentage))<\/li>\n<li>Percent markup &#8211; standard cost : the \u00ab\u00a0Standard Cost\u00a0\u00bb is defined on the Product. Percent Markup is Standard Cost * ( 100 + Percentage) \/ 100<\/li>\n<li>Percent margin &#8211; standard cost : the \u00ab\u00a0Standard Cost\u00a0\u00bb is defined on the Product. Percent Margin is Standard Cost + (Standard Cost * Percentage) \/ (100 &#8211; Percentage))<\/li>\n<\/ul>\n<p>Attention : by default, the fields \u00ab\u00a0List Price\u00a0\u00bb, \u00ab\u00a0Standard Cost\u00a0\u00bb and \u00ab\u00a0Current Cost\u00a0\u00bb may not be displayed on the Product form. It is easy to customize and add these.<br \/>\nWhat are the meaning of these fields? You can assign the meaning you want, but usually :<\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li>List Price : the official sales Price from an internal \u00ab\u00a0Sales List\u00a0\u00bb<\/li>\n<li>Current Cost : the current (temporary) price of a Product &#8211; maybe the Price payed to a provider<\/li>\n<li>Standard Cost : the typical price of a Product<\/li>\n<li>\u00ab\u00a0Percent Margin\u00a0\u00bb is greater than \u00ab\u00a0Percent Markup\u00a0\u00bb.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Percent Margin means : the Percentage of the calculated price that I want as a margin<br \/>\nPercent Markup means : the Percentage of the initial Price that I want to add.<br \/>\nThere are some more options in the \u00ab\u00a0Price List Item\u00a0\u00bb that will fine-tune the calculated price of a Product from a Price List :<\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li>Rounding Policy : None, Up, Down, Nearest<\/li>\n<li>Rounding Option (unavailable for the \u00ab\u00a0None\u00a0\u00bb Rounding Policy) :<\/li>\n<li style=\"list-style-type: none;\">\n<ul>\n<li>\u00ab\u00a0Ends In\u00a0\u00bb : forces the Price to end with for example with \u00ab\u00a0.99\u00a0\u00bb, so that a calculated price of 50.14 may be automatically rounded to 49.99<\/li>\n<li>\u00ab\u00a0Multiple of\u00a0\u00bb : forces to Price to be a multiple of a certain amount &#8211; for example, a calculated price of 50.14 may be automatically rounded to 50.10 if the \u00ab\u00a0Rounding Amount\u00a0\u00bb is \u00ab\u00a00.10\u00a0\u00bb<\/li>\n<\/ul>\n<\/li>\n<li>Rounding Amount : the amount used by \u00ab\u00a0Rounding Option\u00a0\u00bb<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>For example, with a cost of 50 and a Percentage of 10 :<\/p>\n<ul>\n<li>The Percent Margin is 50 + (50 * 10) \/ (100 &#8211; 10) = 55,56 =&gt; my Margin is 5,56 which is 10% of 55,56<\/li>\n<li>The Percent Markup is 50 * (100 + 10) \/ 100 = 55,0 =&gt; my Markup is 5 which is 10% of 50<\/li>\n<\/ul>\n<h1>Apply Discount List<\/h1>\n<p>Configuration : You can create \u00ab\u00a0Discount Lists\u00a0\u00bb. A Discount List is basicaly an entity specifying the discounts applied depending in quantity (whether an amount, or a percentage) on any product. Then, you attach this Discount List to a \u00ab\u00a0Price List Item\u00a0\u00bb in your Product Catalog configuration.<br \/>\nThe discount will be automatically applied on the line.<\/p>\n<h1>Apply Manual Discount<\/h1>\n<p>You can manually add a absolute discount on the Product Line Item.<\/p>\n<p>Apply footer costs<br \/>\nAt the footer of your transactional entity, you may manually add some adjustments :<\/p>\n<ul>\n<li>A discount as a percentage<\/li>\n<li>A discount as an absolute amount<\/li>\n<li>A freight Amount that will be added to the total price<\/li>\n<\/ul>\n<p>Any feedback and sharing is welcome. Have fun!<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Determining the price calculation rules of a product in an opportunity or transactional entity (quote, order or invoice) may be quite complex, due to the multiple combinations available. This complexity gives the freedom to comply to various business needs. I created the following schema to summurize these options, and will explain them in more details. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":155,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[12],"tags":[14,13],"class_list":["post-145","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dynamics365","tag-crm","tag-dynamics365"],"_links":{"self":[{"href":"https:\/\/mayeur.com\/wordpressfr\/wp-json\/wp\/v2\/posts\/145","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mayeur.com\/wordpressfr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mayeur.com\/wordpressfr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mayeur.com\/wordpressfr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mayeur.com\/wordpressfr\/wp-json\/wp\/v2\/comments?post=145"}],"version-history":[{"count":8,"href":"https:\/\/mayeur.com\/wordpressfr\/wp-json\/wp\/v2\/posts\/145\/revisions"}],"predecessor-version":[{"id":157,"href":"https:\/\/mayeur.com\/wordpressfr\/wp-json\/wp\/v2\/posts\/145\/revisions\/157"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mayeur.com\/wordpressfr\/wp-json\/wp\/v2\/media\/155"}],"wp:attachment":[{"href":"https:\/\/mayeur.com\/wordpressfr\/wp-json\/wp\/v2\/media?parent=145"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mayeur.com\/wordpressfr\/wp-json\/wp\/v2\/categories?post=145"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mayeur.com\/wordpressfr\/wp-json\/wp\/v2\/tags?post=145"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}