# Testy akceptacyjne Core 0.7.1 — PayCore

Wypełnij po instalacji:

```text
Upgrade 0.7.1:
/payments.php:
Ustawienia PayCore:
Tryb bezpieczny:
Utworzenie zamówienia:
Link płatniczy:
Przelew tradycyjny:
Oznaczenie opłacone ręcznie:
Kolejka komunikacji z linkiem:
Sentinel:
Stripe sandbox:
Stripe webhook:
Przelewy24 sandbox:
P24 webhook/log:
```

## Test 1 — upgrade

1. Otwórz `/upgrade_0_7.php` jako superadmin.
2. Uruchom upgrade.
3. Oczekiwany wynik: komunikat sukcesu.

## Test 2 — PayCore

1. Otwórz `/payments.php`.
2. Sprawdź, czy widzisz KPI, formularz tworzenia płatności, ustawienia i listę zamówień.

## Test 3 — pierwsza płatność testowa

1. Wybierz fikcyjnego pacjenta.
2. Typ: `Konsultacja`.
3. Tytuł: `Konsultacja testowa`.
4. Kwota: `1` albo `600`.
5. Utwórz link.
6. Oczekiwany wynik: zamówienie pojawia się na liście.

## Test 4 — link płatniczy pacjenta

1. Otwórz link z tabeli.
2. Oczekiwany wynik: pacjent widzi kwotę, tytuł i przycisk przelewu tradycyjnego.

## Test 5 — przelew tradycyjny

1. Kliknij `Przelew tradycyjny`.
2. Oczekiwany wynik: pacjent widzi dane przelewu i tytuł.
3. W PayCore oznacz zamówienie jako opłacone ręcznie.
4. Status powinien zmienić się na `paid`.

## Test 6 — kolejka komunikacji

Po utworzeniu linku w `communication_queue` powinien pojawić się komunikat e-mail z linkiem do płatności.

## Test 7 — Stripe sandbox

Po wpisaniu danych sandbox Stripe i wyłączeniu trybu bezpiecznego:

1. Włącz Stripe.
2. Otwórz link płatniczy.
3. Kliknij Stripe.
4. Oczekiwany wynik: przekierowanie do Stripe Checkout.
5. Po płatności powrót na `payment_return.php`.

## Test 8 — webhook Stripe

1. Skonfiguruj endpoint `/payment_webhook.php?gateway=stripe`.
2. Po zdarzeniu `checkout.session.completed` status zamówienia powinien zmienić się na `paid`, jeśli podpis webhooka jest prawidłowy.

## Test 9 — Przelewy24 sandbox

Po wpisaniu danych P24 sandbox i wyłączeniu trybu bezpiecznego:

1. Włącz Przelewy24.
2. Otwórz link płatniczy.
3. Kliknij Przelewy24.
4. Oczekiwany wynik: przekierowanie do strony P24 sandbox.

## Test 10 — P24 webhook

Core 0.7.1 zapisuje webhook P24 w logu i oznacza zamówienie jako `manual_review`, do czasu pełnej weryfikacji sandbox/confirm w kolejnym hardeningu.
