> ## Documentation Index
> Fetch the complete documentation index at: https://developers.redo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CheckoutWidgetThresholdUpsellConfigInput

> Settings of a threshold upsell.

**addToCartButtonColor** `String!` *required*

The add button's color, as hex.

**addToCartButtonText** `String!` *required*

The add button's label.

**addToCartButtonTextColor** `String!` *required*

The add button's text color, as hex.

**defaultDiscount** `[CheckoutWidgetDiscountInput](/docs/api-reference/v3/reference/checkout/checkout-widget-discount-input)`

Discount for slots with none of their own.

**fields**

**fixedAmount** `[MoneyInput](/docs/api-reference/v3/reference/common/money-input)`

Amount off.

**fields**

**amount** `[Decimal!](/docs/api-reference/v3/reference/common/decimal)` *required*

The amount as an exact decimal string (e.g. "19.99").

**currency** `String!` *required*

ISO 4217 currency code (e.g. USD).

**percentage** `Float`

Percent off, above 0 and at most 100.

**excludedProductTags** `[String!]`

Products with these tags are never upsold.

**fallbackProductTags** `[String!]`

Products to fill empty slots with, by tag.

**progressBarColor** `String!` *required*

The filled part of the progress bar, as hex.

**sources** `[\[CheckoutWidgetUpsellSourceInput!\]](/docs/api-reference/v3/reference/checkout/checkout-widget-upsell-source-input)`

Upsell slots, in order.

**fields**

**collection** `[CheckoutWidgetCollectionSourceInput](/docs/api-reference/v3/reference/checkout/checkout-widget-collection-source-input)`

A product from a collection.

**fields**

**discount** `[CheckoutWidgetDiscountInput](/docs/api-reference/v3/reference/checkout/checkout-widget-discount-input)`

Discount for this source. Overrides the widget's default.

**fallbackIfNotAvailable** `Boolean`

Whether the widget moves on to fallback tags when this source has nothing available.

**shopifyCollectionId** `String!` *required*

The Shopify collection.

**title** `String`

The collection's title, shown in the Redo dashboard.

**product** `[CheckoutWidgetProductSourceInput](/docs/api-reference/v3/reference/checkout/checkout-widget-product-source-input)`

One specific product.

**fields**

**discount** `[CheckoutWidgetDiscountInput](/docs/api-reference/v3/reference/checkout/checkout-widget-discount-input)`

Discount for this source. Overrides the widget's default.

**fallbackIfNotAvailable** `Boolean`

Whether the widget moves on to fallback tags when this source has nothing available.

**imageUrl** `String`

The product's image, shown in the Redo dashboard.

**shopifyProductId** `String!` *required*

The Shopify product.

**title** `String`

The product's title, shown in the Redo dashboard.

**redoAi** `[CheckoutWidgetRedoAiSourceInput](/docs/api-reference/v3/reference/checkout/checkout-widget-redo-ai-source-input)`

Redo AI picks the product.

**fields**

**discount** `[CheckoutWidgetDiscountInput](/docs/api-reference/v3/reference/checkout/checkout-widget-discount-input)`

Discount for this source. Overrides the widget's default.

**tags** `[CheckoutWidgetTagsSourceInput](/docs/api-reference/v3/reference/checkout/checkout-widget-tags-source-input)`

A product with any of these tags.

**fields**

**discount** `[CheckoutWidgetDiscountInput](/docs/api-reference/v3/reference/checkout/checkout-widget-discount-input)`

Discount for this source. Overrides the widget's default.

**fallbackIfNotAvailable** `Boolean`

Whether the widget moves on to fallback tags when this source has nothing available.

**tags** `[String!]!` *required*

Product tags.

**styling** `[CheckoutWidgetUpsellStylingInput](/docs/api-reference/v3/reference/checkout/checkout-widget-upsell-styling-input)`

Product card styling.

**fields**

**hideZeroMinorUnits** `Boolean!` *required*

Show "$10" rather than "$10.00".

**imageAspectRatio** `[CheckoutWidgetImageAspectRatio](/docs/api-reference/v3/reference/checkout/checkout-widget-image-aspect-ratio)`

Product image shape. Omit for square.

**plainProductTitle** `Boolean!` *required*

Show product titles without emphasis.

**squareButtonCorners** `Boolean!` *required*

Square corners on the add button.

**squareImageBackdropCorners** `Boolean!` *required*

Square corners behind product images.

**threshold** `[MoneyInput!](/docs/api-reference/v3/reference/common/money-input)` *required*

The cart total to reach.

**fields**

**amount** `[Decimal!](/docs/api-reference/v3/reference/common/decimal)` *required*

The amount as an exact decimal string (e.g. "19.99").

**currency** `String!` *required*

ISO 4217 currency code (e.g. USD).

**thresholdNotReachedText** `String!` *required*

Shown until the cart total is reached. \{\{amount\_left}} is replaced with the amount left.

**thresholdReachedText** `String!` *required*

Shown once the cart total is reached.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.