Pricing
SD / O2Cintermediate

SD Pricing Part 3: Condition Types and the Pricing Procedure

Key takeaway

Configure condition types (class, calculation type, scales, manual changes, header/item) and the pricing procedure (step, counter, from/to, manual, required, statistical, subtotal, requirement, account key), and determine the procedure via OVKK.

Explanation

📌 KEY POINTS
✅ Condition type (V/06) defines behavior: class (price, discount/surcharge, tax), calculation type (percentage, fixed amount, quantity-based), plus/minus, manual changes, header/item, scales.

✅ Pricing procedure (V/08) orders condition types with step/counter and adds rules: from/to base, manual, required, statistical, subtotal, requirement, alternative calculation, account key.

✅ Account keys (ERL revenue, ERS sales deductions, ERF freight, MWS tax) link pricing to revenue account determination (VKOA).

✅ OVKK assigns the procedure per sales area, document pricing procedure and customer pricing procedure.

⚠️ A condition type in the procedure without "required" can be missing silently — mark the price as required.

━━━━━━━━━━━━━━━━━━━━
▶ WHERE WE ARE

Part 2 explained price finding. Now the condition types and the procedure that combines them.

━━━━━━━━━━━━━━━━━━━━
▶ 1. CONDITION TYPE CONTROL

  • Access sequence, condition class (A discount/surcharge, B price, D tax).
  • Calculation type: A percentage, B fixed amount, C quantity.
  • Plus/minus (only negative for discounts), rounding rule.
  • Manual entries priority, changeable amount/percent, delete allowed.
  • Header condition / item condition, group condition, scales.

━━━━━━━━━━━━━━━━━━━━
▶ 2. PROCEDURE COLUMNS

  • Step/counter: sequence.
  • From/to: base for percentages (e.g. discount on gross).
  • Manual: only entered manually; required: must exist; statistical: not in net value.
  • Print, subtotal (to fields like KZWI1–6), requirement, alt. calc type, alt. base value.
  • Account key and accrual key.

━━━━━━━━━━━━━━━━━━━━
▶ 3. TYPICAL STRUCTURE

  • Price → gross value subtotal.
  • Discounts → net value subtotal.
  • Freight → surcharges.
  • Tax on net + freight.
  • Statistical: cost (VPRS), cash discount.

━━━━━━━━━━━━━━━━━━━━
▶ 4. PROCEDURE DETERMINATION

  • OVKK: sales area + document pricing procedure + customer pricing procedure → procedure + condition type for display (e.g. price).

━━━━━━━━━━━━━━━━━━━━
▶ 5. CHANGES AND IMPACT

  • Changing a procedure affects new pricing; existing documents keep their conditions until repriced.
  • Account key changes affect revenue postings → coordinate with finance.

━━━━━━━━━━━━━━━━━━━━
▶ STEP BY STEP

  1. Copy standard condition types to Z where behavior must differ.
  2. Copy the standard procedure to Z and adjust steps.
  3. Mark price required, set subtotals and account keys.
  4. Maintain OVKK.
  5. Test pricing and posting (billing → accounting).

✅ CHECKPOINT: an order shows gross, discounts, net, freight, tax and cost in the expected steps, and billing posts to the right accounts.

Code example

ABAP Code
===== STEP 1: condition type (V/06) ZPR0 =====Access sequence ZPR0 | Cond. class B (price) | Calc. type C (quantity) | Plus/minus –Manual entries: C (manual has priority) | Amount changeable: X | Item condition: X ===== STEP 2: pricing procedure (V/08) ZVAA01 excerpt =====Step | CTyp | From | To | Man | Req | Stat | SubTo | Reqt | AltCTy | ActKy10   | ZPR0 |      |    |     | X   |      |       | 2    |        | ERL100  |      |      |    |     |     |      | 1     |      |        |        Gross value110  | K007 | 100  |    |     |     |      |       | 2    |        | ERS300  |      |      |    |     |     |      | 2     |      |        |        Net value400  | KF00 |      |    |     |     |      |       | 2    |        | ERF800  | MWST | 300  | 400|     |     |      |       | 10   | 16     | MWS900  | VPRS |      |    |     |     | X    | B     | 4    |        |        Cost (statistical) ===== STEP 3: determination (OVKK) =====1000 / 10 / 00 | DocPP A | CuPP 1 → ZVAA01 ===== STEP 4: revenue account determination =====VKOA: account key ERL/ERS/ERF → G/L accounts

Real project scenario

After a pricing procedure redesign, finance noticed customer discounts posting to the revenue account instead of the sales deductions account. The new discount condition type had been added without account key ERS. Revenue and deductions were misstated for a month. The team added ERS, corrected the postings with finance, and added a procedure review checklist including account keys and a billing-to-accounting test for every new condition type.

Common mistakes

  • Forgetting account keys for new condition types.
  • Not marking the main price as required.
  • Wrong from/to ranges for percentage discounts.
  • Changing standard condition types instead of copying.
  • Adding statistical conditions to net value.

Best practices

  • Keep pricing procedures few and well documented.
  • Always set required on the price and account keys on revenue-relevant conditions.
  • Test pricing through billing and accounting.
  • Copy standard objects to Z.
  • Review procedure changes with finance.

Interview angle

Questions: "Which settings do you maintain in a condition type?", "Explain the pricing procedure columns", "How is pricing linked to FI?"
Strong answer: condition class, calculation type, plus/minus, manual, header/item, scales in V/06; step, counter, from/to, manual, required, statistical, subtotal, requirement, alt calc, account key in V/08; OVKK determination; account keys to VKOA revenue account determination.

Practice this lesson

Quick check

1. What does marking a condition line as "statistical" in the pricing procedure mean?

2. A new discount condition type was added to the pricing procedure, and discounts now post to the revenue account. What was most likely missed?

3. Which condition class and calculation type fit a customer discount of 5%?

Interview questions

1. A global company shares a single condition table for revenue account determination (VKOA access sequence) across multiple sales organizations, but one division now needs a different GL account for the same material/customer combination due to a new reporting requirement. How would you diagnose and redesign the condition table setup without disrupting other divisions?

Answer it in your own words first, then compare.

2. In a pricing procedure, how do the 'From' and 'To' step columns work with subtotal and requirement fields to control condition calculation?

Answer it in your own words first, then compare.

Practice more with Interview AI →

Reference-verified: the steps are checked against official SAP documentation and tutorials, and object and field names in the sample code are checked for consistency. The code has not been compiled or run on an SAP system by ERPClimb. Syntax marked release-dependent varies by SAP release, so check it in your own system.

More lessons in this topic

Interview questions on this topic

Related SAP topics