Legal guide

Which legal texts the template includes, which are samples, and what you must fill in before selling.

The legal texts in the template are samples, not legal advice. Every page carries a visible notice saying so. Before you sell, replace them with texts that fit your business and your jurisdiction, reviewed by a professional.

This is not a formula for covering ourselves. A legal text copied from elsewhere usually mentions data processing you do not do, or leaves out processing you do, and both are a real problem the moment somebody complains.

What the template includes

Five pages, in English and Spanish: privacy policy, cookie policy, terms of service, payment conditions and legal notice.

The texts live in the language files (legal.json, cookies.json, payment-conditions.json) and their pages in src/app/[locale]/legal/.

Company details to fill in

  • Registered or trading name. Comes from productConfig.company.
  • Registered address. A sample ships. Change it.
  • Tax ID or company registry number, where applicable.
  • Contact email. Comes from productConfig.supportEmail.
  • Website. Comes from productConfig.baseUrl.

The three that come from product.ts sort themselves out when you rebrand. The address and the tax identifier you have to enter yourself.

Jurisdiction

  • Set the city in the terms and the legal notice, where a placeholder sits.
  • Confirm the governing law. The sample texts cite Spanish and European legislation (LSSI-CE, GDPR, LOPDGDD, AEPD, Directive 2011/83/EU).

If you operate under another framework, replace the cited law, do not translate it. A Spanish statute translated into English is still a Spanish statute, and citing it in a contract with a customer in another country does not protect you.

What a lawyer has to look at

  • Terms of service: what you offer, licence to use, acceptable use, liability limits and termination.
  • Privacy: what data you collect, on what legal basis, which processors are involved (Stripe, Firebase and any you add), how long you keep it, what rights the user has, and whether there are international transfers.
  • Cookies: the ones you actually use, what for and how long they last. This is the one that goes stale first, because it changes every time you add a tool.
  • Payment conditions: prices, tax, refunds, invoicing, and the credit model with its expiry if it has one.
  • Legal notice: company identification and site ownership.

Refunds and consumers

State your refund policy clearly and before purchase. If you sell to consumers in the European Union or the United Kingdom, respect the statutory rights that cannot be excluded by contract.

And make sure what your page says matches what your payment provider actually does. Promising a window on your website that your provider does not apply is a promise you will end up breaking.

The "sample text" notice

The legal pages show a notice saying they are templates. Remove it only once your final texts are in place, not before. It is controlled from src/app/[locale]/legal/layout.tsx.

Leaving it up with real texts looks unserious; taking it down with sample texts is worse, because it presents as yours a contract you did not write.

Before you open

  • [ ] Every placeholder filled: city, address, tax identifier.
  • [ ] The cited legislation is your jurisdiction's.
  • [ ] Texts reviewed by a professional.
  • [ ] English and Spanish say the same thing (npm run verify:i18n checks no key is missing, but that they mean the same is on you).
  • [ ] The sample-text notice removed.