In this SAP SD pricing procedure tutorial, you will learn what a pricing procedure is, how the pricing procedure structure works, and how to define a pricing procedure in SAP Sales and Distribution using Transaction Code V/08. A pricing procedure controls the sequence in which base price, discounts, surcharges, freight, taxes, subtotals, and account-related values are processed in sales documents.
This guide focuses on the configuration activity for maintaining the pricing procedure itself. In a complete SAP SD pricing setup, you also need condition types, access sequences, condition records, customer pricing procedure, document pricing procedure, and pricing procedure determination.
What is Pricing Procedure in SAP SD?
A Pricing Procedure in SAP SD is a configuration object that tells the system how to calculate the final value of a sales document item. It contains a defined sequence of condition types, such as base price, discount, surcharge, freight, tax, and statistical conditions.
During sales order, delivery, or billing processing, SAP reads the relevant pricing procedure and processes the condition types in the order maintained in the procedure. The result is a controlled pricing calculation instead of a random or manually calculated price.
Example: A common SAP SD pricing flow may first read the base price, then apply customer or material discounts, then add freight, then calculate tax, and finally arrive at the net or gross value depending on the business requirement.
- Base price: Usually represented by a price condition type such as PR00.
- Discounts and surcharges: Applied through relevant condition types such as customer discount, material discount, or surcharge.
- Freight and taxes: Added or calculated based on the pricing design used in the SAP system.
- Subtotals: Used to store intermediate values for reporting, account determination, or further calculation.
SAP SD Pricing Procedure Structure
The pricing procedure structure is maintained in the control data of the procedure. Each row in the procedure represents a pricing step. The most important fields are step number, condition type, from-to range, manual indicator, mandatory indicator, statistical indicator, subtotal, requirement, alternative calculation type, alternative condition base value, and account key.
| Pricing procedure field | Purpose in SAP SD pricing |
|---|---|
| Step | Controls the processing order of condition types. |
| Counter | Allows more than one condition line under the same step. |
| Condition Type | Represents price, discount, surcharge, freight, tax, or other pricing element. |
| From / To | Defines the step range used as a base for calculation. |
| Manual | Allows the condition to be entered manually in the sales document. |
| Required | Makes a condition mandatory for successful pricing. |
| Statistical | Displays or stores a value without adding it to the net value. |
| Subtotal | Stores intermediate values for later use. |
| Requirement | Controls whether a condition is processed only under specific conditions. |
| AltCBV / AltCty | Used for alternative base value or alternative calculation logic when required. |
| Account Key | Supports revenue account determination for relevant pricing values. |
A pricing procedure should be arranged so that dependent values are calculated only after their base values are available. For example, a discount that should be calculated on the base price must appear after the base price step, while a tax condition should normally appear after the taxable value is calculated.
How SAP SD Determines the Pricing Procedure
Creating a pricing procedure in V/08 is only one part of SAP SD pricing configuration. The system must also know when to use that procedure. In standard SAP SD configuration, pricing procedure determination is based on the following elements:
- Sales area: Sales organization, distribution channel, and division.
- Document pricing procedure: Assigned to the sales document type.
- Customer pricing procedure: Maintained in the customer master sales area data.
- Pricing procedure: The procedure that the system should use for the matching combination.
This is why a pricing procedure may be correctly created in V/08 but still not appear in a sales order. If determination is not maintained correctly, the sales document may not pick the expected pricing procedure.
Purpose of SAP SD Pricing Procedure Configuration
The main purpose of a pricing procedure is to calculate sales values in a systematic and controlled way. It helps SAP SD consultants define how prices should be built for different sales scenarios, customer groups, tax requirements, and commercial policies.
- It controls the order in which price, discount, freight, surcharge, and tax conditions are processed.
- It supports mandatory pricing checks by marking important conditions as required.
- It allows manual pricing only where the business process permits manual entries.
- It stores subtotal values that may be used later for reporting, tax calculation, or account determination.
- It helps keep pricing behavior consistent across sales orders, quotations, contracts, and billing documents where the same procedure is used.
Before You Define a Pricing Procedure in SAP SD
Before maintaining a new pricing procedure in SAP SD, confirm the related pricing configuration. A pricing procedure without supporting condition types and determination settings will not work as expected in a sales document.
- Condition types are available: Create or verify condition types such as base price, discount, freight, and tax before assigning them to the procedure.
- Access sequences are assigned where needed: Condition types that should read condition records normally require a suitable access sequence.
- Condition records are maintained: Pricing will not find automatic values unless valid condition records exist for the relevant condition types.
- Customer pricing procedure is maintained: Check the customer master sales area data for the correct customer pricing procedure value.
- Document pricing procedure is assigned: Check the sales document type configuration so the correct document pricing procedure is available for determination.
Steps to Define Pricing Procedure in SAP SD Using V/08
Step 1: Open SAP SD Pricing Procedure Configuration in V/08
- Use Transaction Code V/08 or navigate through the IMG menu path:
SPRO → Implementation Guide → Sales and Distribution → Basic Functions → Pricing → Pricing Control → Define and Assign Pricing Procedure.

