Skip to main content

priceCalculate

Calculate the final price for a product based on customer context and business rules.

Performs comprehensive price calculation including base prices, customer-specific pricing, volume discounts, promotional offers, and tax calculations. Returns the final calculated price that should be displayed to the customer.

Possible errors:

  • PRICE_CALCULATION_ERROR: Failed to calculate the price
  • PRODUCT_NOT_FOUND_ERROR: Specified product does not exist
  • PRICESHEET_NOT_FOUND_ERROR: No applicable pricing found for the customer context
  • CUSTOMER_NOT_FOUND_ERROR: Specified customer does not exist
  • UNAUTHENTICATED: Invalid or missing authentication
  • FORBIDDEN: Insufficient permissions to access pricing

AUTH: Role=[pricing.OWNER,pricing.EDITOR,pricing.VIEWER]

priceCalculate(
input: PriceCalculateInput!
): ProductPrice!

Arguments​

priceCalculate.input ● PriceCalculateInput! non-null input​

Price calculation parameters including product, customer context, and quantity.

Contains all necessary information to determine the appropriate pricing including customer identification, product details, quantity, and any special pricing contexts.

Type​

ProductPrice object​

Calculated product price with comprehensive pricing information and business rules applied.

Contains the final calculated price for a product including base pricing, discounts, tax calculations, and all applicable business rules. Used for displaying prices to customers and processing orders.

IMPORTANT - tax semantics: in the Propeller API gross is the amount EXCLUDING tax and net is the amount INCLUDING tax (net = gross + tax). This is the REVERSE of common accounting usage, where gross means tax-inclusive. Do not map gross to a tax-inclusive field.