Stripe-Integration (S0–S3): Einmalzahlungen über Stripe Checkout + Notfall-Go-Live
Wegen PAYONE-Ausfall vorgezogen live geschaltet: alle Einmalzahlungen (Shop + Salescenter) laufen über Stripe Hosted Checkout, Abos sind bis Phase S4 eingefroren. - Provider-Abstraktion: PaymentProvider-Enum, PaymentGatewayInterface, PaymentProviderManager (Settings-Schalter, provider-treu je Bestand), PayoneGateway als unveränderter Adapter - StripePaymentService: Checkout Session (eine Gesamtposition, Metadata, success/cancel-Redirects), StripeClientWrapper (lazy, Dark Launch), StripeCustomerService, StripeTransactionRecorder (client_secret-Redaction) - Webhook /stripe/webhook: Signaturprüfung, Idempotenz über stripe_webhook_events (Crash-Retry-Reprocessing), txaction-Prioritäten, Betrags-Guard, lockForUpdate-Paid-Pfad, genau eine Bestätigungsmail - Zahlungsmethoden-Anzeige aus charge.succeeded (carddata inkl. Wallet, auftragsunabhängiges Backfill aus dem Event-Store) - Checkout: Wartungsmodus mit Admin-Bypass, Abo-Freeze-Hinweis, Stripe-Option (Online-Zahlung) statt Zahlartenwahl, Vorkasse ausblendbar - Abo-Freeze-Guards: Cron user:make_abo_order, Retry, Kartenupdate - Admin-Settings-Karte Zahlungen (Provider, Wartung, Freeze, Vorkasse) - Hotfix: 500 bei Vorkasse ohne Clearing-Daten in admin/sales/_detail und checkout-final (PAYONE-Ausfall) - Doku dev/2026-07-08-stripe/ (Plan S0–S8, Konzept, IST-Analyse) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
1108381988
commit
e1da90ff91
48 changed files with 4428 additions and 831 deletions
9
bootstrap/cache/events.php
vendored
9
bootstrap/cache/events.php
vendored
|
|
@ -1,9 +0,0 @@
|
|||
<?php return array (
|
||||
'App\\Providers\\EventServiceProvider' =>
|
||||
array (
|
||||
'App\\Events\\Event' =>
|
||||
array (
|
||||
0 => 'App\\Listeners\\EventListener',
|
||||
),
|
||||
),
|
||||
);
|
||||
7
bootstrap/cache/packages.php
vendored
7
bootstrap/cache/packages.php
vendored
|
|
@ -123,6 +123,13 @@
|
|||
0 => 'Laravel\\Sail\\SailServiceProvider',
|
||||
),
|
||||
),
|
||||
'laravel/sentinel' =>
|
||||
array (
|
||||
'providers' =>
|
||||
array (
|
||||
0 => 'Laravel\\Sentinel\\SentinelServiceProvider',
|
||||
),
|
||||
),
|
||||
'laravel/tinker' =>
|
||||
array (
|
||||
'providers' =>
|
||||
|
|
|
|||
86
bootstrap/cache/services.php
vendored
86
bootstrap/cache/services.php
vendored
|
|
@ -38,28 +38,29 @@
|
|||
34 => 'Laravel\\Passport\\PassportServiceProvider',
|
||||
35 => 'Laravel\\Roster\\RosterServiceProvider',
|
||||
36 => 'Laravel\\Sail\\SailServiceProvider',
|
||||
37 => 'Laravel\\Tinker\\TinkerServiceProvider',
|
||||
38 => 'Laravel\\Ui\\UiServiceProvider',
|
||||
39 => 'Maatwebsite\\Excel\\ExcelServiceProvider',
|
||||
40 => 'Carbon\\Laravel\\ServiceProvider',
|
||||
41 => 'NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider',
|
||||
42 => 'Termwind\\Laravel\\TermwindServiceProvider',
|
||||
43 => 'Pest\\Laravel\\PestServiceProvider',
|
||||
44 => 'Spatie\\Html\\HtmlServiceProvider',
|
||||
45 => 'Spatie\\LaravelIgnition\\IgnitionServiceProvider',
|
||||
46 => 'Yajra\\DataTables\\DataTablesServiceProvider',
|
||||
47 => 'Laravel\\Tinker\\TinkerServiceProvider',
|
||||
48 => 'Acme\\Dhl\\DhlServiceProvider',
|
||||
49 => 'App\\Providers\\AppServiceProvider',
|
||||
50 => 'App\\Providers\\AuthServiceProvider',
|
||||
51 => 'App\\Providers\\EventServiceProvider',
|
||||
52 => 'App\\Providers\\HorizonServiceProvider',
|
||||
53 => 'App\\Providers\\RouteServiceProvider',
|
||||
54 => 'Jenssegers\\Date\\DateServiceProvider',
|
||||
55 => 'Maatwebsite\\Excel\\ExcelServiceProvider',
|
||||
56 => 'Yajra\\DataTables\\DataTablesServiceProvider',
|
||||
57 => 'App\\Providers\\YardServiceProvider',
|
||||
58 => 'Alban\\LaravelCollectiveSpatieHtmlParser\\ServiceProvider',
|
||||
37 => 'Laravel\\Sentinel\\SentinelServiceProvider',
|
||||
38 => 'Laravel\\Tinker\\TinkerServiceProvider',
|
||||
39 => 'Laravel\\Ui\\UiServiceProvider',
|
||||
40 => 'Maatwebsite\\Excel\\ExcelServiceProvider',
|
||||
41 => 'Carbon\\Laravel\\ServiceProvider',
|
||||
42 => 'NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider',
|
||||
43 => 'Termwind\\Laravel\\TermwindServiceProvider',
|
||||
44 => 'Pest\\Laravel\\PestServiceProvider',
|
||||
45 => 'Spatie\\Html\\HtmlServiceProvider',
|
||||
46 => 'Spatie\\LaravelIgnition\\IgnitionServiceProvider',
|
||||
47 => 'Yajra\\DataTables\\DataTablesServiceProvider',
|
||||
48 => 'Laravel\\Tinker\\TinkerServiceProvider',
|
||||
49 => 'Acme\\Dhl\\DhlServiceProvider',
|
||||
50 => 'App\\Providers\\AppServiceProvider',
|
||||
51 => 'App\\Providers\\AuthServiceProvider',
|
||||
52 => 'App\\Providers\\EventServiceProvider',
|
||||
53 => 'App\\Providers\\HorizonServiceProvider',
|
||||
54 => 'App\\Providers\\RouteServiceProvider',
|
||||
55 => 'Jenssegers\\Date\\DateServiceProvider',
|
||||
56 => 'Maatwebsite\\Excel\\ExcelServiceProvider',
|
||||
57 => 'Yajra\\DataTables\\DataTablesServiceProvider',
|
||||
58 => 'App\\Providers\\YardServiceProvider',
|
||||
59 => 'Alban\\LaravelCollectiveSpatieHtmlParser\\ServiceProvider',
|
||||
),
|
||||
'eager' =>
|
||||
array (
|
||||
|
|
@ -85,26 +86,27 @@
|
|||
19 => 'Laravel\\Mcp\\Server\\McpServiceProvider',
|
||||
20 => 'Laravel\\Passport\\PassportServiceProvider',
|
||||
21 => 'Laravel\\Roster\\RosterServiceProvider',
|
||||
22 => 'Laravel\\Ui\\UiServiceProvider',
|
||||
23 => 'Maatwebsite\\Excel\\ExcelServiceProvider',
|
||||
24 => 'Carbon\\Laravel\\ServiceProvider',
|
||||
25 => 'NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider',
|
||||
26 => 'Termwind\\Laravel\\TermwindServiceProvider',
|
||||
27 => 'Pest\\Laravel\\PestServiceProvider',
|
||||
28 => 'Spatie\\Html\\HtmlServiceProvider',
|
||||
29 => 'Spatie\\LaravelIgnition\\IgnitionServiceProvider',
|
||||
30 => 'Yajra\\DataTables\\DataTablesServiceProvider',
|
||||
31 => 'Acme\\Dhl\\DhlServiceProvider',
|
||||
32 => 'App\\Providers\\AppServiceProvider',
|
||||
33 => 'App\\Providers\\AuthServiceProvider',
|
||||
34 => 'App\\Providers\\EventServiceProvider',
|
||||
35 => 'App\\Providers\\HorizonServiceProvider',
|
||||
36 => 'App\\Providers\\RouteServiceProvider',
|
||||
37 => 'Jenssegers\\Date\\DateServiceProvider',
|
||||
38 => 'Maatwebsite\\Excel\\ExcelServiceProvider',
|
||||
39 => 'Yajra\\DataTables\\DataTablesServiceProvider',
|
||||
40 => 'App\\Providers\\YardServiceProvider',
|
||||
41 => 'Alban\\LaravelCollectiveSpatieHtmlParser\\ServiceProvider',
|
||||
22 => 'Laravel\\Sentinel\\SentinelServiceProvider',
|
||||
23 => 'Laravel\\Ui\\UiServiceProvider',
|
||||
24 => 'Maatwebsite\\Excel\\ExcelServiceProvider',
|
||||
25 => 'Carbon\\Laravel\\ServiceProvider',
|
||||
26 => 'NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider',
|
||||
27 => 'Termwind\\Laravel\\TermwindServiceProvider',
|
||||
28 => 'Pest\\Laravel\\PestServiceProvider',
|
||||
29 => 'Spatie\\Html\\HtmlServiceProvider',
|
||||
30 => 'Spatie\\LaravelIgnition\\IgnitionServiceProvider',
|
||||
31 => 'Yajra\\DataTables\\DataTablesServiceProvider',
|
||||
32 => 'Acme\\Dhl\\DhlServiceProvider',
|
||||
33 => 'App\\Providers\\AppServiceProvider',
|
||||
34 => 'App\\Providers\\AuthServiceProvider',
|
||||
35 => 'App\\Providers\\EventServiceProvider',
|
||||
36 => 'App\\Providers\\HorizonServiceProvider',
|
||||
37 => 'App\\Providers\\RouteServiceProvider',
|
||||
38 => 'Jenssegers\\Date\\DateServiceProvider',
|
||||
39 => 'Maatwebsite\\Excel\\ExcelServiceProvider',
|
||||
40 => 'Yajra\\DataTables\\DataTablesServiceProvider',
|
||||
41 => 'App\\Providers\\YardServiceProvider',
|
||||
42 => 'Alban\\LaravelCollectiveSpatieHtmlParser\\ServiceProvider',
|
||||
),
|
||||
'deferred' =>
|
||||
array (
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue