You are on page 1of 25

PUBLIC

Price Management
in SAP S/4HANA Cloud - Sales
Introduction & Scope

Price Management is one of the core and crucial processes in cloud sales. In general, the pricing of goods and services handled by an organization is
determined based on certain conditions such as cost of materials, manufacturing, shipping, sales tax, etc. From a solution perspective, the prices are
calculated using the functions such as pricing procedure, condition types, access sequence and condition fields.

During the sales document processing, the system automatically calculates the net value of goods / services entered, by considering the condition record value
maintained in master data for different pricing elements. The prices are calculated using a condition technique, which is a process of determining the
appropriate condition record value in the sales documents.

The scope of this presentation is to provide an overview of pricing framework in S/4HANA Cloud. Additionally, the related SSCUI configuration required for
pricing setup and the possible extensibility options using the In-app extensibility have been explained.

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2


Price Management – Solution Framework (1/2)
Sales Document Pricing Procedure

1. Price – PPR0 Following are the key business objects needed to setup Price
Material X – 10 items
2. Mat. Discount – DM01 Management in S/4HANA Cloud
PPR0 Price – 100 USD
3. Output Tax – MWAS
✓ Condition Records (Master Data)

✓ Condition Tables (Configuration)

✓ Access Sequence (Configuration)


Access Sequence Condition Type ✓ Condition Types (Configuration)

Access Sequence – PPR0 ✓ Pricing Procedure (Configuration)


Condition Type – PPR0
Customer / Material
Access Sequence – PPR0 ✓ Pricing procedure determination (Configuration)
Material with release status

Condition Master

Valid Condition Record


1 Qty – 100 USD App for maintaining the pricing condition records “Set Material
Prices” can be accessed with Business role “Pricing Specialist”
(SAP_BR_PRICING_SPECIALIST).

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3


Price Management – Solution Framework (2/2)
Sales Document Pricing Procedure
Condition Record is the master data for pricing. You can maintain condition
1. Price – PPR0
Material X – 10 items master record using the app – ‘Set Material Prices’.
2. Mat. Discount – DM01
PPR0 Price – 100 USD
3. Output Tax – MWAS
Condition Tables is a combination of fields which are used to maintain
condition records. You can maintain condition tables using SSCUI – 103119
/ 103120

Access Sequence Access Sequence is a search strategy used to search for valid condition
Condition Type
records from most specific to most general. You can maintain access
Access Sequence – PPR0 sequence using SSCUI – 103121
Condition Type – PPR0
Customer / Material
Access Sequence – PPR0
Material with release status Condition Type helps to control the pricing elements. You can define
condition types using the app ‘Configure your solution - Set Condition Types
for Pricing (SSCUI – 101120).

Pricing Procedure is a logical grouping of condition types to determine


appropriate prices in sales documents (SSCUI – 101117).
Condition Master

Valid Condition Record Pricing Procedure Determination allows to calculate the gross price of
1 Qty – 100 USD goods/services by considering the unit price, quantity and customer/material
preferences maintained in the condition master (SSCUI – 101118).

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4


Price Management – System Setup

You can set up and control pricing elements used in the condition technique in the Manage Your Solution app, such as Field catalog, condition
tables, access sequence, condition type, pricing procedure, and price list type as well as pricing group for both customers and materials.

Manage your Solution


App
Implementation Cockpit

Set Customer Set Pricing


Change Field Create/Change Set Access Set Condition Set Pricing
Pricing Procedure
Catalog Condition Tables Sequence Types for Pricing Procedures
Procedure Determination
103118 103119 / 120 103121 101120 101117 101202 101118

Pricing Master Data

Set Material Prices


(Condition Master Data)

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5


Manage your Solution – Change Field Catalog

An access sequence consists of condition tables, which in turn


posses fields (Access sequence is a search strategy to
determine the appropriate condition value).

▪ A condition table, consist of list fields that represent price-


relevant business attributes. This list of supported fields is called
field catalog. Technically, these selected fields are by default key
fields for the corresponding condition table.

▪ The field catalog that is predelivered with the standard system


includes price-relevant business attributes that are commonly Field Catalog
used in sales, such as customer, material, sales organization. (list of fields)

Condition
Table
(contains
fields)

Access
Sequence
(sequence of
Additionally, S/4HANA Cloud solution allows to add additional fields in the field catalog as per specific business requirements. It is condition
tables)
possible to create custom fields by using the Custom Fields and Logic app and add these fields to the field catalog if necessary.

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6


Manage your Solution – Create / Change Condition Tables

Field Catalog
(list of fields)

