Documento de control (DeCA) y peso de transporte
Nuevo recurso transport_documents con 17 endpoints para emitir, modificar, compartir y conservar el documento de control digital del transporte de mercancías por carretera, obligatorio desde el 5 de octubre de 2026; 15 tools MCP, 10 eventos transport_document.*, 24 códigos de error y peso bruto de transporte en productos, variantes, presentaciones y albaranes.
Desde el 5 de octubre de 2026 el documento de control administrativo del transporte público de mercancías por carretera tiene que ser digital. La API pública ya lo emite: un PDF por versión, servido desde una URL pública permanente cuyo código QR viaja con el conductor, con el historial que necesita la inspección. Todo es aditivo; ningún campo existente cambia de significado. Consulta la guía del documento de control.
Nuevo recurso transport_documents
| Operación | Endpoint |
|---|---|
Listar, con cursor y los filtros status, transport_date[gte|lte], company_role, carrier_tax_id, delivery_note_id y q | GET /v1/transport_documents |
| Catálogo de estados | GET /v1/transport_documents/statuses |
| Obtener | GET /v1/transport_documents/{id} |
| Crear un borrador, opcionalmente prerrellenado desde 1 a 50 albaranes | POST /v1/transport_documents |
| Actualizar o borrar un borrador | PUT / DELETE /v1/transport_documents/{id} |
| Emitir (irreversible) | POST /v1/transport_documents/{id}/issue |
| Modificar durante el servicio, con la misma URL y el mismo QR (irreversible) | POST /v1/transport_documents/{id}/modify |
| Cerrar y reabrir | POST /v1/transport_documents/{id}/close, /reopen |
| Anular o marcar como sustituido por el documento del transportista (irreversible) | POST /v1/transport_documents/{id}/cancel, /supersede |
| Enviar la copia por email al transportista (irreversible) | POST /v1/transport_documents/{id}/send |
PDF de una versión, código QR y registro de emisión (cada entrada con su actor_name, los cierres automáticos como auto_closed y las 100 primeras descargas públicas, con meta.downloads_total y meta.downloads_listed) | GET /v1/transport_documents/{id}/pdf, /qr, /evidence |
| Justificante de emisión en PDF | GET /v1/transport_documents/{id}/issuance_proof |
Scopes nuevos: transport_documents:read, transport_documents:write,
transport_documents:delete y transport_documents:transition, también concedibles
por OAuth. El PDF de cada versión exige pdfs:read; el justificante de emisión,
transport_documents:read, porque contiene el registro de emisión. El módulo transport_documents requiere delivery_notes.
MCP, eventos y errores
- 15 tools MCP, una por operación salvo el código QR y el justificante de emisión,
que siguen siendo descargas binarias de la REST API.
search_transport_documentsadmite el mismoqy el mismosortque el listado REST, ycreate_transport_documentno admiteid. Consulta el catálogo de tools. - 10 eventos:
transport_document.created,.updated,.issued,.modified,.closed(conclose_modemanual o automático),.reopened,.cancelled,.superseded,.email_senty.email_failed. Mientras un documento es un borrador, sus partes siguen los cambios del contacto enlazado y de los datos de tu empresa, y cada refresco que cambia algo publica.updated. Consulta Eventos. - 24 códigos de error: los 22 de la nueva categoría «Transport Documents», desde
transport_document_not_issuable(conerror.details.missing) hastatransport_document_version_limit_reached,transport_document_pdf_too_largeytransport_document_version_not_found(404 ante un?version=Nque el PDF no tiene), másinvalid_gross_weight(también en las líneas de mercancía de un documento) ygross_weight_not_alloweden Productos. Consulta el catálogo de errores.
Límites e identificadores
- Un documento tiene como máximo 50 versiones, y la última se reserva para anularlo o
sustituirlo; cuando ya tiene 49,
modifydevuelve422 transport_document_version_limit_reached. - Cada versión es un PDF de hasta 5 MB (5.000.000 bytes). Emitir, modificar, anular y
sustituir devuelven
422 transport_document_pdf_too_largesin guardar nada cuando el PDF sería mayor. - El
idde un documento lo genera el servidor.shipments[].ides opcional: al crear, uno que ya está en uso devuelve422enshipments.N.id; al actualizar y modificar, solo identifica un envío de ese documento. Una escritura simultánea que choca en un identificador devuelve409 resource_conflicty se puede reintentar. Los UUID se normalizan a minúsculas. - Al crear, un envío que omite
origintoma tu lugar de carga por defecto o tu domicilio fiscal; un"origin": nullexplícito lo deja sin origen. - La URL pública se limita por token y prefijo de red (60 por minuto por defecto) y por token (600 por minuto por defecto), nunca solo por IP; los tokens desconocidos cuentan por prefijo de red. El PDF público no muestra quién hizo cada versión.
Peso bruto de transporte en el catálogo y en los albaranes
- Los productos, las variantes y las presentaciones fijas aceptan
gross_weight_kgal crear y actualizar, y lo publican al leer: kg por unidad base en productos y variantes y por unidad comercial en presentaciones. Omitirlo al actualizar conserva el valor actual ynulllo borra. Los servicios, las unidades base de masa (KGM,GRM) y las presentacionesvariable_measurelo rechazan congross_weight_not_allowed. - Las líneas de albarán congelan su peso al crearse o editarse en borrador y lo publican
como
gross_weight_kg; el albarán añadetotal_gross_weight_kgylines_without_weight_count. - Las series aceptan el nuevo tipo
transport_document(código por defectoDC), cuya serie se crea en la primera emisión.GET /v1/series/statslo cuenta.