Magento 2
Oficjalny moduł płatności dpay.pl dla Magento 2. Umożliwia przyjmowanie płatności online w sklepie Magento bez konieczności pisania kodu. Moduł obsługuje automatyczne generowanie faktur, zwroty online oraz powiadomienia IPN.
Wymagania
- Magento 2.4.x lub nowszy
- PHP 7.4 lub nowszy
- Aktywne konto w Panelu dpay.pl z utworzonym Punktem Płatności
Obsługiwane metody płatności
- BLIK (w tym BLIK Level 0 - inline)
- Przelewy bankowe (pay-by-link)
- Karty płatnicze (inline)
- Google Pay i Apple Pay
- PayPal
- Paysafecard
- Raty
Instalacja
Metoda 1 - Composer (zalecana)
- W katalogu głównym Magento wykonaj:
composer require dpay/magento2-payment - Włącz moduł i zaktualizuj bazę danych:
bin/magento module:enable DPay_Payment
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento cache:flush
Metoda 2 - ręczna instalacja
- Pobierz najnowszą wersję modułu ze strony dpay.pl lub z GitHuba.
- Rozpakuj archiwum do katalogu
app/code/DPay/Payment/. - Włącz moduł i zaktualizuj bazę danych:
bin/magento module:enable DPay_Payment
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento cache:flush
Konfiguracja
Krok 1 - Przygotowanie danych w Panelu dpay.pl
- Zaloguj się do Panelu dpay.pl.
- Przejdź do sekcji Punkty Płatności.
- Utwórz nowy Punkt Płatności lub wybierz istniejący.
- Zanotuj:
- Nazwa serwisu (
service_name) - unikalna nazwa Twojego Punktu Płatności - Tajny hash (
secret_hash) - klucz używany do podpisywania żądań
- Nazwa serwisu (
- W ustawieniach Punktu Płatności ustaw adres IPN na:
https://twoj-sklep.pl/dpay/callback/ipn
Ważne
Tajny hash powinien być traktowany jak hasło. Nigdy nie udostępniaj go publicznie ani nie umieszczaj w kodzie frontendowym.
Krok 2 - Konfiguracja modułu w Magento
- Przejdź do Stores > Configuration > Sales > Payment Methods.
- Znajdź sekcję dPay - Payment Gateway i rozwiń ją.
- Wypełnij formularz konfiguracyjny:
| Pole | Opis |
|---|---|
| Enabled | Zaznacz Yes, aby aktywować bramkę płatności |
| Title | Nazwa metody płatności widoczna dla klienta (domyślnie dPay) |
| Service Name | Nazwa serwisu z Panelu dpay.pl |
| Secret Hash Key | Tajny hash z Panelu dpay.pl (przechowywany w formie zaszyfrowanej) |
| Enable PayPal | Włącz płatności PayPal |
| Enable Credit Card | Włącz płatności kartą kredytową |
| Enable Paysafecard | Włącz płatności Paysafecard |
| Enable Installments | Włącz płatności ratalne |
| Disable PayByLink + Transfer | Wyłącz przelewy bankowe i pay-by-link |
| BLIK Zero | Włącz wpisywanie kodu BLIK bezpośrednio w checkoucie |
| Apple Pay | Włącz płatności Apple Pay |
| Google Pay | Włącz płatności Google Pay |
| Credit card (dPay) | Włącz formularz karty inline w checkoucie |
| New Order Status | Status nowego zamówienia (domyślnie Pending) |
| Payment from Applicable Countries | Ogranicz dostępność do wybranych krajów |
| Sort Order | Kolejność wyświetlania metody płatności |
- Kliknij Save Config.
- Wyczyść cache: System > Cache Management > Flush Magento Cache.
Krok 3 - Weryfikacja
- Złóż testowe zamówienie w swoim sklepie.
- Wybierz dPay jako metodę płatności.
- Sprawdź, czy następuje poprawne przekierowanie na stronę płatności dpay.pl.
- Po dokonaniu płatności sprawdź, czy status zamówienia zmienił się na Processing, a faktura została automatycznie wygenerowana.
Zwroty
Moduł obsługuje zwroty online bezpośrednio z panelu Magento:
- Przejdź do zamówienia w Sales > Orders.
- Otwórz fakturę powiązaną z zamówieniem.
- Kliknij Credit Memo i podaj kwotę zwrotu.
- Zatwierdź operację.
Zwrot (pełny lub częściowy) zostanie automatycznie przesłany do dpay.pl.
Mapowanie statusów
| Status dpay.pl | Status Magento |
|---|---|
new | Pending |
completed | Processing (faktura generowana automatycznie) |
rejected | Canceled |
Rozwiązywanie problemów
Zamówienia nie zmieniają statusu automatycznie
- Sprawdź, czy adres IPN (
https://twoj-sklep.pl/dpay/callback/ipn) jest prawidłowo ustawiony w Panelu dpay.pl. - Upewnij się, że endpoint IPN jest dostępny publicznie i nie jest blokowany przez firewall lub WAF.
- Sprawdź logi Magento:
var/log/system.logivar/log/exception.log.
Błąd "Nieprawidłowa suma kontrolna"
- Upewnij się, że Secret Hash Key w konfiguracji modułu jest identyczny z hashem w Panelu dpay.pl.
- Sprawdź, czy nie ma dodatkowych spacji przed lub po wartości hasha.
Moduł nie pojawia się w konfiguracji
- Upewnij się, że moduł jest włączony:
bin/magento module:status DPay_Payment. - Wykonaj ponownie
bin/magento setup:di:compileibin/magento cache:flush.
Przekierowanie na stronę płatności nie działa
- Sprawdź, czy Service Name jest poprawnie wpisany.
- Upewnij się, że waluta sklepu to PLN - moduł obsługuje wyłącznie tę walutę.