Fix proxied checkout CSRF for Merchant, Give, Invoice and Events.
Deploy Ladill Give / deploy (push) Successful in 44s

Public order/pay POSTs hit ladl.link first; satellite CSRF tokens cannot bind
to Link (or platform/satellite) sessions, which returned 419 and showed
"Could not start checkout." Except public checkout paths and return
access_code from owner-gateway Paystack init. Sync contained Paystack sheet.
This commit is contained in:
isaacclad
2026-07-21 22:54:01 +00:00
parent e5d95167dd
commit c1b6a418ab
3 changed files with 489 additions and 58 deletions
+6
View File
@@ -13,6 +13,12 @@ return Application::configure(basePath: dirname(__DIR__))
health: '/up',
)
->withMiddleware(function (Middleware $middleware): void {
// Giving-page donation POSTs are proxied ladl.link → platform → Give without
// a browser session cookie that matches Give CSRF tokens.
$middleware->validateCsrfTokens(except: [
'q/*/order',
]);
$middleware->redirectGuestsTo(fn (Request $request) => route('sso.connect', [
'redirect' => $request->fullUrl(),
]));