Flujos · Venta
Los estados por los que pasa un pedido desde que se crea hasta que se cierra, y las ramas que lo sacan del camino normal. Un pedido nunca retrocede de estado: solo avanza o termina.
stateDiagram-v2
direction LR
[*] --> Pendiente
Pendiente --> Pagado: Confirmar — descuenta stock / consume reserva
Pendiente --> Anulado: Anular
Pendiente --> Expirado: Reserva vence (automático)
Pagado --> Enviado: Marcar enviado
Enviado --> Entregado: Confirmar entrega
Entregado --> [*]
Anulado --> [*]
Expirado --> [*]
Entregado --> Devolucion: Devolución
Devolucion --> [*]
note right of Pendiente
Único estado donde
se editan las líneas.
Si es reserva, aparta
stock hasta el pago
end note
note right of Expirado
Solo desde una reserva
no pagada a tiempo
end note
note right of Devolucion
Objetivo · no existe hoy
end note
classDef real fill:#E7F0FC,stroke:#2E73D9,stroke-width:1.5px,color:#18222E
classDef term fill:#EDF0F3,stroke:#51606F,stroke-width:1.5px,color:#18222E
classDef obj fill:#EFEFFA,stroke:#5B63E6,stroke-width:1.5px,stroke-dasharray:4 3,color:#18222E
class Pendiente,Pagado,Enviado,Entregado real
class Anulado,Expirado term
class Devolucion obj
Recién creado. Aún no ha tocado el stock físico. Es el único estado en el que se pueden editar las líneas (añadir, quitar o cambiar cantidades) y también el único desde el que se puede anular. Si es un pedido a futuro, aquí el stock ya queda reservado (apartado, no descontado) hasta que se pague o expire.
Al confirmar, el sistema verifica y descuenta el stock del almacén elegido y el pedido pasa a Pagado. A partir de aquí las líneas ya no se editan.
La mercancía salió a despacho. Ventas marca el pedido (y su envío) como enviado.
El cliente recibió el pedido. Es el cierre normal del ciclo.
Se anula un pedido mientras sigue Pendiente (sin haber descontado stock). Cierra el pedido sin venta. Si era una reserva, se libera el stock apartado.
Solo aplica a los pedidos a futuro. Si la reserva no se paga antes de su fecha de expiración, el sistema, de forma automática cada hora, libera el stock reservado y cierra el pedido como Expirado. Un pedido Expirado no vuelve a Pendiente ni a Pagado: hay que crear uno nuevo.
Rama de diseño para cuando un pedido ya entregado se devuelve: reingresaría el stock y generaría una nota de crédito. Todavía no existe como estado en el sistema.
Relacionado: Compra desde la web, Venta en tienda y la Guía de Ventas.