Download the PHP package crehler/inpost-pay without Composer

On this page you can find all versions of the php package crehler/inpost-pay. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package inpost-pay

InPost Pay - Wtyczka dla Shopware 6.7

Którą wersję zainstalować (dopasuj do swojej wersji Shopware):

  • Shopware 6.5 → composer require crehler/inpost-pay:^1.0
  • Shopware 6.6 → composer require crehler/inpost-pay:^2.0
  • Shopware 6.7.0 – 6.7.6 → composer require crehler/inpost-pay:^3.0
  • Shopware 6.7.7+ → composer require crehler/inpost-pay:^4.0

Spis treści


Wprowadzenie

Wtyczka InPost Pay umożliwia integrację platformy e-commerce Shopware 6.7 z systemem płatności InPost Pay. Dzięki tej wtyczce klienci mogą korzystać z różnorodnych metod płatności oferowanych przez InPost Pay, a także z wygodnych widgetów prezentujących informacje o dostępnych opcjach płatności bezpośrednio na stronach produktów, w koszyku oraz podczas procesu finalizacji zamówienia.


Co to jest InPost Pay?

InPost Pay to kompleksowa platforma płatnicza oferowana przez firmę InPost, która umożliwia:

Cele biznesowe InPost Pay:

  1. Zwiększenie konwersji - oferowanie wielu metod płatności zwiększa szanse na finalizację zakupu
  2. Budowanie zaufania - znana marka InPost zwiększa zaufanie klientów
  3. Elastyczność finansowa - odroczone płatności i raty umożliwiają zakupy klientom o różnej sytuacji finansowej
  4. Uproszczenie procesu zakupowego - szybkie płatności mobilne (BLIK, Google Pay, Apple Pay)
  5. Bezpieczeństwo - nowoczesne mechanizmy bezpieczeństwa chronią sprzedawcę i kupującego

Funkcjonalności wtyczki

1. Integracja z systemem płatności InPost Pay

2. Widget InPost Pay

Wtyczka wyświetla interaktywne widgety InPost Pay w następujących lokalizacjach:

Widgety są w pełni konfigurowalne (kolor, rozmiar, styl, marginesy, wyrównanie).

3. Synchronizacja koszyka

4. Tworzenie zamówień

5. Obsługa webhooków

Wtyczka odbiera i przetwarza webhooki od InPost Pay:

6. Mapowanie metod dostawy

Wtyczka umożliwia mapowanie metod dostawy Shopware na typy dostawy InPost Pay:

7. Wsparcie dla wielu metod płatności

Wtyczka obsługuje następujące metody płatności:


Wymagania systemowe

Wymagania platformy:

Wymagania funkcjonalne:

Wymagania Shopware:


Instalacja

1. Instalacja przez Composer (zalecane)

2. Instalacja manualna

3. Migracja bazy danych

Po instalacji wtyczki zostaną automatycznie uruchomione migracje tworzące wymagane tabele w bazie danych:


Konfiguracja

Dostęp do konfiguracji

  1. Zaloguj się do panelu administracyjnego Shopware
  2. Przejdź do: Rozszerzenia → Moje rozszerzenia → Aplikacje
  3. Znajdź wtyczkę InPost Pay i kliknij ikonę ustawień (⚙️)

Konfiguracja podstawowa

1. InPost Pay Configuration

Pole Opis Wymagane
Enable Sandbox Mode Włącza tryb testowy (sandbox). Wyłącz dla produkcji. Tak
Client ID Identyfikator klienta otrzymany od InPost Pay Tak
Client Secret Sekret klienta (nie udostępniaj publicznie) Tak
Post ID Identyfikator punktu sprzedaży Tak
Merchant Client ID Identyfikator merchantowy Tak
Merchant Secret Sekret merchantowy używany do walidacji webhooków Tak

Przykład:


Konfiguracja metod płatności

2. Payment Methods Configuration

W tej sekcji możesz wybrać, które metody płatności będą dostępne dla klientów w widgecie InPost Pay.

Dostępne metody:

Zalecenie: Włącz metody płatności najpopularniejsze wśród Twoich klientów, ale nie przytłaczaj ich zbyt dużą liczbą opcji.


