Financial Management Blogs by SAP
Get financial management insights from blog posts by SAP experts. Find and share tips on how to increase efficiency, reduce risk, and optimize working capital.
cancel
Showing results for 
Search instead for 
Did you mean: 
yogananda
Product and Topic Expert
Product and Topic Expert
842

SAP CPQ customers to raise a SAP Support ticket for enabling Document Pricing. By Default : Stateless

The integration of SAP CPQ with SAP Variant Configuration & Pricing unites front-office and back-office processes, simplifying complex product configurations for sales representatives with real-time pricing connected to ERP or S4HANA Public or Private Cloud or S4 On-prem and closing the Deal faster than ever before.

Understanding of SAP Variant Pricing with Stateless vs Document Pricing

  • When to use stateless APIs and when to use Document Pricing APIs?

    The stateless pricing API is simpler and easier to use. It gets all needed data in one call, does the condition determination and price calculation, returns the results, and then forgets everything. This works well for example in a screen where you configure a product and want to see the calculated price including surcharges based on chosen product attributes. It also works well in catalog scenarios where you display a certain number of products per page and want to calculate and show their prices.

    Letting users add or overwrite manual conditions it not possible with stateless API. For that, Document pricing APIs must be used. To know which change operations are allowed for which condition type, you can use the customizing API to read the corresponding settings. Some of those settings might change during runtime, which is returned by the corresponding pricing APIs.

    Document pricing APIs are also recommended for interactive sales pricing, where user adds one item after the other to a sales document. Document pricing then avoids unnecessary condition determination for already known items.

    If the calling application relies on persistency of the Pricing service, then Document APIs must be used, too.

Let's understand more in detail

Stateless Pricing

Stateless pricing is used only during product configuration in SAP CPQ. With stateless pricing, it’s not possible to change the pricing information arriving from SAP Variant Configuration and Pricing in SAP CPQ, so it’s not possible to manually change the pricing information from SAP Variant Configuration and Pricing by mapping pricing conditions to fields in SAP CPQ.

The endpoint for this call is: /api/v1/statelesspricing with POST method only

Stateless Pricing - API Documentation2025-03-29_00-10-36.png

2025-03-22_12-52-09.png

Key Points:

  • Stateless Pricing: The pricing information is calculated dynamically and sent to SAP CPQ without storing any state information.
  • No Manual Changes: The pricing information received from SAP Variant Configuration and Pricing cannot be manually altered in SAP CPQ.
  • Mapping Conditions: It is not possible to map pricing conditions to fields in SAP CPQ for manual adjustments.

Document Pricing

With stateless pricing, it’s not possible to change the pricing information arriving from CPS in SAP CPQ. On the other hand, Document pricing only applies to the entire quote, and the functionality allows to manually change the pricing information from CPS by mapping pricing conditions to fields in SAP CPQ. When document pricing is enabled, stateless pricing is still used in the configurator, but document pricing is used on the quote.

The endpoint for this call is: POST api/v1/documents
                                             POST api/v1/documents/{documentId}/items
                                             GET api/v1/documents/{documentId}

Document Pricing Document - API Documentation
Document Pricing Document Items - API Documentation2025-03-29_00-17-50.png

2025-03-22_12-51-36.png

2025-04-01_13-09-47.png

Key Points on Document Pricing:

  • Historical Data Utilization: SAP CPQ can use stored documents to ensure consistent and traceable pricing decisions.
  • Complex Scenario Management: Capable of managing complex pricing scenarios by utilizing detailed historical data and predefined rules

Advantages:

  1. Consistency:
    1. Ensures consistent pricing by using historical data and predefined rules.
    2. Provides a stable pricing environment, reducing the risk of pricing errors.
  2. Traceability:
    1. Offers a clear audit trail of how prices were determined, which is useful for compliance and analysis.
    2. Facilitates easier tracking and verification of pricing decisions.
  3. Complexity Handling:
    1. Can manage complex pricing scenarios by leveraging detailed historical data.
    2. Supports intricate pricing models that require context and historical information.
  4. Manual Adjustments:
    1. Allows for manual changes to the pricing information from CPS (SAP Variant Configuration & Pricing Service) by mapping pricing conditions to fields in SAP CPQ.
    2. Provides flexibility to adjust prices based on specific business needs or customer negotiations.
  5. Integration with Quotes:
    1. Document pricing applies to the entire quote, ensuring that all pricing information is consistent and traceable.
    2. When document pricing is enabled, stateless pricing is still used in the configurator, but document pricing is used on the quote.

