The Ultimate SAP S4 HANA Sales Pricing Guide with FAQ

The Ultimate SAP S4 HANA Sales Pricing Guide with FAQ

Home » The Ultimate SAP S4 HANA Sales Pricing Guide with FAQ

Six Steps to configure S4 HANA Pricing

  1. Step 1-Create Condition Table

    SAP Standard Condition tables will be used in this guide

  2. Step 2-Create Access Sequence

    SAP Standard Access Sequence will be used in this guide

  3. Step 3-Define condition type

    All necessary Condition types like “Price” will be configured & reviewed field by field in this guide.

  4. Step 4-Define Pricing Procedure

    Pricing procedure PPIN01 (PPIN Pricing Procedure) will be configured in this guide.

  5. Step 5-Define Pricing Procedure Determination

    Below are the steps to configure the determination of our pricing procedure.
    5.1)-Customer Pricing Procedures- To specify the customer pricing procedure in the customer master record for each sales area.
    5.2)-Document Pricing Procedure- To specify the document pricing procedure for each sales document type and billing type.
    5.3)-Assign Document Pricing Procedure to Order Types.
    5.4)-Assign Document Pricing Procedure to Billing Types.

  6. Step 6-Maintain condition records

    In the last we will maintain condition records for our pricing procedure to start working in sales documents.

Table of Contents

1. Define Condition Type

Condition types represents components of total price such as price, discounts, surcharges & taxes etc..

We will configure a very simple pricing procedure to understand the things better.

We will include below condition Types in our customized pricing procedure

--> PR00 (Gross Price) --> SAP Standard
--> Y007 (Customer Discount) --> Copy from Std K007
--> Y005 (Disc.Customer/Material) --> Copy from Std K005
--> YB00 (Discount (Value)) --Copy from Std RB00
--> YF00 (Freight) --Copy from Std KF00
--> YD00 (Freight) --Copy from Std HD00
--> UTXJ (Tax Jurisdict.Code) --> SAP Standard
--> JR1	(Tax Jur Code Level 1)
--> JR2	(Tax Jur Code Level 2)
--> JR3	(Tax Jur Code Level 3)
--> VPRS (Internal price) --> SAP Standard

We will review each field used in the condition types configuration through configuration of gross price condition type PPR0

1.1 Price Condition Type

For our pricing procedure base price, we will use SAP standard PPR0 condition type.

Picture : Path to Define condition types

Important fields in Condition Type configuration and their explanation

1.1.1 Fields in the Main Header screen of Condition Type

In this area two fields are present

Picture : Fields in the Main Header screen of Condition Type
a) Condition Type

Here we give the 4 characters code & description of our condition type. For example -here SAP have used code as “PPR0” & description as “Price” for the default gross price condition type.

b) Access sequence

Every condition type is associated with one access sequence that access sequence should be assign here. for our condition type PPR0, access sequence is used as “PPR0”

1.1.2 Fields in the “Control Data 1” Sub-screen of Condition Type

Below fields are present in this sub-screen

Picture : Fields in the “Control Data 1” Sub-screen of Condition Type
a) Condition Class

It is a classification of condition types as prices, taxes, discounts, etc.

b) Calculation Type

This field decides how calculation should be done for this condition like-quantity or percentage or fixed amount.

c) Condition Category

A classification of conditions according to predefined categories. For example-Freight.

d) Rounding Rule

Round up or round down can be assigned.

e) Structure Condition

The condition type is used in BOM or configurable material.

f) Plus/Minus

This field determines the value of the condition type should be added or deducted.

1.1.3 Fields in the “Group Condition” Sub-screen of Condition Type

Picture : Fields in the “Group Condition” Sub-screen of Condition Type
a) Group Condition

It indicates whether the system calculates the basis for the scale value for more than one item in a document.

1.1.4 Fields in the “Changes which can be made” Sub-screen of Condition Type

Picture : Fields in the “Changes which can be made” Sub-screen of Condition Type
a) Manual Entries

The value of this field determines whether the condition type is determined manually or not at sales order level

b) Header Condition

The value of the header condition applies to whole items in the sales order. Header conditions do not have any access sequence. The values should be entered manually in the sales order level.

c) Check Item Condition

The value of the item condition applies to only at item level. Item conditions must have access sequence.

d) Delete

This indicator enables to delete the condition type at sales order level.

e) Amount/Percentage

It specifies whether the amount or percentage for the condition type can be changed during document processing. These changes will not affect the condition master data.

f) Value

Scope for changing the value. It specifies whether the value of the condition type can be changed during document processing.

g) Quantity Relation

It specifies the scope of changing conversion factors during document processing.

h) Calculation Type

