> For the complete documentation index, see [llms.txt](https://docs.spectrumcustomizer.com/integration/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.spectrumcustomizer.com/integration/ecommerce/generate-cart-item.md).

# Generate Cart Item

As an alternative, or supplemental, to the traditional [Add to Cart](/integration/ecommerce/add-to-cart.md) and [Save Design](/integration/ecommerce/save-design.md) methods, Spectrum can generate the payload data for a cart item.

An e-commerce system can call the following method, provided by Spectrum on the window object:

```javascript
window.spectrumGenerateCartItem() // returns a promise
```

Which will trigger Spectrum to return the payload data via a native promise.

```javascript
  // payload.recipeSetId: string
  // payload.items: array | null
  // payload.items[n]: object
  // payload.items[n].sku: string | null
  // payload.items[n].name: string | null
  // payload.items[n].quantity: number | null
  // payload.primaryThumbnailAngle: string | null
  // payload.thumbnailsByAngle: array | null
  // payload.thumbnailsByAngle[n].angleName: string
  // payload.thumbnailsByAngle[n].url: string
  // payload.options: object | null
  // payload.options[optionName]: string
```