Condition
▪ A condition table defines the combination of fields (the key) that identifies an individual condition record. Table
(contains
fields)
▪ The specific business information maintained as master data in the condition records is stored in the condition tables. For
example information such as Sales org, distribution channel, division, customer group, material group etc.
Access
Sequence
(sequence of
condition
tables)

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Manage your Solution – Set Access Sequences
▪ Access Sequence by definition is a search strategy used
to find the appropriate value for a specific condition type.

▪ The search strategy guides the system in which it has to


search for the data.

▪ An access sequence consists of one or more accesses,


which in turn is composed of condition tables / fields.

Field Catalog
(list of fields)

Condition
Table
(contains
fields)

Access
Sequence
(sequence of
condition
tables)

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8


Manage your Solution – Set Condition Types for Pricing
▪ Price elements are represented in the system as condition types such as prices, surcharges, discounts, taxes or freight. The values of these price elements are
stored in the form of condition master records.

▪ The SSCUI configuration allows to configure the condition type, for example, define whether a discount is calculated as a percentage or a fixed amount. Further,
you can assign an access sequence to a condition type, which is a search strategy to identify an appropriate value based on a set criteria.

✓ Within the solution, the pricing


procedure is an object that groups
all condition types.

✓ The logical grouping of these


condition types differ based on a
business scenario.

Key Inputs
▪ Manual condition types are allowed.
▪ The identification code for custom condition types (business specific), must start with letter Z as SAP reserves this namespace for this specific purpose.

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9


Manage your Solution – Set Pricing Procedures
Pricing procedure is a logical grouping of condition types that are taken into account in a specific sequence for calculating prices in a sales document. During
the sales document processing, the system automatically determines the appropriate pricing procedure based on a determination criteria (maintained in SSCUI
– 101117).

▪ Customers are recommend to define their own pricing procedure with relevant condition types that are accurate for business. Adopting standard procedures
without any changes and business reasoning may lead to unnecessary accesses to conditions and may have impact on system performance as well.

▪ Additionally, S/4HANA Cloud solution allows to incorporate custom logic for calculations (details covered in the next section of this presentation).

Please refer to section ‘additional information’ in this deck for explanation on pricing procedure configuration.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 10
Manage your Solution – Set Pricing Procedure Determination

Customer pricing procedure is maintained in the Business Partner (customer) record for each
sales area.

The pricing procedure determination depends on the sales


area, sales document type (document pricing procedure) and
customer pricing procedure.

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 11


Condition Master Data – Set Material Prices

▪ Use this app to set material prices for sales.

▪ When the price of a material is calculated during sales document processing, the system uses conditions that are derived from business
document data, such as the sales organization or distribution channel of a sales order.

▪ For example, if a customer orders certain quantity of a material, the data captured in the sales order such as - the customer, the material,
the order quantity and the order date – play a critical role in determining the price of the material for that customer.

▪ Additionally, customer or material categorization such as customer group or material group can be included as determination parameters
(if required).

▪ The actual price of the material together with its determination parameters is stored as master data, which are referred as condition
records in the solution.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 12
System Setup – SSCUIs for Price Management (Comprehensive)
▪ S/4HANA Cloud is primarily Fiori-Based, and all the tools are designed to work using the UX framework. It means that you can no longer use IMG (SPRO) to
customize your system (if you are familiar with on-prem model).

▪ Instead, S/4HANA Cloud is supported with Self-Service Configuration IU (SSCUI) which consists of a set of Fiori apps that allows to personalize the pre-
configured cloud system to your business needs.

▪ Below is the comprehensive list of SSCUIs available with cloud release 2005 for setting up price management.

Sl.No SSCUI ID Step Name Short Description


1 103118 Change Field Catalog Display and change the list of allowed fields used for pricing in sales.
2 103119 Create Condition Tables Create new condition tables for pricing in sales.
3 103120 Change Condition Tables Change existing condition tables used for pricing in sales.
4 103121 Set Access Sequences Create, change, and display access sequences for pricing in sales.
5 101120 Set Condition Types for Pricing Set pricing condition types for sales.
101117 Set Pricing Procedures Create, change, and display pricing procedures and configure pricing procedure determination.
6
7 101202 Set Customer Pricing Procedures Create, change, and display pricing procedures and configure pricing procedure determination.