Mapowanie metod dostawy

3. Delivery Method Mapping

Wtyczka wymaga mapowania metod dostawy Shopware na typy dostawy InPost Pay. Jest to kluczowe dla poprawnego działania integracji.

Typ dostawy InPost Pay Opis Przykładowe metody Shopware
APM (Paczkomat) Odbiór w paczkomacie InPost "InPost Paczkomat", "Odbiór w paczkomacie"
Courier Dostawa kurierska "DHL", "DPD", "UPS", "InPost Kurier"
Digital Produkty cyfrowe "Pobieranie cyfrowe", "E-book", "Dostawa email"

Jak skonfigurować:

  1. Kliknij w pole APM (Paczkomat) Methods
  2. Wybierz metody dostawy Shopware, które odpowiadają dostawie do paczkomatu
  3. Powtórz dla Courier Delivery Methods (kurier)
  4. Powtórz dla Digital Delivery Methods (produkty cyfrowe)

Konfiguracja widgetów

Wtyczka oferuje szczegółową konfigurację wyglądu widgetów dla 4 różnych lokalizacji:

4. Widget Display - Product Card (Strona produktu)

Konfiguracja widgetu wyświetlanego na stronie produktu.

Pole Opis Domyślna wartość
Display Widget Czy wyświetlać widget ✅ Włączone
Dark Mode Ciemny motyw ⬜ Wyłączone
Variant Wariant kolorystyczny Secondary
Frame Style Styl ramki (rounded/round) -
Size Rozmiar (xs/sm/md/lg/xl) -
Max Width Maksymalna szerokość w px (220-1200) -
Margin Top/Bottom/Left/Right Marginesy w px -
Alignment Wyrównanie (Left/Center/Right) -

5. Widget Display - Mini Cart (Mini koszyk)

Konfiguracja widgetu w wysuwanym koszyku (offcanvas).

(Pola identyczne jak w Product Card)

6. Widget Display - Cart Summary (Podsumowanie koszyka)

Konfiguracja widgetu na stronie koszyka.

(Pola identyczne jak w Product Card)

7. Widget Display - Checkout Page (Strona checkout)

Konfiguracja widgetu na stronie finalizacji zamówienia.

(Pola identyczne jak w Product Card)

Zalecenia dotyczące widgetów:


Wymagane ustawienia Shopware

⚠️ KRYTYCZNE: Konfiguracja numeru telefonu

Wtyczka InPost Pay wymaga numeru telefonu klienta do poprawnego działania. Numer telefonu jest niezbędny do:

Jak włączyć i skonfigurować numer telefonu w Shopware:

  1. Włączenie pola numer telefonu w systemie:

    • Zaloguj się do panelu administracyjnego Shopware
    • Przejdź do: Settings (Ustawienia) → System → Customer groups (Grupy klientów)
    • Wybierz grupę klientów, którą chcesz edytować (np. "Standard customer group")
    • W sekcji Registration (Rejestracja) znajdź opcję Phone number field
    • ✅ Zaznacz opcję Display (Wyświetl) - aby pole było widoczne
    • ✅ Zaznacz opcję Required (Wymagane) - aby pole było obowiązkowe
  2. Alternatywnie - konfiguracja przez Settings → Shop:

    • Przejdź do: Settings → Shop → Customer
    • W sekcji Address fields (Pola adresu) znajdź:
      • Phone number → ustaw jako Display and required (Wyświetl i wymagane)
  3. Weryfikacja ustawień:

    • Przejdź na frontend sklepu w trybie incognito
    • Sprawdź formularz rejestracji - pole "Phone number" powinno być widoczne i oznaczone jako wymagane (*)
    • Sprawdź formularz checkout - pole "Phone number" powinno być widoczne w sekcji adresu
    • Spróbuj zarejestrować konto bez numeru telefonu - system powinien wyświetlić błąd walidacji
  4. Weryfikacja w bazie danych:
    • Sprawdź, czy w tabeli customer_address kolumna phone_number zawiera dane
    • Możesz to zrobić przez: SELECT phone_number FROM customer_address LIMIT 10;

Format numeru telefonu:


Jak to działa?

Przepływ procesu płatności InPost Pay

