Schema.org · Schema

Schema.org Order

An order is a confirmation of a transaction, typically from an online shop.

Schema.orgStructured DataLinked DataJSON-LDVocabularySEOWeb StandardsRDFOntology

Properties

Name Type Description
@type string The Schema.org type.
@context string
orderNumber string The identifier of the transaction.
orderStatus string The current status of the order.
orderDate string Date order was placed.
customer object Party placing the order.
seller object An entity which offers goods or services.
broker object An entity that arranges for the exchange.
orderedItem object The item ordered.
acceptedOffer object The offer(s) that were accepted as part of this order.
billingAddress object The billing address for the order.
paymentMethod string The name of the credit card or other method of payment for the order.
paymentMethodId string An identifier for the method of payment used.
paymentUrl string The URL for sending a payment.
paymentDueDate string The date that payment is due.
discount object Any discount applied to the order.
discountCode string Code used to redeem a discount.
discountCurrency string The currency of the discount.
isGift boolean Was the offer accepted as a gift for someone other than the buyer.
orderDelivery object The delivery of the parcel related to this order.
confirmationNumber string A number confirming the given order.
url string URL of the order.
View JSON Schema on GitHub

JSON Schema

schema-org-order-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://schema.org/schemas/order.json",
  "title": "Schema.org Order",
  "description": "An order is a confirmation of a transaction, typically from an online shop.",
  "type": "object",
  "required": ["@type"],
  "properties": {
    "@type": {
      "type": "string",
      "const": "Order",
      "description": "The Schema.org type."
    },
    "@context": {
      "type": "string",
      "default": "https://schema.org"
    },
    "orderNumber": {
      "type": "string",
      "description": "The identifier of the transaction."
    },
    "orderStatus": {
      "type": "string",
      "enum": ["OrderCancelled", "OrderDelivered", "OrderInTransit", "OrderPaymentDue", "OrderPickupAvailable", "OrderProblem", "OrderProcessing", "OrderReturned"],
      "description": "The current status of the order."
    },
    "orderDate": {
      "type": "string",
      "format": "date-time",
      "description": "Date order was placed."
    },
    "customer": {
      "oneOf": [
        { "$ref": "schema-org-person-schema.json" },
        { "$ref": "schema-org-organization-schema.json" }
      ],
      "description": "Party placing the order."
    },
    "seller": {
      "oneOf": [
        { "$ref": "schema-org-person-schema.json" },
        { "$ref": "schema-org-organization-schema.json" }
      ],
      "description": "An entity which offers goods or services."
    },
    "broker": {
      "oneOf": [
        { "$ref": "schema-org-person-schema.json" },
        { "$ref": "schema-org-organization-schema.json" }
      ],
      "description": "An entity that arranges for the exchange."
    },
    "orderedItem": {
      "oneOf": [
        { "$ref": "#/$defs/OrderItem" },
        { "type": "array", "items": { "$ref": "#/$defs/OrderItem" } },
        { "$ref": "schema-org-product-schema.json" }
      ],
      "description": "The item ordered."
    },
    "acceptedOffer": {
      "oneOf": [
        { "$ref": "schema-org-offer-schema.json" },
        { "type": "array", "items": { "$ref": "schema-org-offer-schema.json" } }
      ],
      "description": "The offer(s) that were accepted as part of this order."
    },
    "billingAddress": {
      "$ref": "schema-org-postal-address-schema.json",
      "description": "The billing address for the order."
    },
    "paymentMethod": {
      "type": "string",
      "description": "The name of the credit card or other method of payment for the order."
    },
    "paymentMethodId": {
      "type": "string",
      "description": "An identifier for the method of payment used."
    },
    "paymentUrl": {
      "type": "string",
      "format": "uri",
      "description": "The URL for sending a payment."
    },
    "paymentDueDate": {
      "type": "string",
      "format": "date-time",
      "description": "The date that payment is due."
    },
    "discount": {
      "oneOf": [
        { "type": "number" },
        { "type": "string" }
      ],
      "description": "Any discount applied to the order."
    },
    "discountCode": {
      "type": "string",
      "description": "Code used to redeem a discount."
    },
    "discountCurrency": {
      "type": "string",
      "pattern": "^[A-Z]{3}$",
      "description": "The currency of the discount."
    },
    "isGift": {
      "type": "boolean",
      "description": "Was the offer accepted as a gift for someone other than the buyer."
    },
    "orderDelivery": {
      "$ref": "#/$defs/ParcelDelivery",
      "description": "The delivery of the parcel related to this order."
    },
    "confirmationNumber": {
      "type": "string",
      "description": "A number confirming the given order."
    },
    "url": {
      "type": "string",
      "format": "uri",
      "description": "URL of the order."
    }
  },
  "$defs": {
    "OrderItem": {
      "type": "object",
      "description": "An order item is a line of an order.",
      "properties": {
        "@type": { "type": "string", "const": "OrderItem" },
        "orderItemNumber": { "type": "string", "description": "The identifier of the order item." },
        "orderQuantity": { "type": "integer", "description": "The number of the item ordered." },
        "orderItemStatus": { "type": "string", "enum": ["OrderCancelled", "OrderDelivered", "OrderInTransit", "OrderPaymentDue", "OrderPickupAvailable", "OrderProblem", "OrderProcessing", "OrderReturned"], "description": "The current status of the order item." },
        "orderedItem": { "type": "object", "properties": { "@type": { "type": "string" }, "name": { "type": "string" } }, "description": "The item ordered." }
      }
    },
    "ParcelDelivery": {
      "type": "object",
      "description": "The delivery of a parcel.",
      "properties": {
        "@type": { "type": "string", "const": "ParcelDelivery" },
        "trackingNumber": { "type": "string", "description": "Shipper tracking number." },
        "trackingUrl": { "type": "string", "format": "uri", "description": "Tracking URL for the parcel delivery." },
        "deliveryStatus": { "type": "string", "description": "New entry added as the package is delivered." },
        "expectedArrivalFrom": { "type": "string", "format": "date-time", "description": "The earliest date the package may arrive." },
        "expectedArrivalUntil": { "type": "string", "format": "date-time", "description": "The latest date the package may arrive." },
        "carrier": { "$ref": "schema-org-organization-schema.json", "description": "The party responsible for the parcel delivery." },
        "deliveryAddress": { "$ref": "schema-org-postal-address-schema.json", "description": "Destination address." }
      }
    }
  }
}