Přeskočit na hlavní obsah
CodeWhiskers.
E-commerce8. července 2026Lidmila Maršálková

Obchodní podmínky jako PDF v objednávkovém e-mailu na Shopify: návod zdarma

Zákon chce, aby spotřebitel dostal obchodní podmínky v textové podobě – tedy tak, aby je nemohl nikdo zpětně měnit. Odkaz na stránku e-shopu to nesplňuje, PDF v potvrzení objednávky ano. Na Shopify to vyřešíte jedním řádkem Liquid kódu, zdarma a bez aplikace.

Editor šablony Potvrzení objednávky na Shopify s kódem attach_as_pdf pro přiložení obchodních podmínek

Zákon chce, aby spotřebitel dostal obchodní podmínky v textové podobě – tedy tak, aby si je mohl uložit a nikdo mu je nemohl zpětně změnit. Odkaz na stránku e-shopu tuhle podmínku nesplňuje, protože stránku můžete kdykoliv přepsat. PDF přiložené k potvrzení objednávky ji splňuje beze zbytku. A na Shopify to vyřešíte jedním řádkem Liquid kódu, zdarma, bez aplikace a bez vývojáře.

Hlavní body

  • § 1827 odst. 2 občanského zákoníku (zákon č. 89/2012 Sb.) ukládá poskytnout spotřebiteli znění obchodních podmínek v textové podobě – na trvalém nosiči, který nejde zpětně měnit. Odkaz na web nestačí, PDF v e-mailu ano.
  • Shopify má na tohle vestavěný Liquid filtr attach_as_pdf. Funguje na všech tarifech a nepotřebujete žádnou aplikaci.
  • Celá úprava je jeden řádek na konci šablony Potvrzení objednávky: {{ shop.terms_of_service | attach_as_pdf: "Obchodní podmínky" }}.
  • Novější šablony už podobný kód obsahují – ale zabalený do podmínky, která přílohu posílá jen zákazníkům z Německa a Dánska. Stačí podmínku odstranit.
  • PDF se generuje v okamžiku odeslání e-mailu – zákazník tedy dostane přesně tu verzi podmínek, která platila při nákupu. To je právně přesně to, co chcete.
  • Jeden háček: podmínky musí být vyplněné v Nastavení → Zásady. Prázdná zásada = žádná příloha, a Shopify vás na to neupozorní.

Proč nestačí odkaz na obchodní podmínky

Podle § 1827 odst. 2 občanského zákoníku (zákon č. 89/2012 Sb.) platí: uzavírá-li se smlouva za použití elektronických prostředků, poskytne podnikatel spotřebiteli v textové podobě kromě znění smlouvy i znění všeobecných obchodních podmínek. „Textová podoba" znamená trvalý nosič: obsah musí zůstat zachovaný tak, jak byl v okamžiku uzavření smlouvy, a spotřebitel k němu musí mít přístup i později.

Stránka /obchodni-podminky na vašem e-shopu tohle nesplňuje. Můžete ji zítra přepsat a zákazník nemá jak doložit, co platilo v den jeho nákupu. Přesně tenhle scénář řeší soudy i ČOI – a e-shop, který umí ukázat jen aktuální verzi podmínek na webu, tahá za kratší konec.

PDF přiložené k potvrzení objednávky je naopak učebnicový trvalý nosič: leží v zákazníkově schránce, vy ho zpětně nezměníte a obě strany mají stejnou verzi. Bonus navrch: působí to profesionálně a ubývá dotazů typu „jaké podmínky platily, když jsem objednával".

Pokud řešíte i další letošní povinnosti, sepsali jsme návod na tlačítko pro odstoupení od smlouvy na Shopify – obě úpravy spolu úzce souvisí a obě zvládnete za jedno odpoledne.

Krok 1: Vyplňte zásady v administraci

Filtr, který za chvíli použijeme, bere obsah PDF ze zásad obchodu. Otevřete Nastavení → Zásady a zkontrolujte, že máte vyplněné obchodní podmínky – případně i podmínky vrácení peněz a zásady přepravy, pokud je chcete přikládat taky.

