8 January 2026
Composable Commerce
HTTP API
Enhancement
CartsQuotesOrdersGraphQL
With the new purchaseOrderNumber field on Cart, Buyers can track their purchase order number from the very beginning of the shopping journey, before creating a Quote Request or an Order.
When an Order or Quote Request is created from a Cart with a purchaseOrderNumber, the value is automatically inherited unless explicitly overridden in the draft.

Changes:

  • [API] Added optional purchaseOrderNumber field to Cart and CartDraft.
  • [API] Added setPurchaseOrderNumber update action to the Carts API.
  • [API] Added CartPurchaseOrderNumberSet Message.
  • [API] Updated OrderFromCartDraft to inherit purchaseOrderNumber from Cart if not provided.
  • [API] Updated QuoteRequestDraft to inherit purchaseOrderNumber from Cart if not provided.
  • [GraphQL API] Changed the Cart type:
    • Added the purchaseOrderNumber field to the Cart type.
  • [GraphQL API] Changed the CartDraft type:
    • Added the purchaseOrderNumber field to the CartDraft type.
  • [GraphQL API] Changed the CartUpdateAction type:
    • Added the setPurchaseOrderNumber field to the CartUpdateAction type.

The following changes were introduced in terms of GraphQL SDL:

extend type Cart {
  purchaseOrderNumber: String
}

extend input CartDraft {
  purchaseOrderNumber: String
}

extend input CartUpdateAction {
  setPurchaseOrderNumber: SetCartPurchaseOrderNumber
}

type CartPurchaseOrderNumberSet implements MessagePayload {
  purchaseOrderNumber: String
  oldPurchaseOrderNumber: String
  type: String!
}

input SetCartPurchaseOrderNumber {
  purchaseOrderNumber: String
}