checkout.session.completed feuert bei asynchronen Zahlarten schon nach dem Redirect mit payment_status=unpaid — der Listener hat trotzdem sofort erfüllt (Credits gutgeschrieben / Kauf bezahlt), auch wenn die Zahlung später scheitert. Erfüllung jetzt nur bei payment_status paid/no_payment_required, zusätzlich reagiert der Listener auf checkout.session.async_payment_succeeded; Fehlschläge werden geloggt, der Kauf bleibt wiederholbar auf Pending. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| Feature | ||
| Unit | ||
| Pest.php | ||
| TestCase.php | ||