Document Pricing ID API Response Structure2025-03-27_17-32-40.png

Displaying the status of a pricing document

The status of a pricing document item indicates its current processing status.

Status

This means:

A

New, not saved

Pricing documents created explicitly in the sales price calculation function have items with status A (new, not saved).

B

Changed, not saved

If changes are made and prices are not activated, the item has status as B.

C

Saved

If sales prices are activated during pricing document processing, the status changes to C.

All posted items in pricing documents generated automatically when sales prices are saved in the sales price calculation function also have status as C.

D

Deleted items are given status as D.

E

Cancelled items are given status as E.

Status of the pricing document. Below are the possible statuses of the pricing document(Screenshot below).

Calculation Status Description
Not calculatedPrice calculation was not triggered after the last change to the pricing document or an item.
Inconsistent with errorsErrors occurred during price calculation. Refer to the messages for more details.
Consistent with warningsWarnings occurred during price calculation. Refer to the messages for more details.
ConsistentPrice calculation was triggered and the result is consistent.

2025-03-27_17-25-48.pngBelow are the listed controls with description:

Controlcontrol Description
" "(Space)Subtotal step
AAdjust for quantity variance
BFree
CChanged manually
DFixed
ECondition value and basis fixed
FCondition value fixed (billed items)
GCondition basis fixed
HCondition value fixed (cost price)

Below are the reasons for being inactiveFlag are:

Inactive StatusDescription
ACondition exclusion item
KInactive due to calculation basis
MInactive due to manual entry
WThe document item is statistical
XInactive via formulae or inactive due to error
YInactive because of subsequent price
ZInvisible
" "(space)Condition is active

Below are the listed origins with description:

Origin Description
" "(space)Subtotal step at item level
AAutomatic pricing
BDuplicated from main item
CManually entered/changed
DHeader condition
EItem total
FCondition supplement
GOriginal header condition
HCorrection rebate
ICost correction
JTransaction tax engine

Below are the supported calculation types:

Calculation TypeDescription
APercentage
BFixed Amount
CQuantity
DGross weight
ENet weight
FVolume
GFormula
HPercentage (in hundreds)
IPercentage (travel expenses)
LPoints
MQuantity - monthly price
NQuantity - yearly price
OQuantity - daily price
PQuantity - weekly price
QCommodity price
UPercentage FIN
WPercentage (with 6 decimal places)

2025-03-21_20-12-30.png

 

Archiving pricing documents

There is a special function available for archiving pricing documents.

Document items with status D are archived independently of archiving key dates. You can also set an indicator in Archiving to archive canceled document items in the same way.

What Benefits Customers get using SAP CPQ ?:

  • Ease of Use: The integration is designed to be user-friendly, allowing customers to leverage the full capabilities of both SAP CPQ and SAP Variant Configuration & Pricing without extensive technical knowledge
  • Cost Savings: By reducing the need for manual intervention and customization, the integration helps businesses save on implementation and operational costs.
  • Enhanced Collaboration: The seamless data flow between systems enhances collaboration between sales, engineering, and finance teams, leading to more cohesive and efficient operations.

Known Limitation at SAP CPQ Side

There is no field in API to find for the Quote - Document Pricing Id. you will have to find it via CTX tags to retrieve for the quote.
Customer's to raise a SAP Influence Portal for CPQ for getting missing field added into standard API for /quotes/<quoteid>

<*CTX(Quote.Id)*>
<*CTX( Quote.PricingDocumentID )*>
<*CTX( Quote.PricingProcedureName )*>

Conclusion

By integrating SAP CPQ with SAP Variant Configuration & Pricing, businesses can achieve a powerful, efficient, and scalable solution that enhances their sales processes and customer satisfaction.