API
Core Resources

Bundle productsNew

A Bundle Product describes a product that is sold as a bundle: its variants, the collections customers can choose the contents from, the default contents and the display settings. Bundle products can be listed and retrieved through the API; they are created and edited in the Recharge merchant portal.

This resource is new in the V2 reference. It also works when you send X-Recharge-Version: 2021-11.

#The bundle product object

Attributes

  • idinteger
    Unique numeric identifier for the Bundle Product.
  • An object containing the delivery cycle configuration of the Bundle Product.
  • Whether customers can choose the contents of the bundle.
  • An object containing the settings used to display the bundle to customers.
  • The version of the format used by layout_settings.
  • max_quantity_per_variantinteger · nullable
    The maximum quantity of a single item that can be selected in the bundle.
  • price_rulestring · nullable
    How the price of the bundle is determined.
    Possible values
    dynamicfixed
  • Whether the contents of the bundle are reset after each order.
  • settingsobject
    An object containing additional settings of the Bundle Product.
    Show child attributesHide child attributes3
  • titlestring
    The title of the Bundle Product.
  • variantsarray of objects
    An array of the variants of the Bundle Product.
    Show child attributesHide child attributes11
    • idinteger
      Unique numeric identifier for the bundle variant.
    • positioninteger
      The position in which the bundle variant is displayed.
    • updated_atdatetime
      The date and time when the bundle variant was last updated.
    • created_atdatetime
      The date and time when the bundle variant was created.
    • enabledboolean
      Whether the bundle variant is enabled.
    • The id of the variant as it appears in the external e-commerce platform.
    • The number of items the bundle variant contains.
    • option_sourcesarray of objects
      An array of the collections from which the contents of the bundle variant can be chosen.
      Show child attributesHide child attributes8
      • idinteger
        Unique numeric identifier for the option source.
      • The platform the option source comes from, for example shopify.
      • created_atdatetime
        The date and time when the option source was created.
      • The id of the collection, as it appears in the source platform, that contents can be chosen from.
      • positioninteger
        The position in which the option source is displayed.
      • quantity_maxinteger · nullable
        The maximum number of items that can be chosen from this option source.
      • quantity_mininteger · nullable
        The minimum number of items that must be chosen from this option source.
      • updated_atdatetime
        The date and time when the option source was last updated.
    • rangesarray of objects
      An array of the quantity ranges allowed for the contents of the bundle variant.
      Show child attributesHide child attributes5
      • idinteger
        Unique numeric identifier for the range.
      • created_atdatetime
        The date and time when the range was created.
      • quantity_maxinteger · nullable
        The maximum number of items the bundle variant can contain.
      • The minimum number of items the bundle variant must contain.
      • updated_atdatetime
        The date and time when the range was last updated.
    • selection_defaultsarray of objects
      An array of the default contents of the bundle variant.
      Show child attributesHide child attributes5
      • idinteger
        Unique numeric identifier for the default selection.
      • created_atdatetime
        The date and time when the default selection was created.
      • The id of the variant, as it appears in the external e-commerce platform, that is included by default.
      • quantityinteger
        The quantity of the variant that is included by default.
      • updated_atdatetime
        The date and time when the default selection was last updated.
    • titlestring
      The title of the bundle variant.
  • updated_atdatetime
    The date and time when the Bundle Product was last updated.
  • created_atdatetime
    The date and time when the Bundle Product was created.
  • Whether the Bundle Product uses custom prices.
  • customization_windowinteger · nullable
    The customization window of the Bundle Product, which limits when customers can change its contents. null when there is no limit.
  • The message shown to customers when the contents can no longer be changed.
  • default_bundle_variant_idinteger · nullable
    The id of the bundle variant that is used by default.
  • The version of the format used by delivery_cycles.
  • descriptionstring · nullable
    The description of the Bundle Product.
  • The id of the product, as it appears in the external e-commerce platform, that is sold as a bundle.
