> ## 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.

# CheckoutWidgetConfigInput

> A widget's complete settings. Pass exactly one member. Settings you leave out of it are cleared.

**contentBlock** `[CheckoutWidgetContentBlockConfigInput](/docs/api-reference/v3/reference/checkout/checkout-widget-content-block-config-input)`

A content block.

**fields**

**sections** `[\[CheckoutWidgetContentSectionInput!\]!](/docs/api-reference/v3/reference/checkout/checkout-widget-content-section-input)` *required*

Sections, in order. At most 5.

**fields**

**description** `String`

Body text.

**id** `String`

The section's id. Omit for a new section.

**imageUrl** `String`

Image.

**title** `String`

Heading.

**failedDiscountRescue** `[CheckoutWidgetFailedDiscountRescueConfigInput](/docs/api-reference/v3/reference/checkout/checkout-widget-failed-discount-rescue-config-input)`

A failed discount rescue.

**fields**

**buttonText** `String!` *required*

The claim button's label.

**discountCodeId** `ID`

The id of the discount it offers, as in discountCode(id:). The widget offers nothing without one.

**text** `String!` *required*

The message.

**fulfillmentCutoff** `[CheckoutWidgetFulfillmentCutoffConfigInput](/docs/api-reference/v3/reference/checkout/checkout-widget-fulfillment-cutoff-config-input)`

A fulfillment cutoff.

**fields**

**backgroundColor** `String!` *required*

Background color, as hex.

**iconColor** `String!` *required*

Icon color, as hex.

**text** `String!` *required*

The message. \{\{order\_cutoff\_time}}, \{\{day\_of\_order\_cutoff\_time}} and \{\{fastest\_delivery\_date}} are replaced.

**imageBlock** `[CheckoutWidgetImageBlockConfigInput](/docs/api-reference/v3/reference/checkout/checkout-widget-image-block-config-input)`

An image block.

**fields**

**imageJustification** `[CheckoutWidgetImageJustification!](/docs/api-reference/v3/reference/checkout/checkout-widget-image-justification)` *required*

Where the image sits.

**imageUrl** `String`

The image. The widget shows nothing without one.

**imageWidth** `String!` *required*

Pixels from 30 to 360, as a string, or "FULL".

**lowProfileProductUpsell** `[CheckoutWidgetLowProfileProductUpsellConfigInput](/docs/api-reference/v3/reference/checkout/checkout-widget-low-profile-product-upsell-config-input)`

A low-profile product upsell.

**fields**

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

The add button's color, as hex.

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

The add button's text color, as hex.

**excludedProductTags** `[String!]`

Products with these tags are never upsold.

**fallbackProductTags** `[String!]`

Products to fill empty slots with, by tag.

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

Upsell slots, in order. At most 3.

**fields**

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

A product from a collection.

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

One specific product.

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

Redo AI picks the product.

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

A product with any of these tags.

**productReviews** `[CheckoutWidgetProductReviewsConfigInput](/docs/api-reference/v3/reference/checkout/checkout-widget-product-reviews-config-input)`

A product reviews widget.

**fields**

**display** `[CheckoutWidgetReviewsDisplayInput!](/docs/api-reference/v3/reference/checkout/checkout-widget-reviews-display-input)` *required*

Which parts of a review are shown.

**fields**

**showProductName** `Boolean!` *required*

Product name.

**showReviewBody** `Boolean!` *required*

Review text.

**showReviewTitle** `Boolean!` *required*

Review title.

**showReviewerName** `Boolean!` *required*

Reviewer's name.

**showVerifiedBadge** `Boolean!` *required*

Verified buyer badge.

**minRating** `Int!` *required*

Lowest rating shown, from 1 to 5.

**provider** `[CheckoutWidgetReviewsProvider!](/docs/api-reference/v3/reference/checkout/checkout-widget-reviews-provider)` *required*

Where the reviews come from.

**shippingOptionContent** `[CheckoutWidgetShippingOptionContentConfigInput](/docs/api-reference/v3/reference/checkout/checkout-widget-shipping-option-content-config-input)`

Shipping option content.

**fields**

**backgroundColor** `String!` *required*

Background color, as hex.

**description** `String!` *required*

Body text.

**imageUrl** `String`

Image.

**title** `String!` *required*

Heading.

**shippingOptionImage** `[CheckoutWidgetShippingOptionImageConfigInput](/docs/api-reference/v3/reference/checkout/checkout-widget-shipping-option-image-config-input)`

A shipping option image.

**fields**

**imageJustification** `[CheckoutWidgetImageJustification!](/docs/api-reference/v3/reference/checkout/checkout-widget-image-justification)` *required*

Where the image sits.

**imageUrl** `String`

The image.

**imageWidth** `String!` *required*

Pixels from 30 to 360, as a string, or "FULL".

**shippingOptionProductUpsell** `[CheckoutWidgetShippingOptionProductUpsellConfigInput](/docs/api-reference/v3/reference/checkout/checkout-widget-shipping-option-product-upsell-config-input)`

A shipping option upsell.

**fields**

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

The add button's label.

**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.

**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.

**progressBar** `[CheckoutWidgetProgressBarInput](/docs/api-reference/v3/reference/checkout/checkout-widget-progress-bar-input)`

Progress bar above the products. Omit for none.

**fields**

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

The cart total to reach.

**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.

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

Upsell slots, in order. At most 3.

**fields**

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

A product from a collection.

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

One specific product.

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

Redo AI picks the product.

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

A product with any of these tags.

**thresholdUpsell** `[CheckoutWidgetThresholdUpsellConfigInput](/docs/api-reference/v3/reference/checkout/checkout-widget-threshold-upsell-config-input)`

A threshold upsell.

**fields**

**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.

**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.

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

One specific product.

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

Redo AI picks the product.

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

A product with any of these 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.