If you want to change calculation type this indicator should be set. For Example-Normal calculation type is fixed amount and sales order level calculation type is percentage.

1.1.5 Fields in the “Master Data” Sub-screen of Condition Type

Picture : Fields in the “Master Data” Sub-screen of Condition Type
a) Valid From

It specifies the beginning validity date that the system automatically proposes when we create a rebate agreement of this type. It is most relevant for condition type B001, B002, and B003.

b) Valid To

The proposed value for how long a condition should remain valid.

c) Reference Condition Type

In our pricing procedure if we have SAME condition types, then we can maintain condition records for one condition type and we can specify another condition type as a reference condition type for this condition type. So that, no need to create condition records for reference condition types.

d) Reference Application

If we reference one condition type for another condition type, we should specify in which application area this referencing procedure takes place.

e) Pricing Procedure Condition Supplement

When the business wants to give certain discounts for all the customers and materials till certain period.

f) Deletion from Database

We can set system responses when the condition record is going to be deleted from the database like with popup or without popup messages.

g) Check Condition index

We can create condition index for this condition type. So that by using the condition index we can maintain the condition records of this condition type.

I) Condition update

This field is for qualifies condition index. This indicator updates the condition type. For example “By value”.

1.1.6 Fields in the “Scales” Sub-screen of Condition Type

Picture : Fields in the “Scales” Sub-screen of Condition Type
a) Scale Basis

Depending upon the range of quantity prices may be increased or decreased, higher discounts, low freight charges can be offered.

b) Check Value

We can specify the checking rule for scale rates as a ascending or descending.

c) Scale Type

The indicator controls the validity of the scale value or percentage from a certain quantity or a value. Alternatively it is possible to work with interval scales that must be stored in the condition type.

d) Scale Formula

We can specify the formula for determining the scale base value which may has not been provided in the standard system.

e) Unit of Measure

System uses unit of measure to determine scales when we use group conditions.

1.1.7 Fields in the “Control Data 2” Sub-screen of Condition Type

Picture : Fields in the “Control Data 2” Sub-screen of Condition Type
a) Currency Conversion

It controls the currency conversion where the currency in the condition record varies with document currency.

b) Accruals

It indicates that the system posts the amount resulting from this condition to the financial accounting as a accruals. If you mark this field the condition appears in the document as a statistical value.

c) Invoice list Condition

Indicates If the condition type is relevant for internal costing.

d) Inter-Company Billing Condition

Indicates If the condition type is inter-company billing purpose, Ex-PI01.

e) Service Charge Settlement

It indicates that the trading contract conditions should be calculated using vendor billing document.

f) Variant Condition

Indicates If the condition type is for variant pricing [Variant configuration], Ex-VA00.

g) Quantity Conversion

This field controls the quantity conversion during determination of the condition bases. This field only relevant for quantity dependent condition types. If you deactivated it, then the condition bases quantity is converted via the quantity to the stock-keeping unit.

h) Exclusion

We can offer best condition type among the same conditions to the customer by using “condition exclusion” feature.

i) Pricing Date

We can specify the pricing date at which this condition to be affected.

j) Relevant for Account Assignment

Indicates whether this condition type is relevant for account assignment or not. It is the main control to post the values of condition type into the respective G/L accounts.

k) Service Charge Settlement (Trading Contract)

Indicates that the trading contract conditions should be calculated using the supplier billing document.

l) Process conditions with value equal to zero

Using this indicator, you can control how conditions with value equal to zero are processed.

If left blank -Conditions are not considered in the condition exclusion logic when their value is equal to zero.

If set to “A”-Conditions of this type will be considered in the exclusion logic even if their value is equal to zero.

1.2 Discount Condition Types

We are creating three condition types for discounts as given below

  • Y007 (Customer Discount) –> Copy from Std K007
  • Y005 (Disc.Customer/Material) –> Copy from Std K005 –>
  • YB00 (Discount (Value)) –Copy from Std RB00
Picture : Y007 (Customer Discount)
Picture : Y005 (Disc.Customer/Material)
Picture : YB00 (Discount (Value))

1.3 Freight Condition Types

We are creating two condition types for discounts as given below

  • YF00 (Freight) –Copy from Std KF00
  • YD00 (Freight) –Copy from Std HD00
Picture : YF00 (Freight) Condition Type
Picture : YD00 (Freight) Condition Type

2. Define Pricing Procedure

Pricing procedure is a list of condition types in a specific order, such as gross price less discount & plus tax to arrive on net price.

The pricing procedure fulfills the need of business like correct pricing, discounting, adherence to tax laws etc.

We will configure a customized Pricing Procedure “PPIN01- PPN Pricing Procedure” for our car business.

