Saltar al contenido principal

Confirm delivery via QR token

PUT 

/company/qr/confirm

Confirma la finalización de una entrega. Al confirmar:

  • El estado del envío pasa a delivered
  • Se registra la firma digital del receptor
  • Se guardan fotos de prueba de entrega (si se adjuntan)
  • Se registra la geolocalización de la confirmación
  • Se invalida el confirm_token
  • Se procesa el pago del servicio (Stripe)
  • Se firma el eCMR digitalmente
  • Se envían emails de confirmación a todas las partes

Este endpoint es PÚBLICO — no requiere autenticación.

Flujo de uso

  1. Obtener el confirm_token del endpoint GET /company/qr/{token}
  2. Recoger la firma digital del receptor (canvas base64)
  3. Opcionalmente, tomar fotos de la entrega
  4. Llamar a este endpoint con todos los datos

Campo data

El campo data debe enviarse como string JSON en el formulario multipart. Contiene los datos del firmante y su firma digital:

{
"name": "Juan",
"surname": "Pérez",
"taxid": "12345678A",
"email": "juan@example.com",
"image": "data:image/png;base64,iVBORw0KG..."
}

Notas técnicas

  • Código fuente: src/features/company/qr_delivery/controller.jsconfirmDelivery
  • Acepta hasta 6 imágenes adjuntas (campo images, subidas a S3)
  • La geolocalización es opcional pero recomendada para auditoría
  • La acción es irreversible: un envío confirmado no puede revertirse a estado anterior

Request

Responses

Entrega confirmada correctamente