8 101118 Set Pricing Procedure Determination Create, change, and display pricing procedures and configure pricing procedure determination.
9 102134 Define Condition Exclusion Groups Define how condition exclusion is to be carried out by using exclusion groups.
10 102135 Assign Condition Types to Exclusion Groups Define how condition exclusion is to be carried out by using exclusion groups.
11 102136 Maintain Condition Exclusion for Pricing Procedures Define how condition exclusion is to be carried out by using exclusion groups.
12 102627 Define Requirement in Pricing Control whether a condition is applicable during pricing.
13 102430 Set Alternative Calculation of Condition Amount Define alternative ways for how the system calculates the condition amount.
14 102808 Set Alternative Calculation of Condition Base Value Define alternative ways for how the system calculates the condition base value.
15 102795 Edit List of Fields Used in Pricing Routines Work on the list of document fields for a specific routine number.
16 101215 Set Price List Types for Customers Define the list of values that can be used for price list types.
17 101116 Set Price Groups for Customers Define the list of values that can be used for customer price groups.
18 101115 Set Price Groups for Materials Define the list of values that can be used for material price groups.

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 13


Extensibility
Options
Set Alternative Calculation of Condition Amount (1/2)

▪ This SSCUI (102430), allows to define alternative ways to influence ▪ To define the custom routine – register a routine number and the system
the calculation logic to apply for the condition amount during price automatically enters the Condition Amount (CONDITION_AMOUNT)
calculation. process enhancement option. This routine number can be assigned in a
later step in the pricing procedure configuration.
▪ Routines can include custom logic to reflect necessary checks and
calculations as per the business requirement and assigned to the ▪ The general number range for custom routines is from 3000000 to
pricing procedure. 3009999.

▪ Assign the filter value of the BAdI implementation to this routine number as
an enhancement identifier (ID) for a valid process enhancement option
task.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 15
Set Alternative Calculation of Condition Amount (2/2)
BAdi – Define Alternative Calculation for Condition Amount in Condition Item

▪ This Business Add-In (BAdI) can be used in Pricing and


Conditions (SD-BF-PR) component to define alternative
calculations for amount-related fields in the document item. For
example, it can be used to calculate condition amount or the
condition base value, that are used for price elements.

▪ The method CHANGE_CONDITION_AMOUNT allows to adjust


different attributes and amounts of the document item. In
addition, the method supports different attributes of the price
element that triggers the execution of the Business Add-In.

BAdi – Define Alternative Calculation for Condition Amount in Document Condition


▪ This Business Add-In (BAdI) can be used in the Pricing and Conditions (SD-BF-PR)
component to define alternative calculations for amount-related fields in the document
header. For example, it can be used to calculate the condition amount or the condition
base value, that are used for price elements.

▪ The method CHANGE_CONDITION_AMOUNT allows to adjust different attributes and


amounts of the document. In addition, the method supports different attributes of the
price element that triggers the execution of the Business Add-In.

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 16


Set Alternative Calculation of Condition Base Value
BAdi – Define Alternative Calculation for Condition Base Value of Document
Item

▪ This Business Add-In (BAdI) can be used in the Pricing and Conditions (SD-
BF-PR) component to set an alternative calculation of the condition base
value.

▪ The method CHANGE_CONDITION_BASE_VALUES allows to adjust


different attributes and amounts of the document item. In addition, the
method supports different attributes of the price element that triggers the
execution of the Business Add-In.

▪ This SSCUI (102808), allows to define alternative ways to influence the


calculation logic to apply for the condition base value during price calculation
in a business document.

▪ Routines can include custom logic to reflect necessary checks and


calculations as per the business requirement and assigned to the pricing
procedure.

▪ To define the custom routine – register a routine number and the system automatically enters the Condition Amount (CONDITION_AMOUNT) process
enhancement option. This routine number can be assigned in a later step in the pricing procedure configuration. The general number range for custom routines is
from 3000000 to 3009999.

▪ Assign the filter value of the BAdI implementation to this routine number as an enhancement identifier (ID) for a valid process enhancement option task.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 17
Define Requirement in Pricing
▪ In pricing, “requirements” can be used in the condition technique process to
apply a custom logic or additional filter criteria during the execution of pricing.
You can assign the custom logic routine in a step of the pricing procedure or in
an access of an access sequence.

▪ This Business Add-In (BAdI) Define Requirement in Pricing for Document is


used in the Pricing and Conditions (SD-BF-PR) component and the method
IS_PRCG_REQUIREMENT_FULFILLED allows you to check if the pricing
requirement is fulfilled for the step in the pricing procedure or the access in the
access sequence.

▪ You can set the filter criteria to first check the document fields (header) or you
can use the requirement for document as a stand-alone check that checks only
the header attributes.

▪ In both cases, the document item fields do not have to be checked if the result
of the check is negative.

▪ You can decide if you want to use either the requirement for document or the
requirement for item or both. If one of the two requirements has not been
implemented, the system sets the result for the respective requirement
automatically to fulfilled.

