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

# Managing method options

> You can manage method pricing options in bulk

Method options control how each rental method is priced and offered on a product. Once you have a lot of options across many products, Supercycle gives you tools to update them in bulk rather than editing one product at a time.

## Bulk actions

Open the options table for any method (Calendar, Membership, Subscription, or Resale), tick the options you want to update, and choose an action from the bulk menu.

<AccordionGroup>
  <Accordion title="Rename">
    Update the name shown on the product page selector and on line item properties. Liquid is supported, so you can reference option fields like `{{ resale_option.product.title }}`.
  </Accordion>

  <Accordion title="Update status">
    Enable or disable options in bulk. Disabled options are hidden from the storefront but preserved in your data so you can re-enable them later.
  </Accordion>

  <Accordion title="Update price">
    Recalculate prices using a Liquid formula (see below). Useful for percentage-based price changes, currency adjustments, or recalculating against the variant price.
  </Accordion>

  <Accordion title="Apply to markets">
    Target the selected options at specific Shopify [markets](/documentation/manage/products/multi-market-pricing). Leave the market selection empty to apply to **all markets**.
  </Accordion>

  <Accordion title="Apply to item conditions">
    Resale only. Target the selected options at specific item conditions (new, good, fair, poor) or all conditions.
  </Accordion>

  <Accordion title="Apply ID verification required">
    Require [identity verification](/documentation/configuration/risk/identity-verification) on the selected options. Customers checking out with these options will be prompted to verify their identity before fulfilment. Only available when identity verification is enabled on your store.
  </Accordion>

  <Accordion title="Apply add-ons">
    Attach one or more [add-ons](/documentation/manage/products/add-ons) to the selected options. The set you pick replaces each option's current add-ons wholesale — leave everything unchecked to remove all add-ons from the selected options.
  </Accordion>

  <Accordion title="Apply contracts">
    Attach one or more [contract templates](/documentation/configuration/risk/esignatures) to the selected options. Customers will be required to sign the templates after checkout. Leave the template selection empty to remove all contract templates from the selected options. Only available when e-signatures are enabled and at least one contract template exists.
  </Accordion>

  <Accordion title="Apply terms">
    Attach one or more [terms records](/documentation/configuration/risk/terms-and-conditions) to the selected options. Customers checking out with these options must accept every linked terms record before the rental proceeds. Leave every row unchecked to remove all terms from the selected options. Only available when the **Terms** beta feature is enabled and at least one terms record exists.
  </Accordion>

  <Accordion title="Delete">
    Remove the selected options. This is destructive and cannot be undone.
  </Accordion>
</AccordionGroup>

## Using formulas to update method options

You can use formulas to update method options in bulk. This is useful when you want to apply a consistent change across multiple options, such as increasing prices by a certain percentage.

<Frame type="glass" caption="Example of using a Liquid formula">
  <img src="https://mintcdn.com/supercycle/FB21qCJ7pWgA4GNp/images/update-options-liquid.png?fit=max&auto=format&n=FB21qCJ7pWgA4GNp&q=85&s=43007cfd3760bda40654484fd4ec6e7c" width="1484" height="988" data-path="images/update-options-liquid.png" />
</Frame>

#### Liquid references for method options

