Skip to main content

Confirm delivery via QR token

PUT 

/company/qr/confirm

Confirm the completion of a delivery. Upon confirmation:

  • The shipment status changes to delivered
  • The recipient's digital signature is recorded
  • Proof of delivery photos are saved (if attached)
  • The geolocation of the confirmation is recorded
  • The confirm_token is invalidated
  • The service payment is processed (Stripe)
  • The eCMR is signed digitally
  • Confirmation emails are sent to all parties

This endpoint is PUBLIC — no authentication required.

Usage Flow

  1. Obtain the confirm_token from the GET /company/qr/{token} endpoint
  2. Collect the recipient's digital signature (base64 canvas)
  3. Optionally, take photos of the delivery
  4. Call this endpoint with all the data

The data Field

The data field must be sent as a JSON string in the multipart form. It contains the signer's data and their digital signature:

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

Technical Notes

  • Source code: src/features/company/qr_delivery/controller.jsconfirmDelivery
  • Accepts up to 6 attached images (field images, uploaded to S3)
  • Geolocation is optional but recommended for auditing
  • The action is irreversible: a confirmed shipment cannot be reverted to a previous status

Request

Responses

Delivery successfully confirmed