Въведение

От 1 януари 2026 година България официално приема еврото като национална валута. Това историческо събитие изисква своевременна подготовка от всички собственици на онлайн магазини, включително тези, използващи платформата PrestaShop. В тази статия ще разгледаме подробно техническите аспекти на смяната на основната валута в PrestaShop и стъпките, които трябва да предприемете, за да осигурите безпроблемен преход към еврото.

Как работи валутната система в PrestaShop

PrestaShop поддържа многовалутна функционалност, като всеки магазин има дефинирана основна валута (default currency). Всички цени в базата данни се съхраняват в тази основна валута, а при необходимост се конвертират към други валути чрез зададени обменни курсове.

Ключови концепции

Основна валута: Валутата, в която са записани всички цени в базата данни. Промяната на основната валута изисква физическо преизчисляване и обновяване на всички ценови данни.

Допълнителни валути: Валути, които могат да се показват на клиентите, като цените се калкулират динамично въз основа на обменния курс спрямо основната валута.

Обменен курс: Коефициентът за конвертиране между две валути. В PrestaShop обменният курс винаги се дефинира спрямо основната валута.

ВАЖНО: Какво се случва при смяна на основната валута

Критично предупреждение: Когато смените основната валута от BGN към EUR в PrestaShop, системата НЕ преизчислява автоматично цените. Това означава, че:

  • Продукт с цена 100 лв. ще остане със запазена стойност 100, но вече в евро (100 €)
  • Това е грешно, защото реалната цена трябва да бъде 100 / 1.95583 = 51.13 €
  • Ако не преизчислите цените ръчно, ще продавате продуктите си почти на двойна цена!

Затова е задължително да преизчислите всички цени след смяна на основната валута!

Подготовка преди смяната на валутата

Стъпка 1: Създайте пълен бекъп

Преди да започнете каквито и да било промени, е критично важно да създадете пълно резервно копие на:

  • Базата данни на магазина
  • Всички файлове на PrestaShop инсталацията
  • Конфигурационните файлове

Ако използвате система за версионен контрол (Git или друга), направете commit на текущото състояние и създайте отделен branch за промените.

Стъпка 2: Тествайте на тестова среда

Никога не извършвайте смяна на основната валута директно на продукционната среда. Създайте локална или staging (тестова) среда, където да тествате целия процес преди да го приложите в реалния магазин.

Стъпка 3: Определете официалния обменен курс

За прехода към еврото ще се използва фиксиран обменен курс 1 EUR = 1.95583 BGN. Този курс е определен от Българската народна банка и ще бъде валиден за конвертирането на всички цени.

Процес на смяна на основната валута и преизчисляване на цените

Стъпка 1: Добавете EUR като валута

  1. Влезте в административния панел на PrestaShop
  2. Отидете на Международни настройкиЛокализацияВалути
  3. Добавете евро (EUR) като валута, ако все още не е добавена
  4. Въведете обменния курс: 1.95583 (1 EUR = 1.95583 BGN)
  5. НЕ променяйте все още основната валута!

Стъпка 2: Преизчислете всички цени ПРЕДИ смяна на валутата

Преди да смените основната валута, трябва да преизчислите всички цени от лева в евро. Това се прави чрез SQL заявки:

-- ВАЖНО: Изпълнете тези заявки ПРЕДИ да смените основната валута!
-- Обменен курс: 1 EUR = 1.95583 BGN

-- Обновяване на основни цени на продукти
UPDATE ps_product 
SET price = price / 1.95583;

-- Обновяване на цени с намаление
UPDATE ps_specific_price 
SET price = price / 1.95583 
WHERE price > 0;

-- Обновяване на цени с намаление (reduction_amount)
UPDATE ps_specific_price 
SET reduction = reduction / 1.95583 
WHERE reduction_type = 'amount' AND reduction > 0;

-- Обновяване на комбинации (варианти на продукти)
UPDATE ps_product_attribute 
SET price = price / 1.95583;

-- Обновяване на wholesale price (цена на едро)
UPDATE ps_product 
SET wholesale_price = wholesale_price / 1.95583 
WHERE wholesale_price > 0;

