Kliknij by skopiować
Licencja
Usługi i rozszerzenia
Ekspresową instalację modułu wykonujemy w 1-3 dni robocze. Instrukcję samodzielnej instalacji modułu znajdziesz w Bazie Wiedzy na HelpDesk. 
To rozszerzenie pozwoli Ci używać i konfigurować moduł w wielu sklepach PrestaShop Multistore.
400,00 zł z VAT 325,20 zł netto
325,20 zł netto
400,00 zł z VAT
    325 punktów w Programie Lojalnościowym
    Wsparcie
    i aktualizacje Otrzymasz 3-miesiące dostępu do profesjonalnego wsparcia, które możesz przedłużyć, gdy będziesz go potrzebować.
    Natychmiastowy
    dostęp Dostęp do plików modułu otrzymasz natychmiast po płatności
    Faktura
    VAT Do zamówienia otrzymasz fakturę VAT
    Opis szczegółowy

    Bieżące kursy walut NBP w Twoim sklepie PrestaShop

    Automatyczna aktualizacja kursów walut

    Kursy prosto z NBP — oficjalny feed

    PrestaShop domyślnie pobiera kursy z własnego, zewnętrznego źródła zakotwiczonego w EUR — niezwiązanego z Narodowym Bankiem Polskim. Nasz moduł zastępuje je oficjalną, publiczną tabelą kursów NBP.

    Automatyzacja w tle — link URL  i CRON

    Jeden, zabezpieczony token obsługuje CRON — pasuje zarówno do hostingu współdzielonego, jak i serwera z dostępem SSH.

    Dodatkowy, ręczny kurs do przeliczenia ceny produktu — rozwiązanie gotowe pod fakturę

    Niezależnie od kursu NBP możesz ustawić dodatkowy kurs używany do przeliczenia cen produktów. Jest to kurs niewidocznego dla klienta. Każde zamówienie w obcej walucie dostaje zapisany prawdziwy kurs NBP z dnia zakupu.

    2069508669.1200w.png
    PShow NBP – kursy walut z NBP

    Aktualny kurs NBP na zamówieniach

    Gotowe dane pod fakturę w walucie obcej

    To jedyna funkcja tego typu wśród modułów kursowych do PrestaShop.

    • Przy złożeniu zamówienia w obcej walucie moduł bierze aktualny kurs z wcześniej pobranego kursu referencyjnego NBP - checkout nie łączy się z NBP, więc awaria NBP nie wpływa na czas składania zamówienia.
    • Aktualny kurs nadpisuje pole conversion_rate zamówienia w PrestaShop, używane przez raporty i statystyki.
    • Kwota, którą zapłacił klient, nigdy się nie zmienia - dane są zachowane w chwili powstania zamówienia.
    • Pełny zestaw danych trafia do osobnej tabeli: kurs z checkoutu, realny kurs NBP, tabela i data NBP, kwoty brutto/netto przeliczone na walutę domyślną sklepu.

    Ręczny kurs - cena widoczna dla klienta

    Twoja cena, Twoje zasady

    Czasem sklep chce pokazać klientowi ceny inne, niż to wynika z przeliczenia innego, niż rynkowe - na potrzeby promocji, zaokrągleń albo testów.

    • Wpisujesz kurs taki sam jak NBP lub dowolny inny.
    • Podgląd przeliczenia na żywo w przeglądarce, jeszcze przed zapisaniem.
    • Wyczyszczenie pola przywraca automatyczne przeliczanie z NBP.
    • Kurs referencyjny NBP jest cały czas widoczny i aktualizowany obok — niezależnie od ustawionego kursu ręcznego. 
    • Do zamówienia idą dwie informacje: kurs NBP - na potrzeby księgowości i kurs ręczny - na potrzeby wyliczenia cen.

    Wszystkie operacje związane z kursami w jednym miejscu

    Kurs NBP, kurs klienta i status każdej waluty w jednym miejscu

    Panel modułu pokazuje każdą walutę sklepu w jednym wierszu: aktualny kurs NBP (punkt odniesienia), kurs ustawiany ręcznie -  widoczny dla klienta oraz czytelny status.

    • Aktualny kurs – niezależny, stale odświeżany kurs NBP, widoczny nawet dla walut z ustawionym kursem ręcznym.
    • Kurs widoczny dla klienta – to, co faktycznie trafia do conversion_rate PrestaShop i decyduje o cenach na froncie.
    • Status – Domyślna, Aktualizowana, Ręczny kurs, Wykluczona lub Nieaktywna.
    • Przycisk „Aktualizuj teraz" działa zawsze, niezależnie od automatyzacji w tle.
    1693363538.1200w.png
    Wykluczenia aktualizacji kursów walut

    Wszystkie ważne funkcje w krótkiej liście

    • Kursy prosto z NBP – tabela A lub B pobierane bezpośrednio z api.nbp.pl
    • Aktualizacja jednym kliknięciem – przycisk „Aktualizuj teraz" działa zawsze, niezależnie od automatyzacji
    • Automatyzacja w tle (cron) – link URL dla hostingów bez PHP CLI (cron-job.org i podobne) lub CRON przez SSH
    • Wykluczanie walut – wybrane waluty sklepu można całkowicie pominąć przy aktualizacji
    • Waluta domyślna zawsze bezpieczna – nigdy nie jest ruszana, zgodnie z wymaganiami PrestaShop
    • Ręczny kurs dla klienta – ustal własny, stały kurs dla dowolnej waluty z podglądem przeliczenia na żywo, bez utraty śledzenia realnego kursu NBP
    • Realny kurs NBP na zamówieniach – niezależnie od kursu dla klienta, każde zamówienie w obcej walucie dostaje zapisany prawdziwy kurs NBP z dnia zakupu
    • Podgląd stanu – czytelna tabela wszystkich walut sklepu ze statusem: domyślna / aktualizowana / ręczny kurs / wykluczona / nieaktywna
    • Tłumaczenia PL i EN – pełna lokalizacja panelu, plus instrukcja obsługi PL/EN wbudowana w panel modułu

    Zgodność z NBP

    Kursy pobierane są bezpośrednio z oficjalnego, publicznego API api.nbp.pl — tabela A (główne waluty, codziennie) lub B (pozostałe, raz w tygodniu).

    Waluta domyślna sklepu nigdy nie jest ruszana — jej kurs zawsze pozostaje 1, zgodnie z wymaganiami PrestaShop.

    kontrola nad kursem do przeliczenia cen

    Ustal własny, stały kurs dla dowolnej waluty — np. na potrzeby promocji albo testów — z podglądem przeliczenia na żywo w przeglądarce.

    Kurs referencyjny NBP jest dalej śledzony w tle, niezależnie od ustawionego kursu ręcznego.

    Zero ręcznej pracy przy fakturach

    Każde zamówienie w obcej walucie dostaje zapisany kurs NBP z dnia zakupu lub z dnia roboczego poprzedzającego dzień zakupu.

    Automatyzacja w tle — jeden token, dwie opcje

    Pasuje do każdego hostingu

    • Opcja 1 — link URL – dla paneli typu home.pl, OVH, nazwa.pl czy cron-job.org, które uruchamiają cron tylko przez wywołanie adresu.
    • Opcja 2 — crontab – gotowa linia dla serwerów z dostępem SSH.
    • Token można w każdej chwili unieważnić i wygenerować nowy jednym przyciskiem.
    2650883544.1200w.png
    Sekcja automatyzacji z gotowym linkiem i linią crontab

    Bezpieczeństwo

    Tajny token, jeden zabezpieczony punkt wejścia

    Losowy, regenerowalny token

    Link do automatycznej aktualizacji zawiera tajny token — bez niego serwer odpowiada 403 Forbidden. Token można w każdej chwili unieważnić i wygenerować nowy jednym przyciskiem w panelu.

    Losowy, regenerowalny token

    Link do automatycznej aktualizacji zawiera tajny token — bez niego serwer odpowiada 403 Forbidden. Token można w każdej chwili unieważnić i wygenerować nowy jednym przyciskiem w panelu.

    Zabezpieczenie tokenem endpointu aktualizacji kursów
    Jeden endpoint dla obu opcji crona

    Jeden endpoint, brak duplikatów

    Obie opcje crona (link URL i crontab) trafiają w dokładnie to samo, zabezpieczone miejsce — nie ma osobnego skryptu, który mógłby ominąć weryfikację tokenu.

    Sklep wielowalutowy z rozliczeniem VAT w Polsce

    Dla kogo jest PrestaShop NBP?

    Nie tylko dla dużych sklepów wielowalutowych

    Sklepy wielowalutowe

    Sprzedaż w EUR, USD i innych walutach z rozliczeniem VAT w Polsce — kursy zawsze zgodne z tabelą NBP, bez ręcznego przeliczania.

    Biuro rachunkowe – dane pod fakturę w walucie obcej

    Biura rachunkowe i księgowość sklepu

    Gotowe, udokumentowane dane pod fakturę w walucie obcej, zgodne z wymogiem stosowania kursu NBP — bez ręcznego wyszukiwania kursu z dnia zamówienia.

    Sklep testowy i deweloperski – kontrola nad kursem

    Sklepy testowe i deweloperskie

    Pełna kontrola nad kursem wyświetlanym klientowi, niezależna od realnego kursu NBP śledzonego w tle — wygodne przy testowaniu cen i przeliczeń.

    Ułatwienia dla programistów

    • Cała logika kursów znajduje się w niezależnych serwisach (NbpClient, CurrencyRateUpdater, OrderRealRateApplier) — łatwe do rozbudowy i ponownego użycia.
    • Dedykowana tabela ps_pshownbp_order_rate (jeden wiersz na zamówienie) — minimalne obciążenie bazy danych, gotowa do odczytu przez własny generator faktur.
    • Pokryty testami jednostkowymi PHPUnit — bezpieczne wprowadzanie własnych modyfikacji.

    Hooki PrestaShop

    • actionValidateOrder – zapis aktualnego kursu NBP i danych pod fakturę przy złożeniu zamówienia.

    Wymagania techniczne

    Kompatybilny z aktualnymi wersjami PrestaShop i PHP.

    • PrestaShop: 1.7.x, 8.x i 9.x
    • PHP: 7.1 lub nowszy
    • Dostęp wychodzący HTTPS do api.nbp.pl — publiczne, darmowe API NBP, bez klucza i rejestracji
    • Brak zewnętrznych zależności – nie wymaga żadnych dodatkowych bibliotek
    Changelog (0)
    ## 1.2.2 - 2026-09-04
    -----
    * Fix: `OrderRealRateApplier::apply()` now checks the excluded-currencies list — an excluded
    currency is left completely untouched, including a rate that was cached before it got excluded.
    * Fix: excluding a currency (or leaving its manual-rate field blank on submit) no longer silently
    discards a previously-saved manual rate for a *different*, still-excluded currency.
    * Fix: `saveManualRates()` now validates the cached reference rate (numeric, > 0) before writing
    it to `Currency::conversion_rate`, matching the same guard already used elsewhere.
    * Fix: `Db::insert()`/`Db::update()` now pass `$null_values = true` — an empty
    `nbp_effective_date` was being stored as `''` instead of `NULL`, which fails under strict SQL
    mode against the `DATE NULL` column and silently dropped the whole audit write.
    * A failed cron sync (NBP unreachable, or no default currency configured) is now logged via
    `PrestaShopLogger` and answers with a non-200 HTTP status, instead of a silent HTTP 200 —
    previously nothing told the seller the cron had stopped working while orders kept getting an
    increasingly stale cached rate.
    * Replaced `PSHOWNBP_LAST_SYNC_SUMMARY` (a pre-rendered, already-translated string) with
    `PSHOWNBP_LAST_SYNC_STATS` (raw numbers) — the "last sync" summary is now built in the current
    viewer's admin language every time the page renders, instead of being frozen in whichever
    language was active when the sync ran (an issue for cron-triggered syncs).
    * Source strings for `trans()`/`{l s=}` are now English (translated PL/EN via the usual
    `translations/*.php` files), matching the convention used by the module's other language files.
    * `composer.json`'s `test` script no longer depends on PHPUnit (not present in the CI's
    `--no-dev` build) — added `tests/run.php`, a dependency-free integration test that
    actually runs in CI, covering `CurrencyRateUpdater::run()` and `OrderRealRateApplier::apply()`.
    The PHPUnit suite stays available for local development via `composer run test:unit`
    (equivalent to the existing `composer run phpunit`).
    * Fixed a PHP 7.4-only typed property in a test file that failed to parse on the declared PHP 7.1
    minimum.
    * Fix: `Currency::resetStaticCache()`, used to make the new multistore sync loop below work
    correctly, doesn't exist before PrestaShop 1.7.4.0 — calling it directly would fatal on the
    1.7.0.0–1.7.3.x range this module declares support for. Now guarded with `method_exists()`.
    * Multistore: a single cron hit now syncs every active shop, not just whichever shop's domain
    received the request — `conversion_rate` and the reference-rate cache are per-shop, so one
    shop's sync could otherwise never refresh another's. Excluded currencies and manual rates are
    also independent per shop. The cron secret, the "auto update" switch and the NBP table choice
    remain a single, installation-wide setting. `Order`-side behaviour is unaffected —
    `OrderRealRateApplier::apply()` already runs in the placing order's own shop context, so it
    always reads that shop's own reference rate. The "Update now" button is unchanged — it still
    only syncs the shop currently selected in the admin, matching the rates table shown right below
    it on the same page.

    ## 1.2.1 - 2026-09-04
    -----
    * Fix: `pshownbp_order_rate.nbp_effective_date` now stores the actual NBP-published date of the
    applied rate table, instead of the date the sync happened to run on — the two could differ
    after a weekend/holiday or when cron fires before NBP's daily publication.
    * Checkout is now resilient to any unexpected error while recording the real-rate audit data
    (e.g. a database hiccup) — the order is always saved normally; the error is only logged.
    * The suggested crontab example moved from 8:30 to 13:00 — NBP typically publishes Table A by
    12:15, so an earlier cron run was silently fetching the previous business day's rate.

    ## 1.2.0 - 2026-09-02
    -----
    * New: when an order is placed in a currency other than the shop's default one, the module
    overwrites `Order::conversion_rate` with the real NBP reference rate (never the seller's manual
    display rate) and records a full audit trail in the new `pshownbp_order_rate` table — checkout
    vs. real rate, NBP table/date, and gross/net totals converted to the default currency, ready for
    invoicing. The amount the customer paid never changes.
    * Checkout never makes a live call to NBP — the real rate is read from the already-cached
    reference rate kept fresh by "Update now"/cron, so a slow or unavailable NBP cannot affect
    checkout time.
    * Both cron delivery options (URL link and real crontab) now hit the exact same token-protected
    front controller — no separate standalone script to keep in sync.
    * Extracted all remaining inline CSS/JS from admin templates into dedicated files.
    * In-admin manual (PL/EN) and README updated to document the new feature.

    ## 1.1.0 - 2026-08-19
    -----
    * New "Rate visible to customers" column on the main "Currency rates" table: type your own rate
    (e.g. "4.5" for EUR, meaning 1 EUR = 4.5 PLN) and it's converted live, in the browser, to the
    PrestaShop `conversion_rate` that actually applies on the storefront.
    * The "Current rate" column now also shows the reciprocal (1/rate) next to the raw PrestaShop
    value, so it reads in both directions at a glance.
    * The automatic NBP sync (button and cron) keeps tracking the real market rate as a reference
    even for currencies with a manual rate set — it just stops overwriting the applied rate for
    those, until the manual rate is cleared.
    * Extracted the last remaining inline `` blocks (main page, in-admin manual) into
    dedicated CSS files — no CSS/JS left inline in templates.
    * Added a module sanity test suite (`ModuleTest`) matching the other PrestaShow modules.

    ## 1.0.0 - 2026-08-18
    -----
    * init module
    * Fetch currency exchange rates directly from the official NBP (Narodowy Bank Polski) API,
    replacing PrestaShop's default EUR-anchored external feed.
    * Manual "Update now" button plus optional cron/HTTP automation with a secret-token link.
    * Per-currency exclusion list; default shop currency is never touched (its rate always stays 1).
    * Status table showing every shop currency's current rate and update state.
    * PL/EN in-admin manual and translations.
    Komentarze ()
    Opinie zamieszczane w naszym sklepie nie są w żaden sposób sponsorowane. Weryfikujemy również, czy zostały dodane przez klientów, którzy dokonali u nas zakupów. Jeśli chcesz dowiedzieć się więcej na ten temat zapoznaj się z naszym Regulaminem.

    Brak komentarzy.

    Napisz komentarz lub pytanie

    Twoja aktywność może być pomocna dla społeczności. Dodając opinię wyrażasz zgodę na przetwarzanie swoich danych osobowych. Zapoznaj się z naszą Polityką Prywatności.

    • Rating:

    Wymagania techniczne

    Wymagania techniczne

    Wsparcie i aktualizacje

    Wsparcie = Aktualizacje + HelpDesk

    Otrzymujesz 90 dni (3 miesiące) dostępu do kompletnego pakietu wsparcia PrestaShow.

    Aktualizacje modułów
    Moduły poinformują Cię o dostępnych aktualizacjach. Zapoznaj się z listą zmian (changelog) i wykonaj aktualizację modułu 1-kliknięciem bezpośrednio w Twoim sklepie.

    Panel HelpDesk  
    To panel, w którym dostarczymy Ci pomoc. Na HelpDesk możesz zgłaszać problemy, zamówić darmową instalację i aktualizację modułu oraz zamawiać modyfikacje i indywidualne prace programistyczne.

    > > > Wydłuż wsparcie   
    Po wygaśnięciu wsparcia możesz korzystać z modułu bez żadnych ograniczeń. Dostęp do wsparcia możesz odnowić w dowolnym momencie, gdy będziesz tego potrzebował.

    Baza Wiedzy & FAQ

    Za darmo na zawsze

    Baza wiedzy  
    Jest dostępna dla wszystkich. Znajdziesz w niej dokumentacje modułów oraz instrukcje, filmy i odpowiedzi na najczęściej zadawane pytania. 

    Licencja

    Dożywotnia licencja na moduł

    Pełna treść licencji 

    Instrukcja obsługi panelu zarządzania modułami 

    Dodatkowe domeny dla Multistore

    • Wszystkie nasze moduły obsługują PrestaShop Multistore.
    • Obsługa nielimitowanej liczby domen dla PrestaShop Multistore wymaga zakupienia obsługi multistore dla modułu.

    Modyfikowanie kodu

    • Kod modułu związany z integracją ze sklepem oraz z wyglądem (.tpl, .css, .js) ma otwarty kod źródłowy i możesz go dowolnie modyfikować.
    • Kod źródłowy modułu (.php) szyfrowany jest ionCube, a jego modyfikacja wiąże się z utratą gwarancji.

    Demo

    Demo - przetestuj moduł

    • Ten moduł nie posiada sklepu demo

    Brak powiązanych wpisów blogowych.