Siguiente corte tras el carrito real: pagina /checkout de 3 pasos (direccion -> envio -> confirmar) contra el Store API real, usando la shipping option que ya se verifico en produccion. Endpoints nuevos (setShippingAddress, getShippingOptions, addShippingMethod) probados en vivo con un carrito de prueba real antes de escribir el codigo -- direccion, opciones de envio y total ya confirmados correctos (80.000 + 5.000 = 95.000). El pago (PayU custom) sigue sin existir, asi que el ultimo paso sigue siendo WhatsApp -- pero ahora el mensaje incluye direccion, metodo de envio y total real en vez de solo la lista de productos. El boton del CartDrawer pasa de abrir WhatsApp directo a llevar a /checkout.
15 lines
495 B
TypeScript
15 lines
495 B
TypeScript
import { getShippingOptions } from "@/lib/headless/providers/medusa-cart";
|
|
|
|
export async function GET(request: Request) {
|
|
const cartId = new URL(request.url).searchParams.get("cartId");
|
|
if (!cartId) {
|
|
return Response.json({ error: "cartId es obligatorio" }, { status: 400 });
|
|
}
|
|
try {
|
|
const options = await getShippingOptions(cartId);
|
|
return Response.json({ options });
|
|
} catch (error) {
|
|
return Response.json({ error: (error as Error).message }, { status: 502 });
|
|
}
|
|
}
|