Tohle je nejčastější místo, kde návod selže: pokud je zásada prázdná, Shopify prostě žádné PDF nepřiloží a nikde vám to neřekne. Žádná chyba, žádné varování, e-mail odejde bez přílohy. Zkontrolujte to dřív, než sáhnete do šablony.

Krok 2: Přidejte jeden řádek do šablony e-mailu

Otevřete Nastavení → Oznámení → Oznámení zákazníkům → Potvrzení objednávky a vpravo nahoře zvolte Upravit kód.

Nejdřív zkontrolujte, jestli tam kód už není

Novější šablony Shopify podobný kód na konci už obsahují. Vypadá takto:

{%- if billing_address.country_code == 'DE' or billing_address.country_code == 'DK' -%}
  {%- if shop.terms_of_service.body != blank -%}
    {{ shop.terms_of_service | attach_as_pdf: "Podmínky služby" }}
  {%- endif -%}

  {%- if shop.refund_policy.body != blank -%}
    {{ shop.refund_policy | attach_as_pdf: "Zásady vrácení peněz" }}
  {%- endif -%}
{%- endif -%}

Všimněte si vnější podmínky: příloha se posílá jen zákazníkům s fakturační adresou v Německu nebo Dánsku, kde to tamní právo vyžaduje výslovně. Český zákazník žádné PDF nedostane, i když kód v šabloně je. Řešení je jednoduché – smažte první a poslední řádek (vnější if s kódy zemí a jeho endif) a nechte jen vnitřek:

{%- if shop.terms_of_service.body != blank -%}
  {{ shop.terms_of_service | attach_as_pdf: "Podmínky služby" }}
{%- endif -%}

{%- if shop.refund_policy.body != blank -%}
  {{ shop.refund_policy | attach_as_pdf: "Zásady vrácení peněz" }}
{%- endif -%}

Vnitřní podmínky != blank nechte být – jen říkají „nepřikládej prázdný dokument". Popisky v uvozovkách si klidně přejmenujte, třeba na „Obchodní podmínky". Uložte a přeskočte rovnou na testování.

Pokud tam kód není, přidejte ho

Sjeďte na úplný konec šablony a přidejte tento řádek:

{{ shop.terms_of_service | attach_as_pdf: "Obchodní podmínky" }}

Text v uvozovkách je název souboru, který zákazník uvidí v příloze – pojmenujte ho česky a srozumitelně. Uložte a máte hotovo.

Stejným způsobem můžete přiložit i další dokumenty, každý na vlastním řádku:

{{ shop.refund_policy | attach_as_pdf: "Podmínky vrácení peněz" }}
{{ shop.shipping_policy | attach_as_pdf: "Zásady přepravy" }}
{{ shop.contact_information | attach_as_pdf: "Kontaktní informace" }}

Přikládejte ale jen to, co dává smysl. E-mail se čtyřmi PDF přílohami působí jako obsílka od exekutora. Obchodní podmínky jsou povinnost, zbytek je volba.

Máte vícejazyčný e-shop?

Pokud posíláte oznámení ve více jazycích, upravte i jazykové verze šablony – místo Upravit kód zvolte Lokalizovat a stejný řádek přidejte do každé jazykové mutace. PDF se vygeneruje z odpovídající jazykové verze zásad.

Pozor na jeden vedlejší efekt úpravy šablony

Buďme upřímní, protože tohle vám Shopify při ukládání neřekne: jakmile šablonu oznámení ručně upravíte, přestane dostávat automatické aktualizace od Shopify. Když Shopify v budoucnu vylepší výchozí podobu potvrzení objednávky, vaše upravená šablona zůstane tak, jak je. U jednoho řádku na konci šablony je to zanedbatelná cena – jen o tom vězte, až se za rok budete divit, proč váš e-mail vypadá jinak než na čerstvém storu. Kdykoliv se můžete vrátit tlačítkem pro obnovení výchozí šablony (a řádek pak přidat znovu).

Krok 3: Otestujte to skutečnou objednávkou