This screen is used to maintain pricing procedures and their control data. If you are working in a development client, the system may ask for a customizing request when you save changes.
Step 2: Create a New SAP SD Pricing Procedure Header
- On the Procedures Overview screen, click New Entries to create a new pricing procedure.

- Update the following fields:
- Procedure: Enter a unique key to identify the pricing procedure, for example ZPR01. Custom procedure names usually begin with Z or Y in many SAP projects.
- Description: Enter a clear description, such as Domestic Sales Pricing Procedure or Export Sales Pricing Procedure.

- Click Save to store the pricing procedure header.
At this stage, only the procedure key and description are created. The actual pricing logic is maintained in the control data, where condition types are added step by step.
Step 3: Open Control Data for the Pricing Procedure
- Select the pricing procedure that you created.
- Click the Control option to maintain the sequence of condition types.
- Click New Entries to add pricing condition lines to the procedure.

The control screen is the main configuration area of a pricing procedure. This is where you define the exact order and behavior of condition types used during pricing.
Step 4: Enter SAP SD Condition Types and Pricing Control Details
Update the following fields for each condition type in the pricing procedure:
- Step: Enter a sequential number to define the order of condition types. Many projects leave gaps such as 10, 20, 30 so that new steps can be inserted later.
- Counter: Use this when more than one condition line is maintained under the same step.
- CTyp (Condition Type): Specify the relevant condition type, for example PR00 for base price, K004 for material discount, or MWST for tax depending on your system design.
- Description: The SAP system automatically displays the description of the condition type.
- From / To: Enter the step range if the condition should calculate based on values from earlier pricing steps.
- Manual: Select this option if the condition can be entered manually in a sales document.
- Required: Select this option if pricing should treat the condition as mandatory.
- Statistical: Select this option if the condition should be displayed or stored but should not directly change the net value.
- Reqt (Requirement): Specify a requirement routine if the condition should be processed only in certain cases.
- Subtotal: Store an intermediate pricing value when it is needed for later calculation, reporting, or account determination.
- Account Key: Maintain the account key when the condition value must be posted to a relevant G/L account through account determination.

Do not mark every condition as mandatory or manual. Use these indicators only where they match the business process. Incorrect mandatory settings are a common reason for pricing errors during sales order creation.
Step 5: Save the SAP SD Pricing Procedure in V/08
After entering all required condition types and pricing control details:
- Review the step numbers and make sure the calculation sequence is correct.
- Check whether required, manual, and statistical indicators are used only where needed.
- Verify from-to step references for discounts, subtotals, freight, and tax calculations.
- Click Save to store the configured pricing procedure.

