fix(webhook): normalize event names to uppercase for case-insensitive matching
Some checks failed
Build and Deploy / build (push) Has been cancelled

Saleor sends event names in lowercase (order_created) but our code
expects uppercase (ORDER_CREATED). This fix normalizes the event
name before checking supported events.
This commit is contained in:
Unchained
2026-03-25 14:59:32 +02:00
parent 6e0a05c314
commit 923f805d47

View File

@@ -412,14 +412,17 @@ export async function POST(request: NextRequest) {
return NextResponse.json({ error: "Missing saleor-event header" }, { status: 400 }); return NextResponse.json({ error: "Missing saleor-event header" }, { status: 400 });
} }
if (!SUPPORTED_EVENTS.includes(event)) { // Normalize event to uppercase for comparison
console.log(`Event ${event} not supported, skipping`); const normalizedEvent = event.toUpperCase();
if (!SUPPORTED_EVENTS.includes(normalizedEvent)) {
console.log(`Event ${event} (normalized: ${normalizedEvent}) not supported, skipping`);
return NextResponse.json({ success: true, message: "Event not supported" }); return NextResponse.json({ success: true, message: "Event not supported" });
} }
const payload = body; const payload = body;
await handleSaleorWebhook(event, payload); await handleSaleorWebhook(normalizedEvent, payload);
return NextResponse.json({ success: true }); return NextResponse.json({ success: true });
} catch (error) { } catch (error) {