Nevěřte tomu, dokud PDF neuvidíte ve vlastní schránce. Vytvořte testovací objednávku – klidně přes ruční objednávku v adminu s e-mailem na sebe – a zkontrolujte tři věci:

  • Příloha dorazila a jmenuje se tak, jak jste ji pojmenovali.
  • PDF jde otevřít a obsahuje aktuální znění podmínek, ne prázdnou stránku.
  • Diakritika je v pořádku – projděte pár odstavců, ať vás nepřekvapí rozsypané znaky.

Jak to funguje uvnitř (a proč je to právně elegantní)

Filtr attach_as_pdf vygeneruje PDF v okamžiku odeslání e-mailu, z aktuálního znění zásady. To znamená, že každý zákazník dostane přesně tu verzi podmínek, která platila při jeho nákupu. Když podmínky za půl roku změníte, staré objednávky mají v příloze staré znění a nové objednávky nové – přesně tak, jak to zákon zamýšlí, a bez jakékoliv práce navíc na vaší straně.

Srovnejte to s alternativami: aplikace třetí strany za pár dolarů měsíčně, ručně přikládané PDF (které někdo zapomene aktualizovat), nebo PDF nahrané v souborech e-shopu s odkazem v e-mailu (které je zase měnitelné). Jeden řádek nativního Liquid kódu je nejlevnější a zároveň právně nejčistší řešení.

Jeden řádek, který vás kryje

Přiložení obchodních podmínek k potvrzení objednávky je vzácný případ, kdy je splnění zákonné povinnosti otázkou pěti minut. Tři věci si odneste:

  • Vyplňte zásady v Nastavení → Zásady – prázdná zásada znamená žádnou přílohu, bez varování.
  • Zkontrolujte konec šablony Potvrzení objednávky – novější šablony kód už mají, jen omezený na Německo a Dánsko. Smažte podmínku s kódy zemí, nebo přidejte řádek {{ shop.terms_of_service | attach_as_pdf: "Obchodní podmínky" }}.
  • Otestujte to vlastní objednávkou, včetně jazykových verzí, pokud prodáváte ve více jazycích.

Až to budete mít, vezměte si na řadu tlačítko pro odstoupení od smlouvy – druhá povinnost, kterou zvládnete stejným odpolednem.

Často kladené otázky

Proč posílat obchodní podmínky jako PDF, a ne jen odkaz?

Občanský zákoník vyžaduje textovou podobu – trvalý nosič, který nejde zpětně měnit. Stránku na webu můžete kdykoliv přepsat, PDF v zákazníkově schránce ne. Při sporu je PDF v e-mailu důkaz, odkaz na web ne.

Potřebuji na to aplikaci nebo vývojáře?

Ne. Filtr attach_as_pdf je vestavěná funkce Shopify, funguje na všech tarifech a celá úprava je jeden řádek v šabloně Potvrzení objednávky.

Můžu přiložit víc dokumentů najednou?

Ano, každý na vlastním řádku – obchodní podmínky, podmínky vrácení peněz, zásady přepravy i kontaktní informace. Přikládejte ale jen to podstatné, ať e-mail nepůsobí přeplácaně.

Co když obchodní podmínky změním?

Nic nemusíte dělat. PDF se generuje při odeslání e-mailu, takže každá objednávka dostane verzi platnou v okamžiku nákupu. Přesně to po vás zákon chce.

Funguje to i pro vícejazyčný e-shop?

Ano. V šabloně oznámení zvolte Lokalizovat a přidejte stejný řádek do každé jazykové verze. PDF se vygeneruje z odpovídající jazykové mutace zásad.

Proč zákazníkovi nepřišla žádná příloha?

Dvě nejčastější příčiny: zásada v Nastavení → Zásady je prázdná (Shopify pak přílohu tiše vynechá, bez chyby a bez varování), nebo máte v šabloně výchozí kód od Shopify zabalený do podmínky, která přílohu posílá jen do Německa a Dánska. Zkontrolujte obojí a pošlete si testovací objednávku.

Tagy:ShopifyE-commerceLegislativaE-maily

Líbil se vám článek?

Pojďme něco postavit společně

Web, mobilní aplikace nebo Shopify e-shop. To všechno s námi zvládnete v klidu a za rozumné peníze. Napište nám, s čím potřebujete pomoci. Ozveme se vám do 48 hodin.

Nezávazná konzultace →