VirtueMart
Oficjalna wtyczka dpay.pl dla VirtueMart 3 (Joomla). Umożliwia przyjmowanie płatności online w sklepie internetowym opartym na platformie Joomla z rozszerzeniem VirtueMart. Obsługuje BLIK Level 0 (inline), karty płatnicze, PayPal i inne metody płatności.
Wymagania
- Joomla 3.x lub 4.x
- VirtueMart 3.x
- 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 (BLIK BNPL)
Instalacja
- Pobierz paczkę wtyczki (plik
.zip) ze strony dpay.pl lub z GitHuba. - Zaloguj się do panelu administracyjnego Joomla.
- Przejdź do Extensions > Manage > Install.
- Wybierz zakładkę Upload Package File i prześlij pobrany plik
.zip. - Po zakończeniu instalacji wtyczka zostanie automatycznie zarejestrowana jako plugin płatności VirtueMart.
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:
gdzie
https://twoj-sklep.pl/index.php?option=com_virtuemart&view=pluginresponse&task=pluginnotification&pm=IDIDto identyfikator metody płatności w VirtueMart.
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 metody płatności
- Przejdź do VirtueMart > Payment Methods w panelu Joomla.
- Kliknij New i utwórz nową metodę płatności.
- Na zakładce Payment Method Information ustaw:
- Payment Name - nazwa widoczna dla klienta (np. Płatność online - dpay.pl)
- Payment Method - wybierz VMPAYMENT_DPAY
- Przejdź do zakładki Configuration i wypełnij:
| Pole | Opis |
|---|---|
| Service Name | Nazwa serwisu z Panelu dpay.pl |
| Hash Key | Tajny hash z Panelu dpay.pl |
| PayPal | Włącz/wyłącz płatności PayPal |
| Credit Card | Włącz/wyłącz płatności kartą |
| Paysafecard | Włącz/wyłącz płatności Paysafecard |
| Installment | Włącz/wyłącz płatności ratalne |
| No Banks | Ukryj listę banków |
| BLIK Zero | Włącz płatności BLIK Level 0 (inline) |
| Apple Pay | Włącz płatności Apple Pay |
| Google Pay | Włącz płatności Google Pay |
| Card Inline | Włącz formularz karty inline |
| Status Pending | Status zamówienia dla oczekujących płatności (domyślnie: P) |
| Status Success | Status zamówienia po udanej płatności (domyślnie: C) |
| Status Cancel | Status zamówienia po anulowaniu (domyślnie: X) |
| Min Amount | Minimalna kwota zamówienia |
| Max Amount | Maksymalna kwota zamówienia |
- Zapisz konfigurację.
Krok 3 - Weryfikacja
- Złóż testowe zamówienie w sklepie.
- Wybierz dpay.pl jako metodę płatności.
- Sprawdź, czy następuje poprawne przekierowanie na stronę płatności.
- Po dokonaniu płatności sprawdź, czy status zamówienia w VirtueMart zmienił się na Confirmed.
Zwroty
Wtyczka nie obsługuje automatycznych zwrotów z poziomu panelu VirtueMart. Zwroty należy wykonywać bezpośrednio z Panelu dpay.pl lub za pomocą API dpay.pl.
Mapowanie statusów
| Status dpay.pl | Status VirtueMart |
|---|---|
| Nowa transakcja | Pending (P) |
completed | Confirmed (C) |
| Anulowana | Cancelled (X) |
Rozwiązywanie problemów
Zamówienia nie zmieniają statusu automatycznie
- Sprawdź, czy adres IPN jest prawidłowo ustawiony w Panelu dpay.pl.
- Upewnij się, że adres IPN jest dostępny publicznie (nie jest blokowany przez firewall lub SEF routing).
- Sprawdź logi VirtueMart w panelu administracyjnym.
Błąd waluty
- Wtyczka obsługuje wyłącznie walutę PLN (kod VirtueMart: 114). Upewnij się, że waluta sklepu jest ustawiona na PLN.
Wtyczka nie wyświetla się przy kasie
- Sprawdź, czy metoda płatności jest opublikowana (Published).
- Upewnij się, że nie ustawiłeś zbyt restrykcyjnych limitów kwotowych (Min/Max Amount).
Błąd "BAD SIGNATURE" w logach
- Upewnij się, że Hash Key w konfiguracji wtyczki jest identyczny z hashem w Panelu dpay.pl.