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

# Terms and conditions

> Create terms records, attach them to method options, and control whether Supercycle requires customer acceptance before renting.

<Info>
  Terms and conditions are currently in beta. Enable them under [Settings > Beta features](https://admin.shopify.com/apps/supercycle/settings/features) before getting started.
</Info>

Terms and conditions let you require customers to accept a linked policy before they rent. Each **terms** record is a customer-facing title plus URL — for example, `Rental terms` linking to `/pages/rental-terms`.

The **Terms and conditions** section on [Settings > Risk](https://admin.shopify.com/apps/supercycle/settings/risk) is where you turn the feature on for your shop and manage those records. Attach terms to individual method options or in bulk so only the rentals that need acceptance require it.

## Enable terms for your shop

<Steps>
  <Step title="Enable the beta feature">
    Go to [Settings > Beta features](https://admin.shopify.com/apps/supercycle/settings/features) and enable **Terms**. The **Terms and conditions** section on Risk settings appears after the beta flag is on.
  </Step>

  <Step title="Turn on the shop toggle">
    On [Settings > Risk](https://admin.shopify.com/apps/supercycle/settings/risk), find **Terms and conditions** and switch the knob on. Click **Save** on the Risk save bar.

    When the toggle is off, Supercycle does not require terms at checkout — even if method options still reference terms records.
  </Step>

  <Step title="Add a terms record">
    With the section expanded, click **Add terms**. Enter:

    * **Title** — the link text customers see on each acceptance row (for example, `Rental terms`).
    * **URL** — where the terms live. Paste a full URL, a store-relative path, or a bare domain.

    Click **Save** in the modal. Terms records save immediately; you don't need the Risk save bar for add, edit, or delete.
  </Step>

  <Step title="Attach terms to method options">
    Open a calendar, subscription, membership, or resale method option and expand **Require accepted terms**. Select one or more terms records, then save the option.

    To attach terms to many options at once, use the **Apply terms** [bulk action](/documentation/manage/products/managing-method-options#bulk-actions) on the options table. The options table also shows a **Terms** column listing which records each option requires.
  </Step>
</Steps>

## Attach terms to method options

Calendar, subscription, membership, and resale options can each require one or more terms records. The **Require accepted terms** section in the option modal mirrors how [contract templates](/documentation/configuration/risk/esignatures) work:

* Switch the section on to require acceptance. Supercycle pre-selects your first terms record; pick any combination from the table.
* Switch it off, or clear every row, to stop requiring terms on that option.
* The section only appears when the **Terms** beta feature is enabled and at least one terms record exists.

On the options table for each method, a **Terms** column shows the linked records (or **None**). Select multiple options and choose **Apply terms** from the bulk menu to set or replace terms in one step. Leave every row unchecked in the modal to remove all terms from the selected options.

## URL formats

Supercycle accepts any link customers should open to read the terms:

| You paste                            | Stored as                                                                                                            |
| ------------------------------------ | -------------------------------------------------------------------------------------------------------------------- |
| `/pages/terms-and-conditions`        | `/pages/terms-and-conditions` (relative to your storefront)                                                          |
| `/policies/terms-of-service`         | `/policies/terms-of-service`                                                                                         |
| `https://shop.com/pages/terms?utm=x` | Full URL kept as-is                                                                                                  |
| `example.com/terms`                  | `https://example.com/terms` (bare domains get `https://` so the link is not treated as relative to the product page) |

Use a Shopify page, a native policy page, or an external site — Supercycle does not provide a page picker because App Bridge has no Online Store page picker and the app does not request the `read_content` scope.

## Manage terms records

The terms table lists every record for your shop:

| Column      | Meaning                                                     |
| ----------- | ----------------------------------------------------------- |
| **Terms**   | The title you set                                           |
| **Created** | When the record was added                                   |
| **Options** | How many method options currently require this terms record |

Click a row to edit the title or URL, or delete the record. Deletion is blocked while the **Options** count is greater than zero — remove the terms from those method options first.

Past orders keep an acceptance snapshot (title and URL at the time of purchase) even if you later edit or delete the terms record.

## Customer acceptance on the storefront

When the shop toggle is on and the customer's selected method option requires terms, the [Methods app block](/developers/app-blocks/methods) on the product page shows an **Accept terms** section below the rental options.

* Each linked terms record gets its own tick row. The row label uses `I accept the {{ terms }}` with that record's **Title** as a link (for example, `I accept the Rental terms`). Links open in a new tab; clicking a link does not toggle the row.
* When an option requires more than one terms record, the customer must tick every row before adding to cart.
* **Add to cart** stays disabled until all required rows are ticked. An inline error appears with the message from [Languages](/documentation/online-store/languages) (`Please accept the terms and conditions` by default).
* Switching to a different rental option that requires different terms clears acceptance. The customer must tick each row again for the new terms set.

The section only appears when Supercycle's intent response includes terms for the current selection — that is, the **Terms** beta feature is enabled, the shop toggle is on, and the option has at least one linked terms record. Options with no linked terms show no acceptance rows.

Customize the section label, row label, and error message under **Supercycle > Settings > Languages** in the **Methods** section. The row label uses the `{{ terms }}` placeholder for the linked title.

## View acceptance on a cycle

When a customer accepts terms at checkout, Supercycle records one acceptance per terms record on the cycle. Open the cycle in **Supercycle > Cycles** and find the **Payment** card — accepted terms appear alongside [contracts](/documentation/configuration/risk/esignatures) and other attachments.

Each row shows:

* The terms **title** from the acceptance snapshot, linked to the terms URL when the record still exists.
* An **Accepted** badge. Hover for the acceptance date and time.

If you later delete the terms record, the cycle keeps the snapshot title but drops the link. Cycles created without storefront acceptance — for example draft orders, POS rentals, or imports — show no terms rows, the same as cycles with no linked contracts.

***

## Terms and conditions FAQs

<AccordionGroup>
  <Accordion title="Which rental methods support terms?">
    Calendar, subscription, membership, and resale options can all require terms records.
  </Accordion>

  <Accordion title="Why can't I delete a terms record?">
    Supercycle blocks deletion while method options still reference the record. Check the **Options** column — when the count is zero, delete is allowed. You can also remove the terms from affected options with the **Apply terms** bulk action.
  </Accordion>

  <Accordion title="What does the shop toggle do?">
    The knob on **Terms and conditions** is a shop-wide kill switch. With it off, Supercycle skips terms on checkout intents even when the **Terms** beta feature is on and options are linked. Turn it on when you're ready to enforce acceptance.
  </Accordion>

  <Accordion title="Why don't I see Terms and conditions on Risk settings?">
    Enable **Terms** under [Settings > Beta features](https://admin.shopify.com/apps/supercycle/settings/features). The Risk section only appears after the beta flag is on.
  </Accordion>

  <Accordion title="Can I require more than one terms record per option?">
    Yes. Select multiple rows in the option modal or in **Apply terms**. Customers must tick every linked row on the product page before checkout completes.
  </Accordion>

  <Accordion title="Why is add to cart disabled even though dates and stock look fine?">
    Check whether the selected option requires terms and the customer has ticked every acceptance row on the product page. The Methods block disables add to cart until all required terms are accepted, the same way it blocks invalid date ranges or out-of-stock rentals.
  </Accordion>

  <Accordion title="Why doesn't a cycle show terms acceptance?">
    Only cycles where the customer accepted terms at checkout show rows on the Payment card. Rentals created through draft orders, POS, or imports that bypass the storefront checkbox have no acceptance record.
  </Accordion>
</AccordionGroup>
