Skip to content
codecollab.pl
§ Blog online store terms and conditions

Online store terms and conditions - template, what they must cover and where to get one

Terms of sale are like a fire extinguisher - they hang on the wall for years and nobody looks at them until something catches fire

Krystian Kacik 10 min read
Contents

Terms of sale are like a fire extinguisher - they hang on the wall for years and nobody looks at them until something catches fire. The fire is usually a difficult return, a complaint the customer reads differently than you do, or a letter from a consumer protection body. So when someone searches for online store terms and conditions, they are rarely after a pretty file to paste into a page. They want to know that the document already sitting in their footer will hold up in the one conversation where it actually matters.

I write this from the technical side, not the legal one. I build WooCommerce stores, and a lot of these documents have passed through my hands: copied from a competitor, generated for free in five minutes, or written by a law firm. One disclaimer up front: this is not legal advice. What I can show you is where such a document stops matching what the shop actually does, and how to wire it into WooCommerce so the customer’s acceptance can be proven later. The wording of the clauses and the deadlines belong to a lawyer in your jurisdiction, not to me.

What online store terms and conditions have to cover

I am not going to restate the law here - that is what lawyers and their templates are for. Here is what I look at when a shop lands on my desk for a rebuild and the terms page is the second file I open.

The document has to answer the questions a customer asks in buying order: who is selling (full company details, not just a logo), what exactly is being sold, how an order is placed and when the contract is concluded, what the prices are and what else gets added to the bill, how and when the parcel arrives, how payment works, how a customer withdraws from the purchase, and how complaints are handled. Then contact details for support, and how the document itself gets amended.

The technical sanity check is simple and needs no lawyer: read the terms with the WooCommerce panel open next to them. The document promises next-day dispatch while your only shipping method says “up to five working days”? Mismatch. It lists cash on delivery you stopped offering a year ago, or describes ordering with a registered account while the shop sells to guests? Same thing. These errors do not come from bad faith - they come from a document written once for a shop that has since changed ten times.

The second thing is consistency with what the customer sees on screen. Stating the delivery cost in the terms does not replace stating it in the cart, and the later a customer learns the full amount, the more abandoned carts you collect. I went through that in the piece on why your online store is not selling.

Free templates - what does not fit your shop

Free templates and generators beat having no document at all. Their formal skeleton is usually fine: parties, definitions, how a contract is formed, complaints, final provisions. The problem here is different from most “template” topics - it is not mainly about what is missing, it is about what is untrue in your particular case.

A universal template describes an average shop. Yours is not average. The mismatches I run into most often when I put a downloaded document next to a real store:

  • Goods you do not sell. Templates love clauses about digital content, subscriptions and made-to-order products. Ship physical stock only, and you carry obligations for things that are not in your catalogue.
  • Deadlines you do not meet. A dispatch time or a complaint handling time has to match how your warehouse and your support actually work, not what reads nicely.
  • A complaints procedure that does not exist. The document points to a claim form the shop does not have, or to a mailbox nobody reads.
  • Business buyers treated as consumers. If you sell B2B, run wholesale tiers or register companies by tax number, the document has to separate the two.
  • Someone else’s seller details. It sounds absurd, but I hit it regularly - a company name or a bank account left over from the example.

The practical way to use a template is to treat it as a list of questions rather than finished text. You go through it point by point and check in the admin whether each statement is true. The mismatches go on a list, and you walk into the lawyer’s office with that list - which makes their work short and cheap.

One more thing about versions advertised as current for a given year. Terms do not go stale because the calendar rolled over, but because the law changes or your shop changes. A document with this year at the top that still describes a shop from two rebuilds ago is worse than an old one that matches reality.

This is the part legal guides normally skip, and the part that decides whether the document produces anything at all.

WooCommerce has a dedicated slot for it. You create an ordinary WordPress page with the content, then point to it under WooCommerce > Settings > Advanced, in the terms and conditions page field. From that moment the shop adds the consent line with a link to that page on the checkout screen by itself - no template edit, no plugin. Leave the field empty and WooCommerce only prints a generic sentence about the terms of sale, with no link, so the customer cannot read the document before clicking.

Two things to watch technically:

Classic checkout versus block checkout. WooCommerce now ships two kinds of checkout page - the old shortcode-based one and the newer one built from blocks. The terms consent looks and behaves differently in each, and plugins that add their own fields often support only one. After every larger update, walk through the checkout as a customer: is the consent still there, does the link work, and does an order without the box ticked really fail?

