Cancel Flow

Multi-language support in the cancel flow

How Garde detects your member's language and how to set up translations for your cancel reasons, save offers, and flow copy.

Garde's cancel flow supports ten languages out of the box. When a member opens the flow, Garde automatically selects the best language match — no extra setup needed for English. For other languages, you add translations directly in the flow config editor.

How Garde detects the language

When a member visits the cancel flow, Garde checks these signals in order:

  1. ?lang= URL parameter — if the link to your cancel flow includes ?lang=es, Garde uses Spanish. This is the most explicit signal and overrides everything else.
  2. Accept-Language header — if no ?lang= is set, Garde reads the browser's preferred language from the HTTP headers.
  3. Winery default locale — if the browser language doesn't match a language you've configured translations for, Garde falls back to your winery's default locale setting.
  4. English — if none of the above produce a match, Garde uses English.

For most members visiting your flow from their browser, no special URL setup is required. If you want to force a specific language — for example, for a French-speaking member club — include ?lang=fr in the cancel flow URL.

Supported languages

Garde supports ten locales: English (en), French (fr), German (de), Spanish (es), Portuguese (pt), Italian (it), Dutch (nl), Chinese (zh), Japanese (ja), and Korean (ko).

Setting your default locale

Your winery's default locale determines what language Garde uses when it can't detect a preference. To set it:

  1. Go to Admin → Config for your winery
  2. In the Flow Config section, look for the Default language setting
  3. Select the language your members most commonly use
  4. Save

For a US-based wine club, en is the right default. For a French-speaking club, set fr so members without a detected preference see French automatically.

Adding translations in the config editor

Each text field in your cancel reasons and save offers supports multiple locales. To add a translation:

  1. Go to Admin → Config → Flow Config
  2. Open any cancel reason or save offer
  3. You'll see a tab strip at the top of the text fields (EN, FR, DE, etc.)
  4. Click + Add Language to add a new locale tab
  5. Enter the translated copy in each field for that locale
  6. Save

If a locale tab is empty for a particular field, Garde falls back to the English value for that field. You don't need to translate every field at once — you can add translations incrementally and the flow will use English for anything not yet translated.

The fallback indicator

In the config editor, fields that are falling back to English are shown with a small indicator. This lets you see at a glance which parts of your flow are fully translated and which are showing English as a fallback.

When reviewing your translations, look for any save offer headlines or decline button text that still shows the fallback indicator — those are the most visible pieces of copy members will see.

Testing your translations

To preview the flow in a specific language, append ?lang=XX to your cancel flow URL:

`` your-garde-url.vercel.app/cancel?winery=your-winery-id&cid=...&sub=...&lang=fr ``

Replace fr with whichever locale you want to test. You don't need a real member URL — you can preview the reason selection screen with any winery ID to check that your translations are displaying correctly.


Next: Multi-language email templates — how to add translated versions of your cancel notification and retained confirmation emails.