<AccordionGroup>
  <Accordion title="Resale option">
    <ResponseField name="product" type="product">
      The product associated with the option

      <Expandable title="product properties">
        <ResponseField name="title" type="string">
          The title of the product
        </ResponseField>

        <ResponseField name="variants" type="[variant]">
          <Expandable title="variant properties">
            <ResponseField name="title" type="string">
              The title of the variant
            </ResponseField>

            <ResponseField name="price" type="integer">
              The price of the variant in cents
            </ResponseField>
          </Expandable>
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="name" type="string">
      The name of the option
    </ResponseField>

    <ResponseField name="variant_application_type" type="string">
      How the option applies to variants. Either `"all"` (applies to all variants) or `"some"` (applies only to specific variants).
    </ResponseField>

    <ResponseField name="variant_application_shopify_ids" type="array">
      Array of Shopify variant IDs this option applies to. Only relevant when `variant_application_type` is `"some"`.
    </ResponseField>

    <ResponseField name="market_application_type" type="string">
      How the option applies to markets. Either `"all"` (available in all markets) or `"some"` (available only in specific markets).
    </ResponseField>

    <ResponseField name="market_application_shopify_ids" type="array">
      Array of Shopify market IDs this option is available in. Only relevant when `market_application_type` is `"some"`.
    </ResponseField>

    <ResponseField name="condition_application_type" type="string">
      How the option applies to item conditions. Either `"all"` (applies to all conditions) or `"some"` (applies only to specific conditions).
    </ResponseField>

    <ResponseField name="condition_application_values" type="array">
      Array of item condition values this option applies to (for example, `["new", "good"]`). Only relevant when `condition_application_type` is `"some"`.
    </ResponseField>

    <ResponseField name="checkout_price" type="integer">
      The checkout price of the option in cents
    </ResponseField>
  </Accordion>

  <Accordion title="Membership option">
    <ResponseField name="product" type="product">
      The product associated with the option

      <Expandable title="product properties">
        <ResponseField name="title" type="string">
          The title of the product
        </ResponseField>

        <ResponseField name="variants" type="[variant]">
          <Expandable title="variant properties">
            <ResponseField name="title" type="string">
              The title of the variant
            </ResponseField>

            <ResponseField name="price" type="integer">
              The price of the variant in cents
            </ResponseField>
          </Expandable>
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="name" type="string">
      The name of the option
    </ResponseField>

    <ResponseField name="variant_application_type" type="string">
      How the option applies to variants. Either `"all"` (applies to all variants) or `"some"` (applies only to specific variants).
    </ResponseField>

    <ResponseField name="variant_application_shopify_ids" type="array">
      Array of Shopify variant IDs this option applies to. Only relevant when `variant_application_type` is `"some"`.
    </ResponseField>

    <ResponseField name="market_application_type" type="string">
      How the option applies to markets. Either `"all"` (available in all markets) or `"some"` (available only in specific markets).
    </ResponseField>

    <ResponseField name="market_application_shopify_ids" type="array">
      Array of Shopify market IDs this option is available in. Only relevant when `market_application_type` is `"some"`.
    </ResponseField>

    <ResponseField name="condition_application_type" type="string">
      How the option applies to item conditions. Either `"all"` (applies to all conditions) or `"some"` (applies only to specific conditions).
    </ResponseField>

    <ResponseField name="condition_application_values" type="array">
      Array of item condition values this option applies to (for example, `["new", "good"]`). Only relevant when `condition_application_type` is `"some"`.
    </ResponseField>
  </Accordion>

  <Accordion title="Subscription option">
    <ResponseField name="product" type="product">
      The product associated with the option

      <Expandable title="product properties">
        <ResponseField name="title" type="string">
          The title of the product
        </ResponseField>

        <ResponseField name="variants" type="[variant]">
          <Expandable title="variant properties">
            <ResponseField name="title" type="string">
              The title of the variant
            </ResponseField>

            <ResponseField name="price" type="integer">
              The price of the variant in cents
            </ResponseField>
          </Expandable>
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="name" type="string">
      The name of the option
    </ResponseField>

    <ResponseField name="variant_application_type" type="string">
      How the option applies to variants. Either `"all"` (applies to all variants) or `"some"` (applies only to specific variants).
    </ResponseField>

    <ResponseField name="variant_application_shopify_ids" type="array">
      Array of Shopify variant IDs this option applies to. Only relevant when `variant_application_type` is `"some"`.
    </ResponseField>

    <ResponseField name="market_application_type" type="string">
      How the option applies to markets. Either `"all"` (available in all markets) or `"some"` (available only in specific markets).
    </ResponseField>

    <ResponseField name="market_application_shopify_ids" type="array">
      Array of Shopify market IDs this option is available in. Only relevant when `market_application_type` is `"some"`.
    </ResponseField>

    <ResponseField name="condition_application_type" type="string">
      How the option applies to item conditions. Either `"all"` (applies to all conditions) or `"some"` (applies only to specific conditions).
    </ResponseField>

    <ResponseField name="condition_application_values" type="array">
      Array of item condition values this option applies to (for example, `["new", "good"]`). Only relevant when `condition_application_type` is `"some"`.
    </ResponseField>
  </Accordion>

  <Accordion title="Calendar option">
    <ResponseField name="product" type="product">
      The product associated with the option

      <Expandable title="product properties">
        <ResponseField name="title" type="string">
          The title of the product
        </ResponseField>

        <ResponseField name="variants" type="[variant]">
          <Expandable title="variant properties">
            <ResponseField name="title" type="string">
              The title of the variant
            </ResponseField>

            <ResponseField name="price" type="integer">
              The price of the variant in cents
            </ResponseField>
          </Expandable>
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="name" type="string">
      The name of the option
    </ResponseField>

    <ResponseField name="variant_application_type" type="string">
      How the option applies to variants. Either `"all"` (applies to all variants) or `"some"` (applies only to specific variants).
    </ResponseField>

    <ResponseField name="variant_application_shopify_ids" type="array">
      Array of Shopify variant IDs this option applies to. Only relevant when `variant_application_type` is `"some"`.
    </ResponseField>

    <ResponseField name="market_application_type" type="string">
      How the option applies to markets. Either `"all"` (available in all markets) or `"some"` (available only in specific markets).
    </ResponseField>

    <ResponseField name="market_application_shopify_ids" type="array">
      Array of Shopify market IDs this option is available in. Only relevant when `market_application_type` is `"some"`.
    </ResponseField>

    <ResponseField name="condition_application_type" type="string">
      How the option applies to item conditions. Either `"all"` (applies to all conditions) or `"some"` (applies only to specific conditions).
    </ResponseField>

    <ResponseField name="condition_application_values" type="array">
      Array of item condition values this option applies to (for example, `["new", "good"]`). Only relevant when `condition_application_type` is `"some"`.
    </ResponseField>

    <ResponseField name="days" type="integer">
      The number of days for the calendar option
    </ResponseField>

    <ResponseField name="checkout_price" type="integer">
      The checkout price of the option in cents
    </ResponseField>
  </Accordion>
</AccordionGroup>

More information on using Liquid can be found [on Shopify's developer documentation](https://shopify.dev/docs/api/liquid).

## Targeting options across markets, variants, and conditions

Each option can be scoped so it only appears in certain contexts on the storefront:

* **[Markets](/documentation/manage/products/multi-market-pricing)** — show the option only in selected Shopify markets (e.g. region- or currency-specific pricing).
* **Variants** — apply to all variants or only a subset (e.g. one storage size on an electronics product).
* **Conditions** — resale only. Apply to all item conditions or only a subset (e.g. new vs. refurbished).

These filters combine: an option applies on the storefront when the current market, variant, and condition all match. Use this to model multi-market, multi-variant pricing matrices without duplicating products.