The bundle product object
{
  "bundle_product": {
    "id": 51842,
    "created_at": "2026-03-02T15:04:31+00:00",
    "custom_prices": false,
    "customization_window": null,
    "customization_window_disabled_message": null,
    "default_bundle_variant_id": null,
    "delivery_cycles": {},
    "delivery_cycles_version": "2021-11",
    "description": null,
    "external_product_id": "7654321098",
    "is_customizable": true,
    "layout_settings": {},
    "layout_settings_version": "2021-11",
    "max_quantity_per_variant": 5,
    "price_rule": "fixed",
    "reset_box_contents": false,
    "settings": {
      "display_variants_as_separate_products_in_list": false,
      "dynamic_filter_products_by_discount": false,
      "show_product_and_variant_name_in_products_list": false
    },
    "title": "Build your own coffee box",
    "updated_at": "2026-03-02T15:04:31+00:00",
    "variants": [
      {
        "id": 90411,
        "created_at": "2026-03-02T15:04:31+00:00",
        "enabled": true,
        "external_variant_id": "44100001",
        "items_count": 6,
        "option_sources": [
          {
            "id": 77120,
            "created_at": "2026-03-02T15:04:31+00:00",
            "option_source_id": "301234567890",
            "position": 1,
            "quantity_max": 6,
            "quantity_min": 1,
            "source_platform": "shopify",
            "updated_at": "2026-03-02T15:04:31+00:00"
          }
        ],
        "position": 0,
        "ranges": [
          {
            "id": 3310,
            "created_at": "2026-03-02T15:04:31+00:00",
            "quantity_max": 6,
            "quantity_min": 6,
            "updated_at": "2026-03-02T15:04:31+00:00"
          }
        ],
        "selection_defaults": [
          {
            "id": 66204,
            "created_at": "2026-03-02T15:04:31+00:00",
            "external_variant_id": "44100777",
            "quantity": 6,
            "updated_at": "2026-03-02T15:04:31+00:00"
          }
        ],
        "title": "6 bags",
        "updated_at": "2026-03-02T15:04:31+00:00"
      }
    ]
  }
}

#List bundle products

GET/bundle_products
Returns a list of the Bundle Products of the store.
Scoperead_bundle_products

Query parameters

  • limitinteger
    The number of results to return. Defaults to 50; the maximum is 250.
  • cursorstring
    The cursor of the page to return, taken from next_cursor or previous_cursor in a previous response. Only limit can be sent together with cursor.
  • pageinteger
    The page of results to show. Page-based pagination is deprecated in favor of cursor.
    Only for API tokens that are still allowed to use page-based pagination; other tokens must use cursor.
  • sort_bystring
    The order in which the bundle products are returned. Defaults to id-desc.
    Possible values
    id-ascid-descupdated_at-ascupdated_at-desc
  • Filter bundle products by external_product_id. If passing multiple values, must be comma separated.
  • Return the bundle products created after the given date.
  • Return the bundle products created before the given date.
  • Return the bundle products updated after the given date.
  • Return the bundle products updated before the given date.
  • Filter bundle products by kind. If passing multiple values, must be comma separated. preset returns bundles that are not customizable; fixed and dynamic return customizable bundles with that price_rule.
    Possible values
    presetfixeddynamic
  • Return the bundle products with the given reset_box_contents value.
  • publishedboolean
    Return only the bundle products that are published (true) or not published (false).
  • Return the bundle products whose title contains the given text.
GET/bundle_products
curl 'https://api.rechargeapps.com/bundle_products' \
  -H 'X-Recharge-Version: v2' \
  -H 'X-Recharge-Access-Token: your_api_token'