As described in the condition type topic we will use below customized condition types to build our customized pricing procedure.

--> PR00 (Gross Price)
--> Y007 (Customer Discount)
--> Y005 (Disc.Customer/Material)
--> YB00 (Discount (Value))
--> YF00 (Freight)
--> YD00 (Freight)
--> UTXJ (Output Tax)
--> JR1	(Tax Jur Code Level 1)
--> JR2	(Tax Jur Code Level 2)
--> JR3	(Tax Jur Code Level 3)
--> VPRS (Internal price)

We have configured the pricing procedure in the system

Picture : Configuration of Pricing Procedure Part A
Picture : Configuration of Pricing Procedure Part B

Important fields in Pricing procedure configuration and their explanation

2.1 Step

Indicates the step number of condition type in pricing procedure like 10, 20, 30, and etc. If we give steps intervals of 1, but this can make changing the procedure in the future very difficult.

2.2 Counter

System uses the counter while accessing the condition types in our pricing procedure. This is used to show a second mini – step within an actual step.

2.3 Condition type

We specify condition types (pricing elements) that are participating to calculate net value in our pricing procedure.

2.4 Description

System copies the description of the condition type from definition of condition type.

2.5 “From Step” and “To Step”

As a base to calculate further value of condition type. We can specify the base for condition type. So that system takes the base (step).

2.6 Manual

It determines if condition type is determined in our pricing procedure manually.

2.7 Mandatory

indicates that the particular condition type is mandatory in pricing procedure.

2.8 Statistical

It indicates the purpose of condition type is only for information purpose. The value of condition type will not be taken into consideration in the net value calculation.

2.9 Print

It indicates the value of the condition type can be printed in a document.

2.10 Sub – total

The value of this field determines where the value of the sub – totals is going to be stored in the database.

2.11 Requirement

Requirement is used for condition type that excludes particular condition type while determining the net value. Example -PR00 pricing condition type is not necessary for items not relevant for pricing. We assign requirement 002 to the requirement column fulfil this.

2.12 Alternative formula for calculation type

Indicates alternative formula instead of standard one as a condition type in the form of routines. Example : Routine 11 profit margins can be used as a alternative formula for condition type to calculate profit margin as there is no standard condition type to calculate profit margin.

2.13 Alternative formula for condition base value

Here we can use a formula in the form of routine to use base. Example-routine 12 or 13 (gross weight or net weight) can be used with condition type KF00 to calculate fright.

2.14 Accounting keys and accruals

The values of the pricing elements (condition types) can be posted in the respective G/L accounts through this accounting keys.

3. Determination of Pricing Procedure

SAP S4 HANA determine pricing procedure as per below

We will configure all the necessary components to determine the pricing procedure in the steps below

3.1 Customer Pricing Procedures

You specify the customer pricing procedure in the customer master record for each sales area

SPRO –> Sales and Distribution –> Basic Functions –> Pricing Control –>Define And Assign Pricing Procedures –> Set Customer Pricing Procedures

Picture : Set Customer Pricing Procedures

3.2 Document Pricing Procedure

SPRO –> Sales and Distribution –> Basic Functions –> Pricing Control –>Define And Assign Pricing Procedures –> Set Document Pricing Procedures

You specify the document pricing procedure for each sales document type and billing type.

Picture : Set Document Pricing Procedures

3.3 Assign Document Pricing Procedure to Sales Order type

SPRO –> Sales and Distribution –> Basic Functions –> Pricing Control –>Define And Assign Pricing Procedures –> Assign Document Pricing Procedures to Order Types

Picture : Assign Document Pricing Procedures to Order Types

3.4 Assign Document Pricing Procedure to Billing type

SPRO –> Sales and Distribution –> Basic Functions –> Pricing Control –>Define And Assign Pricing Procedures –> Assign Document Pricing Procedures to Billing Types

Picture : Assign Document Pricing Procedures to Billing Types

3.5 Assign Document Pricing Procedure

Picture : Assign Document Pricing Procedure 1st Part
Picture : Assign Document Pricing Procedure 2nd Part
Picture : Assign Document Pricing Procedure 3rd Part
Picture : Assign Document Pricing Procedure 4th Part

FAQ on Sales Pricing Procedure

Can we have Different pricing procedures on Sales order and billing documents

Yes. This is possible and a normal scenario in various implementation. Please see details below
1)-Configure different document pricing procedure for sales order & billing as shown in above screenshots
2)-During Copy Control between your Del type to Billing type (VTFL), the pricing type should be B (carry out new pricing) if delivery related billing.
3)-During Copy Control between your Ord type to billing type (VTFA), the pricing type should be B (carry out new pricing) if order related billing.

Join the discussion