Do not multiply checkboxes. I see checkouts with five consents in a row, half of them saying the same thing twice. Every extra click costs orders, and consents bundled into one sentence are often worth nothing. A separate box only where a separate matter is involved - the terms, the newsletter, and an extra statement for digital content. What each unnecessary field costs is in the piece on making the WooCommerce checkout shorter, and the technical side is in custom checkout fields in WooCommerce.

Separately: the link has to live in the footer as well as the checkout, reachable by keyboard and readable by a screen reader. Mandatory documents are among the first places checked when someone looks at who web accessibility law applies to.

Versioning - what did the customer actually agree to

This is the weakest point in most shops I open. The terms live at one address, get overwritten in place on every change, and for an order placed six months ago there is no way to reconstruct what the document said that day. The consent is in the database; the wording it referred to is gone.

The minimum that fits any shop and costs nothing:

  1. A version date inside the document, visible at the top - “in force since …”.
  2. An archive of previous versions at permanent addresses, linked from the current one. Plain pages are enough.
  3. The version recorded with the order - an extra field saved alongside the order and visible in the admin afterwards, a dozen or so lines in a child theme or a small plugin, not a week-long project.

The third point is the one that helps in a dispute, because it turns “the customer accepted the terms” into “the customer accepted the version from this date, and its wording sits at this address”. When you change the terms for customers with an account, a subscription or any continuing agreement, a duty to notify them and collect acceptance again comes on top - and that is the moment to ask a lawyer rather than a developer.

Where the code ends and the lawyer starts

The line is sharper than it looks, and knowing it saves you from paying the wrong person for the work.

The technical side can deliver: the terms page wired into the shop settings, a readable consent in the checkout, the version recorded with each order, an archive of versions, prices and delivery costs shown in the cart, the mechanism for showing price information during promotions, a withdrawal form and a claim form, and accessible documents.

The legal side keeps: the wording of the clauses, the deadlines, the scope of liability, the disclosure duties around promotional pricing, privacy notices, the right of withdrawal and its exceptions, and the rules for digital content. I do not guess there and I do not copy from competitors.

The sensible order is: first you write down how the shop really works, then a lawyer drafts or corrects the document against that description, and only then someone technical wires it in and puts the consents where they belong. Reverse that order and you end up with a document describing a shop that does not exist.

How I handle it

When I build or rebuild a store, the terms and the privacy policy sit on the handover list next to payments and shipping, not under “to be added later”. In practice: I read the document with the admin open and send back a list of mismatches - a clause on one side, a settings screen saying something else on the other. The client takes that list to a lawyer while I wire the terms page into the settings, set up the checkout consent, add the version stamp to orders and set up the archive.

If you run a store that has been up for a few years and you are not sure whether its terms still describe reality, send me the link. I will tell you what does not match what the shop actually does, and which part is mine to fix and which part belongs to a lawyer.

Frequently asked questions

Can I copy the terms from a competitor? Technically you can; practically it is the worst option available. You inherit a description of someone else’s shop together with their mistakes, and their document is a protected text like any other. Unfair clauses spread mostly this way, from one copy to the next.

Where exactly do the terms go in WooCommerce? Create an ordinary page with the content, then select it under WooCommerce > Settings > Advanced as the terms and conditions page. The shop then adds the consent with a link on the checkout screen by itself. Put the link in the footer as well, so it is reachable from every page.

Is a free template enough? As a starting point yes, as a finished document rarely. A free template describes an average shop, and the risk sits exactly where yours differs: the catalogue, the deadlines, the complaints procedure, selling to businesses. The skeleton handles the smaller part of the job.

Is the checkout consent enough as proof? On its own it only says that the customer clicked. The proof is the consent together with the version they accepted, and that version still available at a permanent address. This is the part added on the shop side, and the part most often forgotten.


Running a store where something does not work the way it should? I build and rebuild WooCommerce stores - from a single fix to reworking the whole sales flow. Tell me what you are dealing with and I will send back a scope and a price.

§ Let's talk about your project

Your store is slowing down or looks dated, and you do not know where to start?

Describe the scope in two sentences or send a link to your store. I tell you what to fix first, and you get the scope, hours and price in writing - no "from X" pricing.

Let's talk about your project