WebSchemas/PriceClarifications

From W3C Wiki

Clarify price properties

This is a proposal to clarify schema.org's treatment of price, based on implementation experience with Offer and Order.

Background

The current http://schema.org/Order type does not have a way to specify the price paid; the schema.org partners would like to make this possible. Back when schema.org/Order was proposed, the initial draft had properties to specify the original offer price, the accepted offer price, taxes, and shipping. We removed these properties as they were too complex and the tax calculations did not work for VAT.

Here we propose two new properties for Order:

  • totalPrice "The total price including fees, taxes, shipping, etc.""
  • http://schema.org/priceCurrency (which already exists) - domain should be associated with Order as well as current Offer and PriceSpecification.

Design Note: the original suggestion was for a 'totalPricePaid', but this refined to totalPrice to keep this property "order-state" agnostic? That is, otherwise when an order is still http://schema.org/OrderProcessing or http://schema.org/OrderPaymentDue, we would need have a "totalPriceToBeCharged" rather than a "totalPricePaid".

There has also been a lack of clarity about http://schema.org/price

Currently we have: "The offer price of a product, or of a price component when attached to PriceSpecification and its subtypes.", defined as a property on Offer, PriceSpecification and TradeAction.

But is this supposed to be total price paid/payable, or per-item pricing?

DanBri: Relaying from schema.org partner discussion (feb 5 2014) and Vicki's investigations, "consensus was that it was a unit price and looking through prominent sites (eBay, cafepress.com, etc) that is how it is being used. This therefore supports the creation of a totalPrice property, to be added to order."

Summary

Changes:

  • new totalPrice property, "The total price including fees, taxes, shipping, etc." relating Order to Number and Text (i.e. same structure as "price" property).
  • clarify that price is a unit price, rather than a total. Change definition from "The offer price of a ..." to "The (unit rather than total) price of a ...".
  • extend domain of priceCurrency to expect it also on the Order type.

Open Issues:

Research notes

From Vicki: "For example, an item for sale on cafepress.com has a price specified in markup. If I buy two coffee mugs, I should expect to pay twice the specified price. eBay uses price for the bid. If items are offered in a single auction, they are listed as a single product, with a single unit price. The link below (link) is for an auction selling 4 antique spoons. They were sold as a unit, so the marked up price is the unit price."