Skip to content
TrustYourWebsite

"Buy Now" vs "Order": Why Your Button Text Matters Legally

5 April 2026

Your checkout button probably says "Place Order" or "Buy Now." In most EU countries, that's not good enough. The law says the button text must clearly tell the customer they're about to pay. Get it wrong, and your customer might not owe you anything at all.

What the law actually says

The EU Consumer Rights Directive, Article 8(2), requires that order buttons in online shops clearly indicate a payment obligation. The exact wording:

The trader shall ensure that the consumer, when placing his order, explicitly acknowledges that the order implies an obligation to pay.

This applies to every online shop selling to consumers in the EU. It doesn't matter if you're a one-person operation or a large retailer. If you sell online, your button text must comply.

Each EU country has implemented this rule in its own national law, and some are stricter than others about what counts as compliant wording.

Country-specific requirements

The Netherlands

Dutch law covers this in Burgerlijk Wetboek (BW) Article 6:230v. The button must communicate "bestelling met betalingsverplichting" (order with payment obligation). You don't have to use those exact words, but the message must be equally clear.

Compliant examples:

  • "Bestelling met betalingsverplichting"
  • "Bestellen en betalen"
  • "Kopen en betalen"

Non-compliant examples:

  • "Bestelling plaatsen"
  • "Bevestigen"
  • "Doorgaan"

Germany

Germany is the strictest. The BGB §312j(3) requires the button to read "zahlungspflichtig bestellen" (order with obligation to pay) or something equally unambiguous. German courts have been very literal about this.

Compliant examples:

  • "Zahlungspflichtig bestellen"
  • "Kostenpflichtig bestellen"
  • "Kaufen" (accepted by most courts, though debated)

Non-compliant examples:

  • "Bestellung abschließen"
  • "Weiter"
  • "Jetzt bestellen"

Other EU countries

France, Belgium, Austria and the rest follow the same directive, each with local implementations. The principle is the same everywhere: the customer must understand they're committing to pay before they click. In practice, a button that clearly combines "order" with "pay" will satisfy most national regulators.

What happens if your button text is wrong

This isn't a theoretical risk. If your button text doesn't clearly indicate a payment obligation, the contract may not be binding. The customer can argue they didn't knowingly agree to pay. That means:

  • No valid contract. You shipped the product, but the customer has no legal obligation to pay.
  • Refund claims. Customers who discover this can demand their money back.
  • Chargebacks. Payment disputes become much harder to win when your checkout didn't meet legal requirements.

Court cases that prove this matters

German courts have been especially active here. In 2014, the Bundesgerichtshof (Federal Court of Justice) ruled that buttons saying "Anmeldung" (registration) or "Weiter" (continue) did not create a valid payment obligation. Customers who clicked those buttons were not bound to pay.

A 2016 ruling by the Landgericht Berlin found that "Bestellung abschließen" (complete order) was not clear enough. The court said consumers could reasonably interpret this as completing a form, not committing to payment.

In the Netherlands, the ACM (Authority for Consumers and Markets) has investigated online shops for non-compliant button text. While published court decisions are fewer than in Germany, the ACM has the authority to fine businesses up to €900,000 for consumer law violations.

These cases share the same lesson. Courts take the wording literally. "Close enough" doesn't count.

Here's the problem: most e-commerce platforms don't ship with compliant button text for every EU market.

Shopify defaults to "Place order" in English. For Dutch stores, Shopify's translations sometimes use "Bestelling plaatsen," which is likely non-compliant. You need to change this manually in your theme's language settings.

WooCommerce defaults to "Place order" and relies on translation plugins for local languages. The standard Dutch translation files don't always include compliant wording. You'll need to edit the button text yourself or use a checkout customization plugin.

Lightspeed is a Dutch platform, so their default Dutch checkout tends to be closer to compliant. Still, check your specific theme. Some older themes or custom themes may use outdated button text.

Magento/Adobe Commerce defaults to "Place Order" in English. Multi-language stores need manual configuration per locale.

The takeaway: never trust the platform default. Always check what your customers actually see on the checkout page.

How to fix your button text

The fix is straightforward. You need to change the text on your final checkout button.

Shopify

  1. Go to Settings > Languages in your Shopify admin
  2. Click your store language
  3. Search for "Place order" or "Bestelling plaatsen"
  4. Replace it with compliant text ("Bestellen en betalen" for Dutch, "Zahlungspflichtig bestellen" for German)
  5. Save

WooCommerce

Add this to your theme's functions.php or a custom plugin:

add_filter('woocommerce_order_button_text', function() {
    return 'Bestellen en betalen';
});

For multi-language shops using WPML or Polylang, you'll need to set the translation for each language separately.

Lightspeed

  1. Go to Settings > Web texts in your Lightspeed back office
  2. Find the checkout button text
  3. Update it to compliant wording
  4. Save and preview your checkout page

Any other platform

Look for checkout customization options in your platform's settings. Search for "order button text" or "checkout button" in the documentation. If your platform doesn't let you change button text, that's a serious limitation you should raise with their support team.

Don't forget the rest of your checkout page

Button text is one piece of a compliant checkout. Your checkout page also needs:

  • Your KVK number and business details. Read our guide on KVK number requirements for what to display and where.
  • Clear pricing including VAT and shipping costs, shown before the final button
  • A link to your terms and conditions that the customer can read before ordering
  • Your cancellation/return policy (14-day withdrawal right for most consumer goods)

For a full overview of what Dutch webshops need, see our webshop compliance guide for the Netherlands.

Check your checkout right now

The fastest way to find out if your checkout button is compliant is to test it. Open your webshop in a private browser window, add something to your cart and go to checkout. Read the button. Does it clearly say you're committing to pay? If you're not sure, it probably doesn't.

You can also run a free scan on your website to catch this and other compliance issues. Our scanner checks for common e-commerce legal problems across Dutch and EU law.

Frequently asked questions

Can I just add "with payment obligation" in small text near the button instead of changing the button itself?

No. The directive specifically says the button or equivalent function must carry the message. Adding small print next to the button is not sufficient. The button text itself needs to communicate the payment obligation. Some shops try a compromise by placing text directly above the button, but courts have generally held that the button wording is what matters.

Does this apply to B2B sales too?

The Consumer Rights Directive applies to business-to-consumer (B2C) transactions. If you sell exclusively to other businesses, the button text rule doesn't apply. But if your shop serves both consumers and businesses, you need compliant button text for all orders, since you can't always distinguish B2B from B2C at checkout.

What about subscription services and recurring payments?

The same rule applies to the initial order. If you're signing someone up for a subscription, the button must indicate they're committing to pay. Many subscription businesses add extra clarity, like "Start paid subscription" or "Subscribe and pay." This is good practice and likely required under the directive.

My shop is in English but I sell to Dutch and German customers. Which language rules apply?

The rules of the customer's country apply, not your shop's language. If a German consumer buys from your English-language shop, German consumer protection law still applies. For multi-language shops, set compliant button text for each language. For English-only shops selling across the EU, "Buy now, pay now" or "Order with payment obligation" are safer choices than "Place order."

Will my payment provider or platform warn me about this?

Probably not. Payment providers like Mollie, Stripe and Adyen process payments but don't check your checkout page for legal compliance. Platforms like Shopify and WooCommerce provide the tools but leave legal compliance to you. This is your responsibility as the shop owner.

Check your website now

Scan your website for E-Commerce issues and 30+ other checks.

Scan your site free