Guardar disponibilidad por canal
POST /api/fulfillment-config/update-fulfillment-config
Descripción
Define si un canal de entrega se ofrece en un canal de venta y si exige pago anticipado.
Detalles
* Crea o actualiza la disponibilidad de un canal de entrega en un canal de venta específico. * Habilitar el pedido por enlace externo obliga a exigir el pago anticipado. * Los canales presenciales, en mesa y en habitación, no admiten pedidos desde enlaces externos: la opción queda apagada. * En el menú digital define cuándo el cliente puede pedir: siempre, solo en un horario, o con un interruptor manual. También permite pausar los pedidos al instante. * Con horario propio, sin uno elegido se usa el horario del negocio; en el punto de venta el personal toma pedidos siempre. * Falla si el canal no existe o no está disponible. * Devuelve la configuración actualizada del canal de entrega en todos los canales activos.
Permisos requeridos
admin.module
Request
| Nombre | Tipo | Requerido | Reglas |
|---|---|---|---|
| fulfillmentUuid | string | Sí |
min:36
max:36
|
| channelId | int | Sí |
min_value:1
|
| isActive | int | Sí |
enum:0,1
|
| prepaidRequired | int | Sí |
enum:0,1
|
| allowExternalOrder | int | Sí |
enum:0,1
|
| orderingMode | string | No |
enum:always,schedule,manual
|
| orderingScheduleId | int | No |
min_value:1
|
| isOrderingPaused | int | No |
enum:0,1
|
Ejemplo de request
curl -X POST https://restofy.pro/api/fulfillment-config/update-fulfillment-config \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <accessToken>" \
-H "X-Tenant-Key: <tenantKey>" \
-d '{
"fulfillmentUuid": "string",
"channelId": 1,
"isActive": 1,
"prepaidRequired": 1,
"allowExternalOrder": 1
}'
Los valores son demo: reemplázalos por datos reales del negocio.
Ejemplo de respuesta
Actualizado: 2026-09-08T16:35:34Z
HTTP 200
Request
{
"fulfillmentUuid": "28d6e57a-533a-41a6-9c90-3fe9896fc012",
"channelId": 2,
"isActive": 1,
"prepaidRequired": 0,
"allowExternalOrder": 0
}
Response
{
"success": true,
"message": "Disponibilidad actualizada",
"data": {
"channels": [
{
"channelId": 1,
"channelCode": "channel.staff.pos",
"channelName": "Punto de venta",
"isActive": 1,
"prepaidRequired": 0,
"allowExternalOrder": 0,
"paymentOptions": []
},
{
"channelId": 2,
"channelCode": "channel.link.qr",
"channelName": "QR / Enlace",
"isActive": 1,
"prepaidRequired": 0,
"allowExternalOrder": 0,
"paymentOptions": []
}
],
"electronicPaymentMethods": [
{
"paymentMethodId": 13,
"name": "Wompi"
}
],
"cashRegisters": [
{
"id": 1,
"name": "Caja Principal"
}
]
}
}