Home
Storefront & display

Translate or remove the "Purchase type: Preorder" cart text

Hide the fixed English 'Purchase type: Preorder' cart property and show a translated line in its place.

Use this guide if customers see "Purchase type: Preorder" in their cart or at checkout and you want it in another language, or removed.

The

Why you can't translate it directly

"Purchase type: Preorder" is a line item property STOQ adds to the cart, not a setting. It's added automatically whenever an offer runs in line item property mode, which is when Use Shopify purchase option is turned off, or the customer is a B2B buyer. Unlike the button, badge, disclaimer, and custom cart attribute, this property is fixed English in the code, so it isn't in STOQ's offer translator and there's no field to type a translation into. It shows in English on every offer in this mode.

If an offer instead uses Use Shopify purchase option for a regular (non-B2B) customer, you won't hit this: the cart shows the selling plan name, which Shopify translates natively through its own selling-plan translation. Switching modes is a larger configuration change though, so most merchants use the workaround below.

Set it up

You add your own translated cart line, then hide the fixed English one with CSS.

1. Add a translated custom cart attribute

1

Turn on the custom cart attribute

  1. Go to Preorders > Offers and open the offer.
  2. Click Customize, then in the editor expand More settings and click Advanced.
  3. Check Add custom cart attribute, and in the Custom cart attribute field enter your wording in key:value format, for example Purchase type: Preorder in your base language. You can use variables such as {{ name }}, {{ payment }}, {{ discount }}, and {{ date }}; click Review available variables in the field's help text for the full list.

Preorders Offers tab in the STOQ app

The offer Overview tab with the Customize button

More settings expanded with Advanced in the offer editor

The Add custom cart attribute checkbox and Custom cart attribute field

2

Translate it for each language

Translate the Custom cart attribute the same way you translate other offer text: open the offer's translations and enter the wording for each target language. See Translate into other languages.

STOQ doesn't ship a default translation for this field in any language, so type each language's wording in yourself.

2. Hide the original English property with CSS

The fixed "Purchase type: Preorder" property and your new custom attribute render as sibling cart properties with the same class, so you can't hide one by class alone. Target it by position instead.

1

Open the Custom CSS field

In the same Advanced section, scroll to Currency & custom styles and use the Custom CSS field. See Customize preorder elements with CSS.

2

Hide the property by position

Add a rule that targets the property's position in the cart's property list, for example:

dl.cart-items__properties > :nth-child(3) {
  display: none !important;
}

The exact selector and position depend on your theme, since the class name and how many properties show (and in what order) vary between themes.

3

Preview before publishing

Open your cart and confirm the rule hides "Purchase type: Preorder" and not your new custom attribute. Adjust the nth-child number until the right line is hidden, then save.

Limitations

  • This is a display-only workaround, not a real translation. The underlying property is still sent in English to Shopify admin, POS, and any API or headless integration; only the storefront cart display changes.
  • If you later change the offer's cart properties (add or remove another attribute, or reorder them), the nth-child position can shift and hide the wrong line. Re-check it after any such change.

FAQ

Why is there no translation field for 'Purchase type: Preorder'?

It's a fixed English property in STOQ's code, not a configurable setting, so it never appears in the offer translator. The custom cart attribute is the translatable line you add in its place.

Can I just remove it without adding a replacement?

Yes. Skip the custom cart attribute and apply only the CSS rule. With nothing in its place, be extra careful with the nth-child position so you hide the intended line.

Will this change the order in Shopify admin or on POS?

No. The property is still recorded in English everywhere off the storefront (admin, POS, API). This only affects what the shopper sees in the cart.

Why does my offer not show 'Purchase type: Preorder' at all?

That offer is likely using Use Shopify purchase option for a non-B2B customer, which shows the selling plan name instead. The fixed property only appears in line item property mode or for B2B buyers.