Skip to main content
Firma te permite añadir firmas electrónicas legalmente vinculantes a cualquier aplicación móvil creada con Rork. Como Rork genera apps de React Native (Expo), puedes llamar a la API de Firma desde un backend ligero y renderizar la experiencia de firma en un WebView dentro de tu app móvil. Esta guía cubre la ruta de integración recomendada: una función de backend serverless que llama a la API REST de Firma, con un WebView de React Native para la firma incrustada.

Requisitos previos

  • Una cuenta de Firma con una clave API
  • Una app móvil generada con Rork (React Native / Expo)
  • Al menos una plantilla de Firma con campos de firma configurados
  • Un backend para llamadas API seguras. Las opciones incluyen Rork Backend, Supabase Edge Functions, Vercel Serverless Functions o cualquier servidor Node.js/Python
Firma usa la clave API en bruto como valor del encabezado Authorization; no la antepongas con Bearer. Esto difiere de muchas otras APIs.

Paso 1: Configura tu backend

Las apps de Rork se ejecutan en el cliente, así que necesitas una capa del lado del servidor para mantener tu clave API en secreto. Este ejemplo usa una Supabase Edge Function, pero la misma lógica aplica a cualquier backend. Crea la Edge Function:
Guarda tu clave API de Firma como un secreto:
Nunca llames a la API de Firma directamente desde tu app de React Native. La clave API quedaría expuesta en el paquete de la app y podría ser extraída por cualquiera que descargue tu app.
Luego reemplaza el index.ts generado con lo siguiente:
El endpoint create-and-send crea la solicitud de firma y la envía a los destinatarios de forma atómica. Si necesitas revisar o modificar la solicitud antes de enviarla, usa POST /signing-requests para crear un borrador y luego POST /signing-requests/{id}/send por separado.
Despliega la función:

Paso 2: Llama al backend desde React Native

Desde tu app de Rork, haz un POST a tu Edge Function cuando el usuario inicie el flujo de firma:

Paso 3: Firma incrustada en un WebView

Para apps móviles, la experiencia de firma se renderiza dentro de un WebView en lugar de un iframe. Instala react-native-webview:
Luego crea un componente de pantalla de firma. La respuesta de create-and-send incluye un first_signer.id (el signing_request_user_id) y un first_signer.signing_link ya listo. Usa cualquiera de los dos para construir la URL de firma:
Pasa first_signer.id de la respuesta del Paso 2 como la prop signingRequestUserId. Consulta la guía de firma incrustada para la configuración completa, incluidas las mejores prácticas de seguridad.

Integración de webhooks

Para rastrear cuándo se firman los documentos, añade una Edge Function de webhook y regístrala en el panel de Firma.
Despliega y registra el webhook:
  1. Despliega la función: supabase functions deploy firma-webhook --no-verify-jwt
  2. En el panel de Firma, en Configuración → Webhooks, añade un webhook que apunte a https://<your-project-ref>.supabase.co/functions/v1/firma-webhook
  3. Selecciona los eventos que quieres recibir. Consulta la guía de webhooks para todos los tipos de eventos y la verificación de firmas
Para uso en producción, verifica siempre la firma del webhook usando tu secreto de firma de webhook de Firma. Consulta la guía de webhooks para los detalles de implementación.

Extra: conexión MCP para desarrollo asistido por IA

Firma ofrece un servidor MCP de documentación que se puede conectar a herramientas de codificación con IA. Una vez conectados, los asistentes de IA buscan en la documentación de Firma mientras generan código para usar endpoints, nombres de campos y patrones correctos. Esto es una ayuda en tiempo de desarrollo y no afecta a tu app desplegada.

Próximos pasos