Witam, robiłem integracje systemu według filmiku:
https://www.youtube.com/watch?v=03Q6RQQJAs0

Gość trochę słabo tłumaczy na jakiej zasadzie przychodzi informacja zwrotna, bo do mnie nie przychodzi:

Plik .env
  1. PRZELEWY24_MERCHANT_ID="000000(id)"
  2. PRZELEWY24_POS_ID="000000 (id)"
  3. PRZELEWY24_CRC="Klucz do CRC (sandbox)"
  4. PRZELEWY24_REPORT_KEY="Klucz do raportów (sandbox)"
  5. PRZELEWY24_URL_RETURN="https://electroit.pl/payment/order"
  6. PRZELEWY24_URL_STATUS="https://electroit.pl/payment/status"
  7. PRZELEWY24_TEST_SERVER=true
  8. PRZELEWY24_WAIT_FOR_RESULT=true


plik web.php
  1. Route::post("/payment/status", [\App\Http\Controllers\PaymentController::class, "status"])->withoutMiddleware(['csrf']);


PaymentController.php
  1. <?php
  2.  
  3. namespace App\Http\Controllers;
  4.  
  5. use App\Enums\PaymentsStatus;
  6. use App\Models\Payment;
  7. use Devpark\Transfers24\Requests\Transfers24;
  8. use Illuminate\Http\Request;
  9. use Illuminate\Support\Facades\Log;
  10.  
  11. class PaymentController extends Controller
  12. {
  13. private Transfers24 $transfers24;
  14.  
  15. public function __construct(Transfers24 $transfers24)
  16. {
  17. $this->transfers24 = $transfers24;
  18. }
  19.  
  20. public function status(Request $request): void
  21. {
  22.  
  23. Log::error(json_encode($request));
  24. $response = $this->transfers24->receive($request);
  25. $payment = Payment::where("session_id", $response->getSessionId())->firstOrFail();
  26. if ($response->isSuccess()) {
  27. Log::error("Poprawnie");
  28. $payment->status = PaymentsStatus::SUCCESS;
  29.  
  30. } else {
  31. $payment->status = PaymentsStatus::FAIL;
  32. Log::error("Zle");
  33. }
  34. $payment->save();
  35. }
  36. }


I nie mam żadnej informacji zwrotnej... Status wcale mi się nie wykonuje... Rozmawiałem z supportem i piszą że w odpowiedzi na notyfikacje otrzymują poniższe responseBody:


Kod
   [responseBody] => Page Expired

        
            /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}a{background-color:transparent}code{font-family:monospace,monospace;font-size:1em}[hidden]{display:none}html{font-family:sy
    [httpResponseCode] => 419
    [connectionTotalTime] => 0.156787
    [error] =>


zrobiłem... respond musiałem przenieść na api, a następnie komenda:
Kod
php artisan config:cache

no i działa