Konfiguracja Stripe dla sklepu PL i DE: pełny przewodnik wdrożenia
Jak krok po kroku skonfigurować Stripe w sklepie WooCommerce na Polskę i Niemcy: konto, klucze API, tryb test i live, webhooki, metody płatności, prowizje i najczęstsze błędy wdrożenia.
Jedno konto Stripe obsłuży sklep PL i DE oraz wiele walut
Klucze test (pk_test, sk_test) do prób, live (pk_live, sk_live) do produkcji
Webhook to warunek automatycznej aktualizacji statusu zamówienia
Karty, Apple Pay, Google Pay, a przez Stripe także BLIK i Klarna
Prowizja za karty europejskie startuje około 1,5% plus stała opłata
3D Secure i SCA obowiązkowe w UE, Stripe obsługuje je automatycznie
[/dwb_keytakeaways]
Dlaczego Stripe do sklepu na dwa rynki
Stripe to światowy standard płatności online i najlepiej sprawdza się tam, gdzie sprzedajesz na więcej niż jeden rynek. W jednej integracji dostajesz karty międzynarodowe, Apple Pay i Google Pay, a przez mechanizm metod płatności także Klarna i BLIK. Dla sklepu, który celuje jednocześnie w Polskę i Niemcy, to wygodne, bo nie żonglujesz osobnymi bramkami dla każdego kraju.
Trzeba jednak od razu ustawić oczekiwania. W sklepie tylko na Polskę Stripe nie zastąpi w pełni lokalnej bramki, bo nie daje polskich szybkich przelewów pay-by-link w takiej formie jak Przelewy24, PayU czy Tpay. Dlatego w czysto polskim sklepie często łączę Stripe z lokalną bramką. Gdy w grę wchodzą Niemcy i reszta Unii, Stripe jako fundament ma sens, bo karty i Klarna są tam metodami pierwszego wyboru.
W tym przewodniku przechodzę przez całe wdrożenie: założenie i weryfikację konta, klucze API, tryb test i live, webhooki, dobór metod płatności, prowizje, 3D Secure pod SCA, przewalutowanie, wypłaty i najczęstsze błędy, które potem generują chaos w zamówieniach.
Założenie i weryfikacja konta Stripe
Konto Stripe zakładasz na stronie stripe.com, na dane firmy z kraju, w którym jest ona zarejestrowana. Polska spółka lub jednoosobowa działalność zakłada konto w Polsce, niemiecka GmbH w Niemczech. Jedno konto obsłuży sprzedaż w wielu krajach i walutach, więc nie potrzebujesz osobnych kont dla PL i DE, dopóki masz jeden podmiot prawny.
Po rejestracji Stripe poprosi o dane do weryfikacji firmy (proces KYC, czyli poznaj swojego klienta). To standard wymagany prawem, nie da się go pominąć.
- Dane firmy: nazwa, adres, numer rejestrowy (NIP w Polsce, Steuernummer lub USt-IdNr w Niemczech).
- Dane właściciela i osób zarządzających: imię, nazwisko, data urodzenia, czasem dokument tożsamości.
- Numer konta bankowego: na nie Stripe będzie wypłacał środki, najlepiej konto firmowe w walucie wypłaty.
- Opis działalności: co sprzedajesz, bo Stripe ocenia ryzyko branży.
Weryfikacja zwykle trwa od kilku minut do dwóch dni roboczych. Do czasu jej zakończenia możesz pracować w trybie test, więc nie musisz czekać z konfiguracją sklepu.
Konto zakładaj na realne dane firmy od razu, nie na osobiste. Późniejsza zmiana podmiotu z osoby prywatnej na firmę oznacza w praktyce nowy proces weryfikacji i czasem nowe konto. Lepiej zrobić to dobrze za pierwszym razem.
Klucze API: test i live
Stripe komunikuje się ze sklepem przez klucze API. Każde konto ma dwa zestawy kluczy i to rozróżnienie jest sednem bezpiecznego wdrożenia.
- Klucz publiczny (zaczyna się od pk_): używany po stronie przeglądarki, bezpieczny do pokazania.
- Klucz tajny (zaczyna się od sk_): używany po stronie serwera, nigdy nie trafia do kodu w repozytorium ani na widok publiczny.
Do tego dochodzi rozróżnienie środowiska. Klucze testowe mają w nazwie test (pk_test, sk_test), a produkcyjne live (pk_live, sk_live). Klucze znajdziesz w panelu Stripe w sekcji Developers, zakładka API keys. W oficjalnej wtyczce Stripe dla WooCommerce wklejasz oba zestawy w odpowiednie pola, a przełącznik trybu decyduje, który jest aktywny.
Test kontra produkcja w Stripe
| Element | Tryb test | Tryb live |
|---|---|---|
| Klucz publiczny | pk_test_... | pk_live_... |
| Klucz tajny | sk_test_... | sk_live_... |
| Pieniądze | testowe, zero ryzyka | realne płatności klientów |
| Karty | testowe numery kart | prawdziwe karty |
| Webhook | osobny endpoint testowy | osobny endpoint produkcyjny |
Najważniejsza zasada: klucz tajny live to dane wrażliwe na poziomie hasła do banku. Nie wklejaj go do plików commitowanych do repozytorium, nie wysyłaj mailem otwartym tekstem. W produkcji trzymaj go w ustawieniach wtyczki lub w zmiennej środowiskowej na serwerze.
Tryb test: zanim ruszysz z prawdziwymi pieniędzmi
Tryb test to powód, dla którego wdrożenie Stripe jest bezpieczne. Z kluczami testowymi przeklikujesz całe zamówienie tak jak klient, ale bez ruszania prawdziwych pieniędzy. Stripe udostępnia testowe numery kart, które symulują różne scenariusze.
- Karta udana: numer 4242 4242 4242 4242 z dowolną przyszłą datą i dowolnym CVC, płatność przechodzi.
- Karta z 3D Secure: osobne numery testowe wymuszają ekran uwierzytelnienia, sprawdzasz przepływ SCA.
- Karta odrzucona: numer kończący się na 0002 zwraca odmowę, sprawdzasz komunikat błędu dla klienta.
W trybie test przeklikaj złożenie zamówienia, sprawdź, czy status w WooCommerce zmienia się na opłacony, czy mail z potwierdzeniem wychodzi i czy zamówienie pojawia się w panelu Stripe. Dopiero gdy to działa, przełączasz się na live.
Webhooki: serce automatyzacji
Webhook to adres w Twoim sklepie, pod który Stripe wysyła powiadomienie o zdarzeniu, na przykład o udanej płatności. Bez działającego webhooka pieniądze przychodzą, ale sklep nie wie, że zamówienie zostało opłacone, więc status nie zmienia się automatycznie. To najczęstsze źródło chaosu w zamówieniach, jakie widzę przy źle wdrożonym Stripe.
Webhook konfigurujesz w panelu Stripe, w sekcji Developers, zakładka Webhooks. Dodajesz endpoint, czyli adres sklepu (zwykle podaje go oficjalna wtyczka, kończy się na fragmencie typu /wc-api/wc_stripe), i wybierasz zdarzenia do nasłuchu. Stripe wygeneruje sekret webhooka (zaczyna się od whsec_), który wklejasz do ustawień wtyczki, żeby sklep weryfikował autentyczność powiadomień.
Tryb test i live mają osobne webhooki. To jeden z najczęstszych błędów: ktoś skonfiguruje webhook testowy, wszystko działa w sandboksie, po czym przechodzi na produkcję i zapomina dodać webhook live. Realne płatności przechodzą, ale zamówienia zostają nieopłacone. Po przejściu na live zawsze sprawdź, czy webhook produkcyjny istnieje i nie zwraca błędów.
Metody płatności: karty, portfele, Klarna, BLIK
Siłą Stripe jest mechanizm Payment Methods: jedno konto, a metody włączasz w panelu zależnie od rynku i waluty. Dla sklepu PL i DE warto przemyśleć zestaw pod każdy kraj.
- Karty (Visa, Mastercard): podstawa na obu rynkach, działają w PLN i EUR.
- Apple Pay i Google Pay: szybka płatność jednym dotknięciem, mocno podnoszą konwersję na telefonie. Wymagają weryfikacji domeny w panelu Stripe.
- Klarna: kup teraz, zapłać później. W Niemczech to metoda pierwszego wyboru dla dużej części klientów, w Polsce zyskuje na popularności. Przez Stripe dostajesz ją bez osobnej umowy z Klarna.
- BLIK: w polskim sklepie metoda numer jeden. Stripe obsługuje BLIK dla transakcji w PLN, włączasz go w ustawieniach metod.
Dla niemieckiego sklepu zestaw to zwykle karty, Apple Pay, Google Pay i Klarna, czasem SEPA i PayPal obok Stripe. Dla polskiego: karty, BLIK, Apple Pay, Google Pay i często Klarna, a lokalna bramka dokłada szybkie przelewy. Po włączeniu każdej metody zrób test, bo dostępność zależy od kraju konta i waluty.
Prowizje, 3D Secure i przewalutowanie
Koszt Stripe to przede wszystkim prowizja od transakcji, bo nie ma abonamentu ani opłaty aktywacyjnej. Stawki różnią się zależnie od pochodzenia karty i waluty.
- Karty europejskie: prowizja startuje zwykle około 1,5% plus stała opłata kilkudziesięciu groszy za transakcję.
- Karty spoza Europy: wyższa, zwykle w okolicach 2,5-3,3% plus opłata stała, bo wiążą się z większym ryzykiem i kosztem.
- Przewalutowanie: gdy klient płaci w innej walucie niż waluta wypłaty, Stripe dolicza dopłatę za przewalutowanie, zwykle około 2%.
To stawki orientacyjne, traktuj je jako punkt startowy. Realny koszt zależy od wersji cennika, wolumenu i ustaleń, a przy dużym obrocie warto pytać o indywidualne stawki.
Osobna sprawa to bezpieczeństwo płatności. W Unii Europejskiej obowiązuje SCA (silne uwierzytelnianie klienta), które w praktyce oznacza 3D Secure: klient potwierdza płatność w aplikacji banku lub kodem. Dobra wiadomość jest taka, że Stripe obsługuje to automatycznie i sam decyduje, kiedy wymusić uwierzytelnienie. Nie musisz tego kodować, ale musisz przetestować przepływ na testowej karcie z 3D Secure, żeby mieć pewność, że ekran banku wyświetla się poprawnie.
Wypłaty środków
Stripe nie przekazuje pieniędzy natychmiast na Twoje konto. Środki najpierw trafiają do salda Stripe, a stamtąd są wypłacane na konto bankowe według ustalonego harmonogramu. Domyślnie wypłaty są automatyczne i przychodzą z opóźnieniem kilku dni roboczych, które na nowym koncie bywa dłuższe, a potem się skraca.
Harmonogram wypłat ustawiasz w panelu Stripe: codziennie, tygodniowo lub miesięcznie. Możesz też przejść na wypłaty ręczne, jeśli chcesz pełną kontrolę nad momentem transferu. Przy sklepie na dwa rynki i wielu walutach Stripe może wypłacać w walucie salda, więc warto mieć konto bankowe obsługujące EUR, jeśli sprzedajesz dużo do Niemiec, by uniknąć podwójnego przewalutowania.
Najczęstsze błędy wdrożenia
Po wielu wdrożeniach widać, że problemy powtarzają się w tych samych miejscach. Oto lista kontrolna, którą przechodzę przed oddaniem sklepu z Stripe.
Kontrola wdrożenia Stripe krok po kroku
- Konto zweryfikowane na realne dane firmy, nie osobiste
- Klucze live wklejone i tryb przełączony z test na produkcję
- Webhook produkcyjny dodany w panelu i nie zwraca błędów
- Sekret webhooka (whsec_) wklejony do ustawień wtyczki
- Apple Pay i Google Pay z poprawnie zweryfikowaną domeną
- Testowa płatność na 3D Secure przechodzi i ekran banku się wyświetla
- Realna mała transakcja zaksięgowana i status zamówienia zmieniony automatycznie
Trzy błędy odpowiadają za większość zgłoszeń. Pierwszy to zostawiony tryb test na produkcji, przez co realne płatności w ogóle nie dochodzą. Drugi to brak webhooka produkcyjnego, przez co płatność przechodzi, ale zamówienie zostaje nieopłacone. Trzeci to klucz tajny live wklejony tam, gdzie nie powinien, na przykład w pliku commitowanym do repozytorium, co jest realnym zagrożeniem bezpieczeństwa. Wszystkie trzy łatwo przeoczyć i wszystkie łatwo naprawić, jeśli wiesz, gdzie patrzeć.
Jeśli stawiasz sklep na Polskę i Niemcy albo chcesz uporządkować istniejącą integrację Stripe, w DawidWeb robię to regularnie: konfiguracja konta i metod pod oba rynki, poprawne webhooki, testy 3D Secure i wpięcie Klarna oraz BLIK, żeby zamówienia księgowały się same. Strony i sklepy buduję od 1800 zł, jestem Partnerem Shoper, mam za sobą ponad 120 projektów, a wycenę konkretnego wdrożenia dostajesz w 24 godziny.
Najczęstsze pytania
Czy Stripe wystarczy jako jedyna bramka w polskim sklepie?
Stripe obsłuży karty, Apple Pay, Google Pay, a przez siebie także BLIK i Klarna, więc technicznie może być jedyną bramką. W praktyce w sklepie tylko na Polskę często dokładam lokalną bramkę (Przelewy24, PayU lub Tpay) do szybkich przelewów pay-by-link, bo Stripe nie obsługuje ich w takiej formie jak gracze krajowi. Jeśli sprzedajesz też do Niemiec i reszty UE, Stripe jako baza ma sens, bo daje karty międzynarodowe i Klarna w jednej integracji.
Ile kosztuje Stripe w 2026 roku?
Za karty europejskie prowizja startuje zwykle około 1,5% plus stała opłata kilkudziesięciu groszy za transakcję, a za karty spoza Europy jest wyższa, zwykle w okolicach 2,5-3,3% plus opłata stała. Do tego dochodzi dopłata za przewalutowanie, gdy klient płaci w innej walucie niż waluta wypłaty. Stripe nie ma abonamentu ani opłaty aktywacyjnej, płacisz tylko od transakcji, więc na starcie próg wejścia jest niski.
Czym różnią się klucze test od live w Stripe?
Klucze testowe (pk_test i sk_test) działają na danych testowych: użyjesz testowych numerów kart, nie ruszasz prawdziwych pieniędzy i sprawdzasz cały przepływ zamówienia. Klucze live (pk_live i sk_live) obsługują realne płatności prawdziwych klientów. To dwa osobne zestawy, mają też osobne webhooki, więc po przejściu na produkcję musisz podmienić klucze i zarejestrować webhook produkcyjny.
Czy muszę mieć osobne konto Stripe dla Polski i Niemiec?
Nie. Jedno konto Stripe obsłuży sprzedaż w wielu krajach UE i wielu walutach z tej samej integracji. Konto zakładasz na kraj rejestracji firmy, a Stripe pozwala przyjmować płatności w EUR, PLN i innych walutach. Osobne konto rozważasz dopiero, gdy masz osobne podmioty prawne, na przykład polską spółkę i niemiecką GmbH, bo wtedy rozliczenia i wypłaty idą na różne firmy.
Dlaczego płatność przechodzi, a zamówienie zostaje nieopłacone?
W 90% przypadków to brak skonfigurowanego webhooka albo zły adres webhooka w panelu Stripe. Stripe pobiera pieniądze, ale sklep nie dostaje powiadomienia o sukcesie i nie zmienia statusu zamówienia. Sprawdź w panelu Stripe, w sekcji Developers, czy webhook wskazuje na poprawny adres sklepu i czy nie zwraca błędów. Drugi powód to wtyczka zostawiona w trybie test po wejściu na produkcję.
Czy Stripe obsługuje BLIK i Klarna w polskim sklepie?
Tak, oba przez mechanizm Payment Methods. BLIK włączysz w panelu Stripe dla transakcji w PLN, a Klarna (kup teraz, zapłać później) działa zarówno dla PLN, jak i EUR. Włączasz je w ustawieniach metod płatności Stripe, a wtyczka WooCommerce pokazuje je na stronie płatności. Warto pamiętać, że dostępność konkretnych metod zależy od kraju konta i waluty transakcji, więc po włączeniu zrób test.
Potrzebujesz pomocy z projektem?
Robię strony WordPress i sklepy Shoper od 2500 zł. Partner Shoper, 120+ projektów.
- Odpowiedź w 24h
- Certyfikowany Partner Shoper
- 120+ zrealizowanych projektów
- Zgodność z RODO, pełna ochrona danych