Metody płatności w Magento 2
Opublikowano: 17 lipca 2026
Bez aktywnej metody płatności klient nie zakończy zamówienia. Magento ma kilka natywnych metod offline (Bank Transfer, Cash on Delivery, Check/Money Order, Purchase Order), do których dochodzą metody online instalowane jako osobne moduły / integracje (PayU, PayNow, Przelewy24, Stripe).
Lista wszystkich metod płatności
Ścieżka: Stores > Configuration > Sales > Payment Methods
Strona pokazuje wszystkie zainstalowane metody płatności - natywne na górze, instalowane (moduły) niżej. Każda metoda ma własny blok konfiguracji.
Krok 1. Bank Transfer (przelew bankowy)
Ścieżka: Stores > Configuration > Sales > Payment Methods > Bank Transfer Payment
| Pole | Wartość |
|---|---|
| Enabled | Yes |
| Title | Przelew bankowy |
| New Order Status | Pending |
| Payment from Applicable Countries | Specific Countries lub All Allowed Countries |
| Payment from Specific Countries | Poland (jeśli powyżej Specific) |
| Instructions | Tekst z numerem konta i danymi do przelewu (renderowany w mailu zamówienia + na success page) |
| Minimum Order Total | 0.00 (lub limit minimum, np. 50 zł) |
| Maximum Order Total | 0.00 (0 = bez limitu) |
| Sort Order | 1 |
Zapisz Save Config.
Treść Instructions
Wpisz dokładnie tekst, który klient zobaczy:
Numer konta: 12 3456 7890 1234 5678 9012 3456
Odbiorca: ECOM HOUSE SP. Z O.O.
Tytuł przelewu: [numer zamówienia]
W tytule przelewu podaj numer zamówienia, który otrzymasz po złożeniu zamówienia.
Zamówienie zostanie wysłane po zaksięgowaniu wpłaty.
Numer zamówienia w tytule: Zawsze przypominaj klientowi, by w tytule przelewu wpisał numer zamówienia. Bez tego identyfikacja płatności po stronie księgowości jest trudna i opóźnia wysyłkę.
Krok 2. Cash on Delivery (pobranie)
Ścieżka: Stores > Configuration > Sales > Payment Methods > Cash On Delivery Payment
| Pole | Wartość |
|---|---|
| Enabled | Yes |
| Title | Pobranie |
| New Order Status | Pending |
| Payment from Specific Countries | Poland |
| Instructions | Tekst widoczny dla klienta przy wyborze metody. |
| Minimum Order Total | 0.00 |
| Maximum Order Total | 0.00 |
| Sort Order | 2 |
Doliczenie opłaty za pobranie
Natywne Cash on Delivery nie obsługuje dopłaty za pobranie (np. +5 zł). Aby ją dodać, użyj modułu zewnętrznego lub reguły cenowej koszyka (Cart Price Rule) z warunkiem Payment Method = Cash on Delivery.
Krok 3. Check / Money Order (przekaz pocztowy)
Rzadko używana w Polsce - zazwyczaj wyłączamy:
Stores > Configuration > Sales > Payment Methods > Check / Money Order → Enabled = No.
Krok 4. Purchase Order (zamówienie kierunkowe - B2B)
Pozwala klientowi B2B złożyć zamówienie z numerem zamówienia po swojej stronie (PO number), bez natychmiastowej płatności - typowa praktyka B2B.
Stores > Configuration > Sales > Payment Methods > Purchase Order:
| Pole | Wartość B2B |
|---|---|
| Enabled | Yes |
| Title | Faktura z odroczonym terminem płatności |
| New Order Status | Pending |
| Payment from Specific Countries | Poland |
Sklepy B2C zazwyczaj wyłączają tę metodę.
Krok 5. Integracje online (osobne moduły)
Magento nie ma natywnie polskich operatorów płatności online. Aby zaakceptować płatność kartą / BLIK / przelew elektroniczny, zainstaluj moduł integracyjny:
| Operator | Moduł / status |
|---|---|
| PayU | Moduł PayU dla Magento - docs PayU |
| PayNow (mBank) | Integracja PayNow (dokumentacja w sekcji Integracje) |
| Przelewy24 | Moduł Przelewy24 dla Magento |
| BLIK | Dostępny przez PayU / PayNow / Przelewy24 jako podmetoda |
| Stripe | Oficjalny moduł Stripe - karty kredytowe, Apple Pay, Google Pay |
| PayPal | Natywne Magento - Stores > Configuration > Sales > Payment Methods > PayPal |
Środowiska testowe: Każdy operator ma środowisko testowe (sandbox) z dedykowanymi kluczami API. Zawsze testuj integrację w sandbox przed wdrożeniem produkcji - błędna konfiguracja kluczy może spowodować, że zamówienia nie zostaną zaksięgowane lub klient zostanie obciążony bez zarejestrowania zamówienia.
Krok 6. PayPal (natywne wsparcie Magento)
Ścieżka: Stores > Configuration > Sales > Payment Methods > PayPal
Magento ma natywne wsparcie PayPal w 3 wariantach:
| Wariant | Cel |
|---|---|
| PayPal Express Checkout | Najprostsze - przycisk PayPal w koszyku. |
| PayPal Payments Pro | Pełna integracja, klient płaci na stronie sklepu. |
| PayPal Payflow Pro | Wariant dla USA. |
Konfiguracja wymaga konta PayPal Business + kluczy API z PayPal Developer Dashboard.
Krok 7. Ograniczenia per metoda
Ograniczenie kwotowe
W każdej metodzie:
- Minimum Order Total - np.
50.00dla pobrania (firma kurierska może wymagać minimum). - Maximum Order Total - np.
2000.00dla pobrania (limit górny gotówki).
Ograniczenie per Customer Group
W konfiguracji metody:
- Allow Specific Customer Groups - wybór konkretnych grup klientów.
Typowy use case: Purchase Order dostępne tylko dla Wholesale Customer, nie dla Retail Customer.
Ograniczenie per kraj
- Payment from Specific Countries - np. PayPal dostępny dla wszystkich, pobranie tylko PL.
Ograniczenie per produkt (Cart Price Rules)
Magento nie ma natywnie ograniczenia "ten produkt można kupić tylko przelewem". Można to osiągnąć przez Cart Price Rules z warunkami Payment Method lub przez moduł zewnętrzny.
Krok 8. Order Status mapping
Dla każdej metody ustaw właściwy New Order Status:
| Metoda | New Order Status | Logika |
|---|---|---|
| Bank Transfer | Pending |
Czeka na zaksięgowanie wpłaty. |
| Cash on Delivery | Pending |
Czeka na potwierdzenie kurierem. |
| PayPal / Stripe (online) | Processing |
Płatność potwierdzona, idzie do realizacji. |
| Purchase Order | Pending Payment lub Processing |
Zależnie od strategii B2B. |
Processing automatycznie aktywuje invoice w Magento - klient dostanie fakturę. Pending - zamówienie czeka.
Najczęstsze problemy
W checkoutcie nie ma żadnej metody płatności
Sprawdź:
- Czy jakakolwiek metoda jest włączona (
Enabled = Yes). - Czy kraj klienta jest na liście
Payment from Specific Countriesaktywnych metod. - Czy spełnione są limity kwotowe (Minimum / Maximum Order Total).
- Wyczyść cache:
bin/magento cache:flush.
Klient nie widzi PayU/PayNow mimo zainstalowanego modułu
- Sprawdź konfigurację modułu - czy włączony (
Enabled = Yes) i poprawne klucze API (sandbox vs production!). - Sprawdź logi modułu -
var/log/payment.log(lub dedykowany log modułu). - Sprawdź ograniczenia per kraj / kwotę.
PayPal "redirects to PayPal but never returns"
Najczęściej niezgodność URL zwrotnego. W konfiguracji PayPal Developer ustaw poprawny Return URL zgodny z URL Twojego sklepu. Sprawdź również, czy Magento ma poprawny Base URL (Stores > Configuration > Web).
Płatność przeszła, ale zamówienie ma status "Pending Payment"
Najczęściej webhook od operatora płatności nie dotarł do Magento. Sprawdź:
- URL webhook w panelu operatora (musi wskazywać na endpoint Magento).
- Logi:
var/log/payment.log,var/log/system.log. - Czy firewall / WAF nie blokuje requestów z IP operatora.
Włączenie SDD/PayU sandbox na produkcji
Częsty błąd po wdrożeniu - sandbox keys pozostawione na produkcji. Zawsze sprawdź:
- W konfiguracji modułu → tryb (Sandbox / Production).
- Klucze API zgodne z wybranym trybem.
Powiązane
- Metody dostawy - komplementarna konfiguracja
- Konfiguracja podatków (VAT) - wpływ na faktury