Response
{
  "next_cursor": null,
  "previous_cursor": null,
  "bundle_products": [
    {
      "id": 51842,
      "created_at": "2026-03-02T15:04:31+00:00",
      "custom_prices": false,
      "customization_window": null,
      "customization_window_disabled_message": null,
      "default_bundle_variant_id": null,
      "delivery_cycles": {},
      "delivery_cycles_version": "2021-11",
      "description": null,
      "external_product_id": "7654321098",
      "is_customizable": true,
      "layout_settings": {},
      "layout_settings_version": "2021-11",
      "max_quantity_per_variant": 5,
      "price_rule": "fixed",
      "reset_box_contents": false,
      "settings": {
        "display_variants_as_separate_products_in_list": false,
        "dynamic_filter_products_by_discount": false,
        "show_product_and_variant_name_in_products_list": false
      },
      "title": "Build your own coffee box",
      "updated_at": "2026-03-02T15:04:31+00:00",
      "variants": [
        {
          "id": 90411,
          "created_at": "2026-03-02T15:04:31+00:00",
          "enabled": true,
          "external_variant_id": "44100001",
          "items_count": 6,
          "option_sources": [
            {
              "id": 77120,
              "created_at": "2026-03-02T15:04:31+00:00",
              "option_source_id": "301234567890",
              "position": 1,
              "quantity_max": 6,
              "quantity_min": 1,
              "source_platform": "shopify",
              "updated_at": "2026-03-02T15:04:31+00:00"
            }
          ],
          "position": 0,
          "ranges": [
            {
              "id": 3310,
              "created_at": "2026-03-02T15:04:31+00:00",
              "quantity_max": 6,
              "quantity_min": 6,
              "updated_at": "2026-03-02T15:04:31+00:00"
            }
          ],
          "selection_defaults": [
            {
              "id": 66204,
              "created_at": "2026-03-02T15:04:31+00:00",
              "external_variant_id": "44100777",
              "quantity": 6,
              "updated_at": "2026-03-02T15:04:31+00:00"
            }
          ],
          "title": "6 bags",
          "updated_at": "2026-03-02T15:04:31+00:00"
        }
      ]
    }
  ]
}

#Retrieve a bundle product

GET/bundle_products/{id}
Retrieves a single Bundle Product by its id. Returns a 404 when it does not exist or has been deleted.
Scoperead_bundle_products
GET/bundle_products/{id}
curl 'https://api.rechargeapps.com/bundle_products/129593' \
  -H 'X-Recharge-Version: v2' \
  -H 'X-Recharge-Access-Token: your_api_token'
Response
{
  "bundle_product": {
    "id": 51842,
    "created_at": "2026-03-02T15:04:31+00:00",
    "custom_prices": false,
    "customization_window": null,
    "customization_window_disabled_message": null,
    "default_bundle_variant_id": null,
    "delivery_cycles": {},
    "delivery_cycles_version": "2021-11",
    "description": null,
    "external_product_id": "7654321098",
    "is_customizable": true,
    "layout_settings": {},
    "layout_settings_version": "2021-11",
    "max_quantity_per_variant": 5,
    "price_rule": "fixed",
    "reset_box_contents": false,
    "settings": {
      "display_variants_as_separate_products_in_list": false,
      "dynamic_filter_products_by_discount": false,
      "show_product_and_variant_name_in_products_list": false
    },
    "title": "Build your own coffee box",
    "updated_at": "2026-03-02T15:04:31+00:00",
    "variants": [
      {
        "id": 90411,
        "created_at": "2026-03-02T15:04:31+00:00",
        "enabled": true,
        "external_variant_id": "44100001",
        "items_count": 6,
        "option_sources": [
          {
            "id": 77120,
            "created_at": "2026-03-02T15:04:31+00:00",
            "option_source_id": "301234567890",
            "position": 1,
            "quantity_max": 6,
            "quantity_min": 1,
            "source_platform": "shopify",
            "updated_at": "2026-03-02T15:04:31+00:00"
          }
        ],
        "position": 0,
        "ranges": [
          {
            "id": 3310,
            "created_at": "2026-03-02T15:04:31+00:00",
            "quantity_max": 6,
            "quantity_min": 6,
            "updated_at": "2026-03-02T15:04:31+00:00"
          }
        ],
        "selection_defaults": [
          {
            "id": 66204,
            "created_at": "2026-03-02T15:04:31+00:00",
            "external_variant_id": "44100777",
            "quantity": 6,
            "updated_at": "2026-03-02T15:04:31+00:00"
          }
        ],
        "title": "6 bags",
        "updated_at": "2026-03-02T15:04:31+00:00"
      }
    ]
  }
}