Un caso inventado para recorrer los avisos
Ejemplo Caso ilustrativo: la empresa y sus datos son inventados para explicar el flujo.
Gestoría Marlet es una asesoría inventada que quiere firmar sus contratos de servicio desde Odoo: con Yousign en el día a día y con DocuSign para un cliente que lo pide. Laura, responsable de administración, es manager de Signature Bridge; Pau, de su equipo, prepara las solicitudes. En su empresa rige la política EU-only que comprueba el módulo. Seguimos lo que les pasa y qué mensaje sale en cada punto. Los textos van tal cual los muestra el módulo, en inglés.
Cuando Pau toca algo reservado a los managers
Pau abre la ficha del proveedor de DocuSign para cambiar un ajuste y recibe Only a Signature Bridge manager can do this on a provider. No es un fallo: esa acción está reservada a los managers de Signature Bridge, así que la hace Laura.
Con el estado del puente pasa lo mismo: Only Signature Bridge managers can read its health. Y con los indicadores: Only Signature Bridge managers can refresh the KPIs. Si alguien del equipo necesita esas tareas, hay que darle el rol de manager; si no, que las haga quien ya lo tiene.
Si el tipo de proveedor no es uno que el módulo admita, el aviso es Unsupported provider type: %s, con el tipo en el lugar de %s.
La cuenta de DocuSign: región, proveedor de firma y DPA
Pau prueba a enviar la primera solicitud por DocuSign y el módulo la frena con EU-only policy: the data center of %s is not known yet. Run "Test Connection" on the provider so DocuSign reports the region of the account. El propio mensaje dice qué hacer: Laura ejecuta Test Connection en el proveedor para que DocuSign informe de la región de la cuenta.
Si la región que llega está fuera de la UE, el aviso pasa a ser EU-only policy: the %(provider)s account is hosted in region "%(region)s", outside the EU. Con la política EU-only, el módulo no deja seguir con esa cuenta: toca revisar con el proveedor en qué región está alojada.
Otro bloqueo de la ficha: Choose the DocuSign %s signature provider of the account on the provider form (Test Connection lists them). Laura elige en la ficha del proveedor el proveedor de firma de DocuSign de su cuenta; Test Connection le muestra cuáles hay.
Antes de enviar en producción aparece Confirm the Data Processing Agreement with %s before sending in production. El módulo pide confirmar el acuerdo de tratamiento de datos con ese proveedor y, mientras no se confirme, no envía en producción.
Webhooks y la clave HMAC de DocuSign
Con DocuSign, uno de los avisos que ve Laura es DocuSign webhooks are declared on every envelope (eventNotification); paste the Connect HMAC key in "Webhook Secret". Es decir: con DocuSign los webhooks se declaran en cada sobre y lo que tiene que hacer ella es pegar la clave HMAC de Connect en el campo Webhook Secret.
El otro aviso sobre la clave aclara dónde se crea: DocuSign Connect HMAC keys are generated in DocuSign (Settings > Connect > HMAC Keys): create a new key there and paste it in "Webhook Secret". La clave se genera en DocuSign, en Settings > Connect > HMAC Keys, y se pega en Webhook Secret.
En otro momento el módulo puede pedir Register the webhook first. Registra el webhook y repite la acción. Y si llega un webhook con un contenido que no es JSON válido, el módulo lo rechaza con Invalid webhook JSON payload; revisa en el proveedor cómo está configurado ese webhook.