Synchronizacja koszyka w czasie rzeczywistym

Wtyczka automatycznie synchronizuje koszyk między Shopware a InPost Pay:

Synchronizacja jest asynchroniczna i nie wpływa na wydajność sklepu.

Obsługa płatności

Statusy płatności (webhooks):

Webhook InPost Pay Status transakcji Shopware Opis
PAYMENT_AUTHORIZED paid Płatność została opłacona - zamówienie można realizować
PAYMENT_DECLINED failed Płatność została odrzucona - klient musi spróbować ponownie
REFUND refunded Zwrot środków został zrealizowany
REFUND_DECLINED - Zwrot odrzucony - wymaga ręcznej interwencji
SETTLEMENT - Transakcja rozliczona (informacja księgowa)

Statusy płatności (order events - /order/{orderId}/event):

PaymentStatus InPost Pay Status transakcji Shopware Opis
AUTHORIZED paid Płatność została opłacona
COMPLETED paid Płatność zakończona
FAILED failed Płatność nieudana
CANCELLED cancelled Płatność anulowana
PENDING in_progress Płatność w trakcie
REFUNDED refunded Zwrot zrealizowany

Uwaga: Status transakcji w Shopware jest aktualizowany automatycznie przez webhooki i eventy. Początkowo każde zamówienie ma status open (oczekuje), który jest aktualizowany po otrzymaniu webhooka/eventu od InPost Pay. W odpowiedzi na event zwracamy order_merchant_status_description z polskim opisem aktualnego statusu.


Endpointy API

Wtyczka udostępnia następujące endpointy API dla komunikacji z InPost Pay:

Publiczne API (bez autoryzacji)

Koszyk

Zamówienie

Webhooki

Storefront API (wymagana sesja klienta)

Zabezpieczenie webhooków

Webhooki od InPost Pay są zabezpieczone podpisem HMAC SHA-256. Wtyczka automatycznie weryfikuje podpis używając Merchant Secret z konfiguracji.


Obsługa Webhooków

Konfiguracja URL webhooka w InPost Pay

Podczas konfiguracji konta InPost Pay podaj następujący URL webhooka:

Zastąp twoja-domena.pl rzeczywistą domeną Twojego sklepu.

Typy webhooków

Wtyczka obsługuje następujące typy webhooków:

1. PAYMENT_AUTHORIZED

Wysyłany, gdy płatność została autoryzowana przez InPost Pay.

Akcja: Wtyczka aktualizuje status transakcji na "authorized" (autoryzowana).

Znaczenie biznesowe: Płatność została zatwierdzona, ale środki jeszcze nie zostały pobrane. Zamówienie można realizować.

2. PAYMENT_DECLINED

Wysyłany, gdy płatność została odrzucona (np. brak środków, błąd karty).

Akcja: Wtyczka aktualizuje status transakcji na "failed" (nieudana).

Znaczenie biznesowe: Płatność nie powiodła się. Klient musi spróbować ponownie lub wybrać inną metodę płatności.

3. REFUND

Wysyłany, gdy zwrot środków został pomyślnie przetworzony.

Akcja: Wtyczka aktualizuje status transakcji na "refunded" (zwrócona) i tworzy notatkę o zwrocie.

Znaczenie biznesowe: Środki zostały zwrócone klientowi. Proces zwrotu zakończony.

4. REFUND_DECLINED

Wysyłany, gdy próba zwrotu została odrzucona.

Akcja: Wtyczka loguje błąd i tworzy notatkę o nieudanym zwrocie.

Znaczenie biznesowe: Zwrot nie powiódł się - wymaga ręcznej interwencji.

5. SETTLEMENT

Wysyłany, gdy transakcja została rozliczona (środki przekazane do sprzedawcy).

Akcja: Wtyczka loguje informację o rozliczeniu dla celów księgowych.

Znaczenie biznesowe: Transakcja została ostatecznie rozliczona - środki trafiły na konto sprzedawcy.

Debugowanie webhooków

Webhooki są logowane w logach Shopware. Aby włączyć szczegółowe logowanie:

  1. Przejdź do pliku .env w katalogu głównym Shopware
  2. Ustaw poziom logowania na debug:

  3. Logi znajdziesz w: var/log/dev.log

