import { NextRequest, NextResponse } from "next/server"; import { trackOrderCompletedServer, trackServerEvent } from "@/lib/analytics-server"; /** * POST /api/analytics/track-order * * Server-side order tracking endpoint * Called from client after successful order completion */ export async function POST(request: NextRequest) { try { const body = await request.json(); const { orderId, orderNumber, total, currency, itemCount, customerEmail, paymentMethod, shippingCost, couponCode, } = body; // Validate required fields if (!orderId || !orderNumber || total === undefined) { return NextResponse.json( { error: "Missing required fields" }, { status: 400 } ); } // Track server-side const result = await trackOrderCompletedServer({ orderId, orderNumber, total, currency: currency || "RSD", itemCount: itemCount || 0, customerEmail, paymentMethod, shippingCost, couponCode, }); if (result.success) { return NextResponse.json({ success: true }); } else { return NextResponse.json( { error: result.error }, { status: 500 } ); } } catch (error) { console.error("[API Analytics] Error:", error); return NextResponse.json( { error: "Internal server error" }, { status: 500 } ); } }