Crear un pedido
Requiere permiso de escritura. Crea un pedido. Los precios se calculan SIEMPRE desde el catálogo del restaurante (no se aceptan precios del cliente). Respeta el inventario (409 si no hay stock) y exige la sucursal abierta.
Dos modos según payment:
external(default): el cobro ocurre fuera de FoodDelivery; el pedido entra directo a la cocina (KDS) en estadorecibidoconpayment.method = "efectivo".online: el pedido queda enpendiente_pagoy la respuesta incluyepayment_link.payment_url— una página de pago Fintoc del restaurante donde paga el cliente final. Al confirmarse el pago, el pedido pasa a la cocina automáticamente y el cliente vuelve a tureturn_url(con?order_id=...&payment=success|failed|pending; si abandona,payment=cancelled). Los pedidos no pagados se cancelan solos después de un rato y reponen su stock.
Con llave sandbox (fd_test_) el pedido nace marcado como PRUEBA (visible en la cocina con etiqueta, sin stock/analítica/facturación reales, sin exigir local abierto) y payment_url apunta a un simulador donde eliges pago exitoso o fallido — el flujo de confirmación y redirección es idéntico al real.
Authorizations
API key del restaurante, generada en el panel de administración (Integraciones → API pública): fd_live_... para producción o fd_test_... para sandbox (modo prueba sobre el mismo restaurante).
Body
delivery, retiro 1 - 100 elementsObligatorio si type = delivery.
Costo de envío en CLP que paga el cliente (default 0; se ignora en retiro). Obtenlo de POST /delivery/quote (campo fee).
x >= 0external = cobras tú fuera de la plataforma; online = devolvemos payment_link con la página de pago Fintoc del restaurante.
external, online Solo con payment online; método preseleccionado en Fintoc.
transferencia, tarjeta Obligatorio con payment online (https). El cliente final vuelve aquí tras pagar, con ?order_id= y payment=success|failed|pending (o cancelled si abandona).
Response
Pedido creado. Con payment: "online" incluye payment_link.
Número corto visible para el cliente.
"#0041-150726"
pendiente_pago = esperando el pago online; programado = pagado pero retenido hasta su fecha-hora (pedidos programados); el resto es el flujo de cocina y despacho.
pendiente_pago, programado, recibido, en_preparacion, listo, en_reparto, entregado, cancelado delivery, retiro Dirección de entrega (solo pedidos delivery).
Costo de envío cobrado al cliente, en CLP.
Descuento aplicado (cupones/promociones), en CLP.
Total pagado por el cliente, en CLP.
null en pedidos de retiro o sin despacho asociado.
Fecha-hora comprometida si es un pedido programado.
Solo con payment "online".
