Cancelaciones y reembolsos de pedidos

Solicitudes de cancelación iniciadas por el cliente con workflow de aprobación, gestión de reembolso y comunicaciones automáticas.

El cliente puede solicitar la cancelación desde su cuenta. El pedido entra en un estado «cancellation_requested», el admin ve la solicitud y decide si aprobarla o rechazarla. Los reembolsos en Stripe y PayPal son automáticos.

Workflow de cancelación del lado del cliente

El cliente accede a su área de cuenta, hace clic en un pedido confirmado y selecciona «Solicitar cancelación». En el cuadro de diálogo debe elegir el motivo (changed_mind, wrong_item, duplicate, late_delivery, other) y puede añadir una nota.

La solicitud se crea de inmediato y se envía al admin. El pedido pasa al estado pending_cancellation_review. El cliente ve el estado de su solicitud en su cuenta.

  • Solicitud de cancelación directamente por el cliente en su cuenta
  • Elección del motivo (obligatorio) y nota opcional
  • Estado rastreado en tiempo real: pending, approved, rejected
  • Notificaciones automáticas al cliente sobre el resultado de la solicitud

Aprobación/rechazo en el admin

El admin ve todas las solicitudes de cancelación en una lista dedicada. Para cada solicitud puede:

- Aprobarla: el pedido pasa al estado cancelled, el reembolso se procesa automáticamente en la pasarela (Stripe o PayPal) - Rechazarla: el admin puede escribir un mensaje de motivo que el cliente recibe por e-mail y ve en su cuenta

Si el reembolso falla (tarjeta caducada, límite alcanzado, etc.), el admin puede reintentar el reembolso desde el panel en cualquier momento.

  • Lista centralizada de todas las solicitudes pending
  • Aprobar/rechazar con mensaje personalizado
  • Reembolso automático en Stripe o PayPal al aprobar
  • Retry manual del reembolso si el primer intento falla

Procesamiento del reembolso

Cuando el admin aprueba una cancelación, Veendo lee el método de pago del pedido (Stripe o PayPal), el transaction ID y el importe, y envía una solicitud de reembolso a la pasarela.

El reembolso usa una idempotencyKey basada en el ID de la solicitud de cancelación — si la red falla y reintentas, la pasarela no crea dos reembolsos sino que reconoce que es el mismo. El admin ve el estado: success, failed, pending.

  • Compatibilidad con Stripe (tarjetas, wallets, 3DS) y PayPal
  • Reembolso total o parcial (si está configurado)
  • Idempotency key para evitar reembolsos duplicados
  • Retry automático y manual disponible

Si el reembolso falla del lado de la pasarela (p. ej. tarjeta caducada), permanece en estado failed y debe reintentarse manualmente por el admin una vez resuelto el problema.

Notificaciones automáticas y comunicaciones

Cuando se crea la solicitud, el admin recibe una notificación (e-mail + in-app). Cuando la solicitud se aprueba o se rechaza, el cliente recibe una notificación automática con el estado y el mensaje. Si el reembolso se completó, el cliente recibe una comunicación de confirmación.

  • Notificación al admin cuando el cliente solicita la cancelación
  • Notificación al cliente cuando la solicitud se aprueba/rechaza
  • E-mail de confirmación de reembolso al cliente
  • Seguimiento visible en el panel y en el área de cliente