Pau prepara la solicitud
Pau crea una solicitud para un contrato de servicio. Al guardarla sin firmantes sale At least one signer is required. y, sin documento, At least one document attachment is required. Añade el firmante y adjunta el contrato.
El contrato está en Word y la solicitud va por Yousign: Yousign signs PDF documents: %s is not a PDF. Yousign firma documentos PDF, así que Pau lo convierte y lo vuelve a adjuntar.
Luego elige un nivel que ese proveedor no tiene permitido: Level %(level)s is not allowed on provider %(provider)s. Cambia el nivel o el proveedor. Para el cliente que pide QES aparece QES is not available on %s: run "Test QES Capability" on the provider. Laura ejecuta Test QES Capability en el proveedor.
El envío y lo que viene después
Pau pulsa Send. Estos son los avisos de esta parte:
Only draft requests can be sent.Solo se envían solicitudes en borrador.DocuSign answered without an envelopeId.yYousign answered without a signature request id.La respuesta del proveedor no traía el identificador del sobre o de la solicitud de firma. Mira en la cuenta del proveedor qué ha pasado con ese envío antes de repetirlo.The level and the provider of a signature request are fixed once it is sent.Nivel y proveedor quedan fijos al enviar: decídelos antes de pulsarSend.Only Send links a signature request to an envelope of the provider.El vínculo con el sobre del proveedor solo lo creaSend.A signature request starts as a draft: only the provider moves its state.yOnly the provider and the buttons of the request move its state.El estado no se cambia a mano: lo mueven el proveedor y los botones de la solicitud.
Días después, Pau quiere recordar la firma. Si la solicitud no está activa: Only active requests can be reminded. Si todos los firmantes ya han firmado o rechazado: Every signer has already signed or declined. Con Yousign puede salir Yousign signer ids are unknown for: %s, que indica los firmantes cuyo identificador de Yousign no conoce el módulo; revisa esa solicitud en Yousign. Y si la solicitud ya está cerrada: %s is already closed.
Un cliente rechaza el contrato y Pau quiere repetirlo con otra versión. Clonar solo vale para solicitudes caducadas o rechazadas: Only expired or declined requests can be cloned.
La evidencia y el registro de auditoría
Si Pau busca la evidencia antes de tiempo, el módulo responde Evidence exists once %s is completed. La evidencia existe una vez completada la solicitud.

Una vez completada, la evidencia no se edita: Completed signature evidence cannot be modified. Borrarla queda en manos de los managers y deja rastro: Only Sign Bridge Managers can delete completed evidence, and deletion is audited.
Los eventos de auditoría solo admiten añadir registros. Si alguien intenta tocarlos, el mensaje es Audit events are append-only.

Qué aprender del caso de Marlet
- Lee el mensaje entero: muchos nombran el botón (
Test Connection,Test QES Capability) o el campo (Webhook Secret) que resuelve el bloqueo. - Reparte bien los roles: proveedor, estado del puente, KPIs y borrado de evidencia son cosa de managers de Signature Bridge.
- Antes de
Send, repasa firmante, adjunto, PDF si es Yousign, nivel permitido y DPA confirmado. - Después de enviar, nivel y proveedor son fijos y el estado lo mueven el proveedor y los botones.
- La evidencia completada y los eventos de auditoría no se editan.
Si estás en plena puesta en marcha, la guía de ajustes y primera semana cubre los campos que hay que rellenar.
Cómo te ayuda FlexigoTech
FlexigoTech implanta Odoo 17, 18, 19 y 20 y desarrolla conectores e integraciones a medida, también alrededor de la firma electrónica. El módulo está publicado en Odoo Apps para 17, 18, 19 y 20 y cuesta 9 € por versión de Odoo, pago único, sin IVA. Tienes los detalles en la página del módulo y en la ficha de Odoo Apps; para entender qué recorre cada registro por dentro, lee cómo funciona el módulo.
Sigue leyendo
Comprobado en el código del módulo (versión 20.0) y en las fuentes enlazadas
Fuentes
- Código del módulo: flexigo_docusign_yousign_bridge_for_regulated_sign_work 20.0 (d528b22d): controllers/health_controller.py
- Código del módulo: flexigo_docusign_yousign_bridge_for_regulated_sign_work 20.0 (d528b22d): models/ir_attachment.py
- Código del módulo: flexigo_docusign_yousign_bridge_for_regulated_sign_work 20.0 (d528b22d): models/sign_bridge_adapter.py
- Código del módulo: flexigo_docusign_yousign_bridge_for_regulated_sign_work 20.0 (d528b22d): models/sign_bridge_audit_event.py
- Código del módulo: flexigo_docusign_yousign_bridge_for_regulated_sign_work 20.0 (d528b22d): models/sign_bridge_compliance_kpi.py
- Código del módulo: flexigo_docusign_yousign_bridge_for_regulated_sign_work 20.0 (d528b22d): models/sign_bridge_provider.py
- Código del módulo: flexigo_docusign_yousign_bridge_for_regulated_sign_work 20.0 (d528b22d): models/sign_bridge_request.py
- apps.odoo.com/apps/modules/20.0/flexigo_docusign_yousign_bridge_for_regulated_sign_work
- apps.odoo.com/apps/modules/17.0/flexigo_docusign_yousign_bridge_for_regulated_sign_work
- apps.odoo.com/apps/modules/18.0/flexigo_docusign_yousign_bridge_for_regulated_sign_work
- apps.odoo.com/apps/modules/19.0/flexigo_docusign_yousign_bridge_for_regulated_sign_work
- flexigotech.com/en/services.html