Przykładowy log webhooka:

Testowanie webhooków: Możesz ręcznie przetestować endpoint webhooków używając narzędzi jak curl lub Postman:

Uwaga: W środowisku produkcyjnym webhook wymaga poprawnego podpisu HMAC.


Rozwiązywanie problemów

Problem: Widget InPost Pay nie wyświetla się na stronie

Rozwiązanie:

  1. Sprawdź, czy wtyczka jest aktywna: bin/console plugin:list | grep InpostPay
  2. Sprawdź konfigurację widgetów - upewnij się, że "Display Widget" jest włączone
  3. Wyczyść cache: bin/console cache:clear
  4. Sprawdź logi przeglądarki (F12 → Console) w poszukiwaniu błędów JavaScript

Problem: Błąd "Basket session not found"

Rozwiązanie:

  1. Sprawdź, czy sesja koszyka została utworzona
  2. Sprawdź, czy nie upłynął timeout sesji
  3. Sprawdź logi: var/log/dev.log

Problem: Płatność nie jest aktualizowana po potwierdzeniu

Rozwiązanie:

  1. Sprawdź, czy URL webhooka jest poprawnie skonfigurowany w InPost Pay
  2. Sprawdź, czy Merchant Secret jest poprawny
  3. Sprawdź logi webhooków: var/log/dev.log | grep webhook
  4. Sprawdź, czy serwer jest dostępny publicznie (nie localhost)

Problem: Błąd "Invalid webhook signature"

Rozwiązanie:

  1. Sprawdź, czy Merchant Secret w konfiguracji jest poprawny
  2. Upewnij się, że używasz tej samej wartości co w panelu InPost Pay
  3. Sprawdź, czy webhook zawiera wymagane nagłówki: X-API-Version, X-Signature

Problem: Brak numeru telefonu w zamówieniu

Rozwiązanie:

  1. Sprawdź konfigurację pól klienta w Shopware (patrz: Wymagane ustawienia Shopware)
  2. Upewnij się, że numer telefonu jest oznaczony jako wymagany
  3. Przetestuj formularz rejestracji i checkout

Problem: Błąd "Client credentials are invalid"

Rozwiązanie:

  1. Sprawdź, czy Client ID i Client Secret są poprawne
  2. Upewnij się, że używasz właściwego środowiska (sandbox vs. production)
  3. Sprawdź, czy certyfikaty nie wygasły
  4. Skontaktuj się z działem technicznym InPost Pay

Problem: Webhook nie aktualizuje statusu zamówienia

Rozwiązanie:

  1. Sprawdź logi webhooka: tail -f var/log/dev.log | grep -i inpost
  2. Upewnij się, że webhook zawiera poprawny typ zdarzenia: PAYMENT_AUTHORIZED, PAYMENT_DECLINED, REFUND, REFUND_DECLINED lub SETTLEMENT
  3. Sprawdź, czy orderReference w webhooku odpowiada istniejącemu zamówieniu w Shopware
  4. Zweryfikuj, czy webhooki są faktycznie wysyłane z InPost Pay - sprawdź w panelu InPost Pay historię webhooków
  5. Przetestuj endpoint ręcznie za pomocą curl (patrz sekcja "Testowanie webhooków")

Wsparcie techniczne

Wsparcie wtyczki

Wsparcie InPost Pay

Przydatne komendy Shopware


Licencja

Wtyczka jest udostępniana na licencji MIT.

Autor

Crehler Sp. z o. o.


Wersja dokumentacji: 1.0.0 Data: 2025-12-01 Wersja wtyczki: 1.0.0

📅 Kalendarium

Utworzono: 14.11.2025 Ostatnia modyfikacja: 07.01.2026


All versions of inpost-pay with dependencies

PHP Build Version
Package Version
Requires php Version ~8.2.0 || ~8.3.0 || ~8.4.0 || ~8.5.0
shopware/core Version ~6.7.7
league/oauth2-client Version ^2.7
guzzlehttp/guzzle Version ^7.5.0
ramsey/uuid Version ^4.7
doctrine/dbal Version ^4.3
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package crehler/inpost-pay contains the following files

Loading the files please wait ...