▪ With SSCUI (102627), you can register the custom routine number and link it to
the enhancement id (BADi). As a next step, the custom routine can be
assigned to step of the pricing procedure or in an access of an access
sequence

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 18


Edit List of Fields Used in Pricing Routines
▪ When the system executes pricing, the system does not
fill all fields of the Business Add-In (BAdI) interface and
only the ones that are relevant for a specific process are
availed.

▪ In specific business cases, it is possible that a BAdI


implementation may require to evaluate a document field
that is not automatically filled. To handle this, you can list
the pricing-relevant document fields that you need in your
coding as input fields.

▪ SSCUI 102795 can be used edit the list of document


fields that need to be filled with data for the execution for
each customer-specific routine.

▪ This is relevant for service transactions, such as service


order, service order quotation, or service confirmation.

▪ The system scans the coding of your routine to find fields of the BAdI interface. You can include or remove fields that have been found by the code scan. You
can manually add any fields that need to be filled with data but are not detected by the system during the code scan.

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 19


Additional Information

SSCUI ID Step Name Short Description


101116 Set Price Groups for Customers Define the list of values that can be used for customer price groups.
101115 Set Price Groups for Materials Define the list of values that can be used for material price groups.
101215 Set Price List Types for Customers Define the list of values that can be used for price list types.
102134 Define Condition Exclusion Groups Define how condition exclusion is to be carried out by using exclusion groups.
102135 Assign Condition Types to Exclusion Groups Define how condition exclusion is to be carried out by using exclusion groups.
102136 Maintain Condition Exclusion for Pricing Procedures Define how condition exclusion is to be carried out by using exclusion groups.
Price Groups – Customers / Materials

▪ Customer or Material price groups can be used to simplify the price maintenance and calculate prices for different category of customers.

▪ For example, a condition record with customer price group as a key field allows to logically group customers and maintain a specific price for that group as
per the business requirement.

▪ During the sales order processing, the system considers the price group of that customer or material maintained in the master data to calculate the price.

▪ Price groups can be applied for calculating prices or discounts.

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 21


Price List Type for Customers

▪ Price list types can help to structure the pricing model across the sales areas. It allows to group customers by
assigning them to the same price list type.

▪ You can simplify the price maintenance by creating the condition record with price list type as a key field.
During the sales order processing, the system considers the price list type assigned to the customer in the
master data to calculate the price.

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 22


Condition Exclusions
▪ In general, businesses can offer multiple discounts to their customers (each discount represented by a condition type).

▪ During the price calculation in sales document processing, Condition Exclusion is a technique that can be applied to find the most favorable discount when
multiple discounts are applicable simultaneously.

▪ Below are the steps to configure condition exclusions –

o Define exclusion group

o Assgin condition types to exclusion group

o Assign exclusion group to procedure

© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 23


Pricing Procedure Configuration
Pricing Procedure Column Description
Step Indicates the position of the condition type in pricing procedure.
Counter System uses the counter to count the steps and also it can be used to count mini steps of same condition types.
Condition Type Represents pricing element in pricing procedure as a base price, discount, freight and tax
Description Description of the condition type.
From & To The range between the steps from and to can be used to specify the range between same condition types. So that depending
upon the condition type, the system deducts or adds the total value of those condition types from specific common source.
Manual This indicator specifies whether the specific condition type can be determined manually during sales order processing.
If you flag the check box then the entry is manual, otherwise its considered as automatic.
Mandatory Indicator specifies that particular condition type is mandatory in the pricing procedure during sales order processing.

Statistical This indicator controls if the condition type should be considered into net value calculation or not.

Print The value of this field specifies whether line item can be printed or not in the sales document and at what level it is to be printed

Subtotal Subtotals are used as a starting point for further calculations. For example, subtotal of all the discounts included in the pricing of
a sales order.
Requirement Business specific requirement. Extensibility possible using BADi

Alternative Calculation Type Used to calculate alternative formula for the condition type – as an alternative to the standard – Extensibility possible using BADi

Alt.Condition Base Value Used to calculate alternative formula for determining the condition basis – as an alternative to the standard – Extensibility
possible using BADi
Account Key Values of Sales Revenues, Sales Deductions, Freight Revenues, Tax Revenues, and Rebate Accruals etc. are posted into G/L
Accounts through the account key assigned to each condition type in pricing procedure.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 24
Thank you.
Author
Sai Kasturi
SAP DBS (Digital Business Services)
S/4HANA Cloud Competence Center
Sai.Giridhar.Kasturi@sap.com

You might also like