After saving, assign the pricing procedure through pricing procedure determination so that the relevant sales documents can use it.
Example SAP SD Pricing Procedure Flow
The exact condition types vary by SAP system and business process. The following example shows how a simple pricing procedure may be arranged conceptually:
| Step | Condition type | Meaning | Pricing role |
|---|---|---|---|
| 10 | PR00 | Base Price | Determines the main selling price. |
| 20 | K004 | Material Discount | Reduces the price if a valid discount is found. |
| 30 | Freight condition | Freight or delivery charge | Adds logistics-related cost if applicable. |
| 40 | Tax condition | Tax calculation | Calculates tax based on taxable value. |
| 50 | Subtotal / Net value | Intermediate or final value | Stores the calculated value for later use. |
This example is only a simplified structure. In real SAP projects, the procedure may include several discount levels, rebates or settlement-related conditions, statistical values, tax conditions, and account keys depending on business and country-specific requirements.
Customer Pricing Procedure in SAP SD
The customer pricing procedure is a key value maintained in the customer master sales area data. It helps SAP determine which pricing procedure should be used for a customer and sales document combination.
For example, a company may use different pricing procedures for domestic customers, export customers, intercompany customers, or special customer groups. The customer pricing procedure allows this difference to be considered during pricing procedure determination.
If the wrong customer pricing procedure is maintained in the customer master, the system may pick a different pricing procedure or fail to determine the expected one. Therefore, after creating a new pricing procedure, always test with the correct customer, sales area, and sales document type.
Pricing Procedure, Condition Type, and Access Sequence Difference
SAP SD pricing configuration is easier to understand when you separate the purpose of pricing procedure, condition type, and access sequence.
| Object | What it controls | Example use |
|---|---|---|
| Pricing Procedure | The order and calculation logic of pricing elements. | Base price first, then discount, freight, tax, and subtotal. |
| Condition Type | The individual pricing element. | Base price, material discount, customer discount, freight, or tax. |
| Access Sequence | How SAP searches for condition records. | Search price by customer/material first, then by material if no specific price is found. |
| Condition Record | The actual maintained value used in pricing. | A material price of a specific amount valid for a date range. |
In simple terms, the condition record stores the value, the access sequence helps find the value, the condition type defines the pricing element, and the pricing procedure controls how all these elements are processed together.
Common SAP SD Pricing Procedure Errors and Checks
- Pricing procedure is not determined: Check sales area, document pricing procedure, customer pricing procedure, and pricing procedure determination settings.
- Base price is missing: Check the condition type, access sequence, and valid condition record for the pricing date.
- Mandatory condition error appears: Review the required indicator in the pricing procedure and confirm that the condition can be found automatically or entered manually.
- Discount is calculated on the wrong value: Check the from-to step range and calculation base for that discount condition.
- Tax is not calculated correctly: Check tax condition configuration, tax classification, tax records, and the step range used for taxable value.
- Accounting values are not posted as expected: Check account keys in the pricing procedure and revenue account determination configuration.
Use the pricing analysis option in the sales document condition screen to understand which condition records were found, which accesses failed, and how each condition was calculated.
QA Checklist for SAP SD Pricing Procedure Tutorial Review
- Confirm that the tutorial clearly explains the difference between pricing procedure, condition type, access sequence, and condition record.
- Verify that the V/08 steps mention both the pricing procedure header and the control data where condition types are maintained.
- Check that customer pricing procedure and document pricing procedure are included in the pricing procedure determination explanation.
- Ensure that examples such as PR00, K004, and MWST are presented as common examples and not as mandatory values for every SAP system.
- Make sure the tutorial advises testing the pricing procedure in a non-production system before using it in live business documents.
Key Notes on SAP SD Pricing Procedure
- Condition Types: These are the building blocks of a pricing procedure. Common examples include PR00 for base price, K004 for material discount, and MWST for tax in systems where those condition types are used.
- Requirement Field: Use this field to specify conditions under which a condition type should be processed.
- Statistical Conditions: Use statistical indicators when a value should be shown or stored without directly affecting the net value.
- Pricing Procedure Determination: A pricing procedure must be assigned through determination settings before it can be used automatically in sales documents.
- Testing: Always test the configured pricing procedure in a sandbox or development environment before moving changes to production.
SAP SD Pricing Procedure FAQs
What is the pricing procedure structure in SAP SD?
The pricing procedure structure in SAP SD is the sequence of pricing steps maintained in the procedure control data. It includes condition types, step numbers, from-to references, manual and required indicators, statistical indicators, subtotals, requirement routines, alternative calculation controls, and account keys.
What is the customer pricing procedure in SAP SD?
The customer pricing procedure is a value maintained in customer master sales area data. Together with sales area and document pricing procedure, it helps the system determine the correct pricing procedure for a sales document.
Which transaction code is used to define pricing procedure in SAP SD?
V/08 is used to define and maintain pricing procedures in SAP SD. The IMG path is SPRO → Sales and Distribution → Basic Functions → Pricing → Pricing Control → Define and Assign Pricing Procedure.
Why is my SAP SD pricing procedure not determined in a sales order?
If the pricing procedure is not determined, check the sales area, document pricing procedure, customer pricing procedure, and pricing procedure determination settings. Also confirm that the customer master and sales document type contain the expected pricing values.
Can one SAP SD pricing procedure be used for many customers?
Yes. One pricing procedure can be used for many customers if pricing procedure determination points those customers and document types to the same procedure. Different customer pricing procedure values can also be used when separate pricing logic is required.
Conclusion: Defining SAP SD Pricing Procedure Correctly
By defining a pricing procedure in SAP SD, you control how the system processes base price, discounts, surcharges, freight, taxes, subtotals, and account-related values in sales documents. The procedure created in V/08 should be supported by correct condition types, condition records, customer pricing procedure, document pricing procedure, and pricing procedure determination.
For more SAP tutorials and insights, visit SAP Training Tutorials.
TutorialKart.com