title: "Order Workflow"
An Order is a collection of one or more ProductVariants which can be purchased by a Customer. Orders are represented internally by the Order entity and in the GraphQL API by the Order type.
Every Order has a state property of type OrderState. The following diagram shows the default states and how an Order transitions from one to the next.
{{% alert %}} Note that this default workflow can be modified to better fit your business processes. See the Customizing the Order Process guide. {{< /alert >}}
{{< figure src="./order_state_diagram.png" >}}
In Vendure an Order consists of one or more OrderLines (representing a given quantity of a particular SKU), which in turn contain one or more OrderItems (which represent the individual physical units).
Here is a simplified diagram illustrating this relationship:
{{< figure src="./order_class_diagram.png" >}}
So if the customer adds 2 Widgets to the Order, there will be one OrderLine containing two OrderItems, one for each of the added Widgets.
The GraphQL Shop API Guide lists the GraphQL operations you will need to implement this workflow in your storefront client application.