-- Обновяване на цени в кошницата (ако има активни кошници)
UPDATE ps_cart_product 
SET price_with_reduction = price_with_reduction / 1.95583;

-- Обновяване на минимални цени за поръчка
UPDATE ps_carrier 
SET price = price / 1.95583 
WHERE price > 0;

-- Обновяване на цени за доставка по зони (ако използвате)
UPDATE ps_delivery 
SET price = price / 1.95583;

Важни забележки:

  • Задължително тествайте тези заявки на копие на базата данни!
  • Адаптирайте ги според префикса на вашите таблици (по подразбиране ps_)
  • Може да имате допълнителни таблици с цени според модулите, които използвате
  • След изпълнение на заявките, проверете резултатите преди да продължите

Стъпка 3: Сменете основната валута

САМО след като сте преизчислили всички цени, можете да смените основната валута:

  1. Отидете на Международни настройкиЛокализацияВалути
  2. Намерете евро (EUR) в списъка
  3. Използвайте опцията за задаване на EUR като основна валута
  4. Потвърдете промяната

Сега вашите цени вече са коректно конвертирани в евро и системата използва EUR като основна валута.

Алтернативен метод: Използване на модул

Съществуват специализирани модули за смяна на валута, които автоматизират процеса и предлагат допълнителни опции като:

  • Автоматично преизчисляване на всички цени
  • Закръгляване на цените според правила
  • Масово обновяване на цени с корекции
  • Обновяване на всички свързани данни едновременно

Ако използвате модул, уверете се, че:

  • Модулът е проверен и има добри отзиви
  • Е съвместим с вашата версия на PrestaShop
  • Има активна поддръжка от разработчика
  • Поддържа коректно преизчисляване на цените

След смяната на валутата

Задължителна проверка на данните

След като смените основната валута и преизчислите цените, задължително прегледайте:

  1. Цени на продуктите: Проверете множество продукти ръчно. Например: продукт, който е бил 195.58 лв., трябва да е 100 €
  2. Специални цени и промоции: Валидирайте всички активни намаления - и процентните, и тези със стойност в лева
  3. Комбинации/варианти: Ако имате продукти с варианти (размери, цветове), проверете техните допълнителни цени
  4. Правила за доставка: Обновете и проверете цените за доставка
  5. Ваучери и купони: Преизчислете купоните със стойност (не процентни)
  6. Минимални суми за поръчка: Коригирайте минималните суми за безплатна доставка
  7. Настройки на плащания: Уверете се, че платежните методи поддържат евро
  8. Предишни поръчки: Старите поръчки ще останат в лева - това е нормално

Обновяване на настройките

Формат на валутата: Отидете на настройките на валутата и задайте правилния формат за показване на еврото според българските стандарти (например: 100,00 € или 100.00 EUR).

Закръгляване: Конфигурирайте правилата за закръгляване на цените (обикновено до 2 десетични знака за евро).

Показване на двойни цени (Dual pricing)

Съгласно европейските регулации и българското законодателство, от 1 януари 2026 до 31 декември 2026 година, онлайн магазините са длъжни да показват цените едновременно в евро и в лева.

Законови изисквания за двойно ценообразуване

Важно: Според закона за двойно обозначаване на цените:

  • Цените трябва да са ясно и четливо посочени в двете валути
  • Шрифтът и размерът на цените трябва да са еднакви за двете валути
  • Цените не трябва да подвеждат потребителите
  • Двойното обозначаване е задължително до 31 декември 2026 година

Технически решения за двойно ценообразуване

Вариант 1: Използване на многовалутна функционалност

След като сте сменили основната валута на EUR, добавете BGN като допълнителна валута с обменен курс 1.95583. Конфигурирайте магазина да показва цените и в двете валути едновременно с еднакъв размер на шрифта.

Вариант 2: Персонализиране на темата

Модифицирайте темплейтите на вашата тема, за да показват цената и в двете валути. Пример:

{* Примерен код за product.tpl *}
<div class="price-display">
    <span class="price-eur">{$product.price} €</span>
    <span class="price-separator"> / </span>
    <span class="price-bgn">{$product.price * 1.95583|string_format:"%.2f"} лв.</span>
</div>

Важно: CSS стиловете трябва да гарантират, че и двете цени са с еднакъв шрифт и размер:

.price-display {
    font-size: 24px;
}

.price-eur, .price-bgn {
    font-size: inherit; /* Еднакъв размер */
    font-weight: inherit; /* Еднакво дебелина */
}

Вариант 3: Специализиран модул

Има модули, които автоматизират показването на двойни цени и управляват форматирането според изискванията. Уверете се, че модулът:

  • Е съвместим с вашата версия на PrestaShop
  • Спазва законовото изискване за еднакъв размер на шрифта
  • Показва цените ясно и четливо

Важни аспекти за двойното ценообразуване

  • И двете цени трябва да са еднакво видими - с еднакъв шрифт, размер и стил
  • Двойните цени трябва да се показват на всички места: продуктови страници, категории, кошница, поръчки
  • След 31 декември 2026 година вече не е задължително показването на цени в лева

Комуникация с клиентите

Важно е своевременно да информирате клиентите си за предстоящата промяна:

  1. Банер или съобщение на сайта: Предупредете посетителите няколко седмици преди промяната
  2. Email кампания: Изпратете newsletter до регистрираните потребители
  3. FAQ секция: Добавете често задавани въпроси относно прехода към еврото, като посочите официалния фиксиран курс (1 EUR = 1.95583 BGN) и периода на двойно обозначаване
  4. Обслужване на клиенти: Подгответе екипа си да отговаря на въпроси

Контролен списък за смяна на валутата

  • ☐ Създаване на пълен бекъп на базата данни и файлове
  • ☐ Тестване на процеса в тестова среда
  • ☐ Добавяне на EUR като валута с правилен обменен курс (1.95583)
  • Преизчисляване на всички цени ПРЕДИ смяна на основната валута
  • ☐ Смяна на основната валута от BGN към EUR
  • ☐ Проверка на цените - дали са коректно конвертирани (напр. 195.58 лв. = 100 €)
  • ☐ Обновяване на специални цени и промоции
  • ☐ Актуализиране на цени за доставка
  • ☐ Преглед и корекция на ваучери и купони със стойност
  • ☐ Обновяване на минимални суми за поръчки
  • ☐ Проверка на цени на варианти/комбинации
  • ☐ Конфигуриране на плащанията за евро
  • ☐ Имплементиране на двойно ценообразуване с еднакъв шрифт и размер (до 31.12.2026)
  • ☐ Обновяване на правната информация (общи условия, политики)
  • ☐ Информиране на клиентите
  • ☐ Тестване на пълния процес на поръчка с реални цени

Заключение

Смяната на основната валута в PrestaShop при прехода към еврото е сериозна техническа задача, която изисква внимателно планиране и изпълнение. Най-важното, което трябва да запомните, е че PrestaShop НЕ преизчислява автоматично цените при смяна на основната валута - трябва да направите това ръчно ПРЕДИ да смените валутата, иначе рискувате да продавате на двойна цена!

Уверете се, че сте:

  • Тествали целия процес в тестова среда
  • Имате надеждни резервни копия
  • Преизчислили всички цени коректно (делене на 1.95583)
  • Проверили внимателно резултата преди да пуснете магазина в продукция
  • Подготвили клиентите си за промяната

Не забравяйте, че показването на двойни цени (евро и лева) с еднакъв шрифт и размер е задължително от 1 януари 2026 до 31 декември 2026 година. След тази дата можете да премахнете показването на цени в лева.

За повече информация относно подготовката на онлайн магазина за прехода към еврото, прочетете нашата статия: Как да подготвим онлайн магазините на PrestaShop за приемане на еврото

Ако имате въпроси или се нуждаете от помощ при смяната на валутата във вашия PrestaShop магазин, не се колебайте да се свържете с професионалисти, които имат опит с платформата.