Integración · CRM

Conectar Microsoft · Dynamics 365 CRM a Igniten

Conecte su Dynamics 365 (Sales, sobre Dataverse) para que Igniten pueda contestar sobre cuentas, contactos y oportunidades con su estado real, y —si lo habilita— escribir en él con su confirmación: dejar una nota, crear una tarea, dar de alta un contacto o mover una oportunidad de etapa. Nada del CRM se copia a un índice aparte: cada pregunta se responde leyendo su entorno en el momento.

Qué lee Igniten, y qué no

Lee

  • Cuentas, contactos y oportunidades, con sus campos y su etapa
  • Notas y tareas asociadas a esos registros
  • Los usuarios del entorno, para poder asignar una tarea a alguien
  • Las etapas de venta tal como están configuradas en su entorno

No lee

  • Las tablas personalizadas que haya creado en su entorno
  • Nada que el rol de seguridad del usuario de aplicación (o de cada persona, en el modo persona) no permita ver
  • Los registros no se copian ni se guardan: se leen cuando alguien pregunta
  • Nada se borra: no hay ninguna acción de borrado

Cómo se conecta

6 pasos · ≈ 20 min

  1. Registrar la aplicación en Microsoft Entra ID

    Si ya conectó Business Central, es la MISMA app registration: no hace falta otra. Si no, en portal.azure.com: Microsoft Entra ID → App registrations → New registration, con el nombre de Igniten y «Accounts in this organizational directory only». De la pantalla Overview anote el Directory (tenant) ID y el Application (client) ID.

    portal.azure.com → Microsoft Entra ID → App registrations → New registration
    • Hace falta alguien con permiso para registrar aplicaciones en su directorio (Application Administrator, o un administrador global).
    • En «Supported account types» elija la primera opción, «Accounts in this organizational directory only»: la app es sólo de su empresa.
    • La Redirect URI déjela vacía por ahora: sólo hace falta si va a usar el modo persona, y se carga en un paso de más adelante.
    • Los dos identificadores están arriba de todo en Overview, cada uno con un botón de copiar al lado.

    Salió bien si La app aparece en App registrations → All applications con el nombre que le puso, y tiene anotados los dos identificadores.

  2. Crear el client secret

    En la misma app registration: Certificates & secrets → Client secrets → New client secret. Copie el Value en ese momento: Azure no lo vuelve a mostrar. Anote cuándo vence: ese día la conexión deja de responder, y hay que cargar uno nuevo acá.

    portal.azure.com → App registrations → Certificates & secrets → New client secret
    • Copie la columna «Value», no «Secret ID»: el Secret ID no sirve para conectarse, y es el error más común de este paso.
    • El vencimiento lo elige usted (hasta 24 meses). Anótelo: ese día las consultas empiezan a fallar y hay que crear otro y cargarlo acá.
    • Si cerró la pantalla sin copiarlo, no se recupera: cree uno nuevo y borre el que quedó sin usar.

    Salió bien si El secret figura en la lista con su fecha de vencimiento y tiene copiado su Value completo.

  3. Crear el usuario de aplicación en su entorno

    Este es el paso que casi todos se saltean, y el síntoma engaña: el token sale bien y las consultas contestan 401. La app registration existe en su directorio y todavía no existe adentro de Dataverse. En admin.powerplatform.microsoft.com: Environments → su entorno → Settings → Users + permissions → Application users → New app user.

    • La app registration del paso 1: búsquela por el Application (client) ID
    • Una unidad de negocio: si tiene una sola, es la raíz
    • Un rol de seguridad con lectura de cuentas, contactos, oportunidades, notas y tareas
    • Si quiere que Igniten escriba, ese rol necesita además Create y Write sobre esas mismas tablas
    • Lo que no le des a este usuario, Igniten no lo ve
    admin.powerplatform.microsoft.com → Environments → Settings → Users + permissions → Application users → New app user
    • Hace falta ser administrador del entorno en Power Platform (System Administrator), no alcanza con serlo en Azure.
    • En «Add an app» busque por el Application (client) ID: el nombre a veces tarda unos minutos en aparecer.
    • Para una prueba sirve el rol «Salesperson», que lee y escribe cuentas, contactos y oportunidades. Para producción conviene un rol propio con sólo lo que Igniten necesita.
    • Sin rol de seguridad el usuario existe pero no ve nada: el síntoma es el mismo 401.

    Salió bien si La app figura en Application users con estado Active y con al menos un rol de seguridad asignado.

  4. Si elige el modo persona: el permiso delegado y la vuelta

    Sólo si en «Cómo se conecta cada persona» va a poner «persona». En la app registration: API permissions → Add a permission → Microsoft APIs → Dynamics CRM (en algunos directorios figura como Dataverse) → user_impersonation (Delegated permissions), y después Grant admin consent (sin eso cada persona tendría que consentir sola, y la mayoría no llega). Y en Authentication → Add a platform → Web, agregue como Redirect URI la dirección con la que entra a Igniten seguida de /auth/dynamics/callback (por ejemplo https://tuempresa.igniten.io/auth/dynamics/callback). Cada persona conecta su cuenta una vez desde el enlace que le da el asistente la primera vez que pregunta por su CRM.

    portal.azure.com → App registrations → API permissions → Grant admin consent
    • Si todos van a consultar con la aplicación (el modo por omisión), saltee este paso entero.
    • La Redirect URI tiene que ser EXACTAMENTE la de su Igniten, con https y sin barra al final: si difiere en una letra, Microsoft rechaza el login con el error AADSTS50011.
    • En este modo cada persona ve lo que ve en Dynamics con su propio usuario; quien no conectó su cuenta recibe el enlace y no consulta hasta hacerlo.

    Salió bien si En API permissions el permiso delegado figura con el tilde verde de «Granted», y en Authentication está la Redirect URI con su dirección.

  5. Cargar la dirección de su entorno y la app registration

    La dirección es la Environment URL de su entorno, sin ruta. El tenant id y el client id no son secretos; el client secret se guarda cifrado y no se vuelve a mostrar.

    • La dirección es la que ve en el navegador cuando abre su Dynamics, cortada después de «.dynamics.com».
    • El client secret es el Value del paso 2, no el Secret ID.
    • «Cómo se conecta cada persona» vacío es lo habitual: todos consultan con la aplicación. Ponga «persona» sólo si hizo el paso 4.

    Salió bien si Los campos obligatorios quedaron cargados y el botón de guardar se habilitó.

  6. Queda guardada y en uso

    Desde que la guarda, lo que se le pregunte a su CRM sale de Dynamics. Acá no se comprueba contra Microsoft: si la dirección, el client secret o el usuario de aplicación del paso 3 están mal, se ve en la primera consulta.

    • No hay botón de probar en este recorrido, y es a propósito: lo único que sabríamos contestar es si la fila quedó guardada, no si Microsoft le deja entrar.
    • La primera pregunta al asistente sobre su CRM es la prueba: si algo falta, la respuesta dice qué.
    • Para cambiar el client secret se carga uno nuevo: el anterior no se puede volver a ver.

    Salió bien si Dynamics 365 CRM figura conectado, con los últimos cuatro caracteres del client secret.

Qué permisos pide

Permiso Para qué Cuándo hace falta
Application user ligado a la app registration Que la app exista adentro de Dataverse: sin él, todo contesta 401 Siempre
Rol de seguridad con Read sobre Account, Contact, Opportunity, Note y Task Responder sobre cuentas, contactos, oportunidades, notas y tareas Siempre
Create y Write sobre esas mismas tablas Crear notas, tareas, contactos, cuentas y oportunidades, y editarlos quiere que Igniten escriba en el CRM
Dynamics CRM → user_impersonation (Delegated) Que cada persona consulte con su propia cuenta y sus propios permisos elige que cada persona conecte su cuenta

Los dos niveles de permiso que recomendamos, y qué habilita cada uno, están en Permisos recomendados.

Qué puede salir mal

Nada del CRM responde, aunque la credencial está bien cargada

Por qué Falta el usuario de aplicación en el entorno, o no tiene rol de seguridad. Microsoft entrega el token igual y después contesta 401.

Qué hacer Cree el Application user en Power Platform admin center con la app del paso 1 y asígnele un rol (paso 3).

Leer anda, pero crear una nota o una tarea dice que no hay permiso

Por qué El rol del usuario de aplicación tiene Read y no Create/Write sobre esa tabla.

Qué hacer Agréguele Create y Write sobre esa tabla al rol de seguridad.

La respuesta dice que Dynamics limitó los pedidos y hay que esperar

Por qué Microsoft limita los pedidos por usuario en ventanas de cinco minutos; con la aplicación, todo su equipo comparte ese límite.

Qué hacer Espere los segundos que indica la respuesta. Si pasa seguido, escríbanos.

Nada responde y la nota habla de la credencial de Microsoft

Por qué El client secret está mal copiado (se pegó el Secret ID en vez del Value), venció, o el tenant id / client id no son los de la app.

Qué hacer Cree un client secret nuevo, copie su Value y cárguelo de nuevo acá junto con los dos identificadores de la pantalla Overview.

Le pide que conecte su cuenta de Microsoft y el enlace da un error AADSTS50011

Por qué El modo es «persona» y la Redirect URI registrada no coincide con la de su Igniten.

Qué hacer En la app registration → Authentication, cargue exactamente https://<su empresa>.igniten.io/auth/dynamics/callback, sin barra al final.

Los límites, dichos

  • Una búsqueda devuelve como máximo cien registros por pregunta.
  • Dataverse limita los pedidos por usuario en ventanas de cinco minutos.
  • Las notas y las tareas se crean colgando de un solo registro cada una.

Preguntas frecuentes

¿Qué dirección cargo?

La Environment URL de su entorno, sin ruta: la que ve en el navegador al abrir Dynamics, cortada después de «.dynamics.com» (por ejemplo https://tuempresa.crm.dynamics.com; según la región puede ser crm2, crm4…).

¿Igniten puede borrar algo de mi CRM?

No. No hay ninguna acción de borrado. Lo que escribe se prepara como borrador y sale sólo cuando alguien lo confirma.

¿Puedo conectar Dynamics si ya tengo Twenty o HubSpot?

Puede tener más de uno cargado, pero se consulta uno solo —Twenty, después HubSpot, después Dynamics— y la respuesta aclara cuál. Para pasar a Dynamics, quite la clave del otro CRM desde esta misma pantalla.

¿Conviene que se conecte la aplicación o cada persona?

Con la aplicación es lo más simple: una sola configuración y todos consultan con los permisos que le dio. Por persona, cada uno ve exactamente lo que ve en Dynamics y lo que escribe queda a su nombre, pero cada uno tiene que conectar su cuenta una vez. Se elige en el campo «Cómo se conecta cada persona» y se puede cambiar cuando quiera.

¿Qué pasa cuando vence el client secret?

Las consultas empiezan a fallar ese día. Cree uno nuevo en la app registration, cárguelo acá, y borre el vencido en Azure.

Empezar

Elija un plan y empiece hoy.

Self-serve, sin reuniones: se contrata online, 30 días de prueba desde que registra la tarjeta.

Beta privada

¿Quiere acceso a la beta?

Para seguir usando los agentes sobre los datos de su empresa, pida acceso a la beta.

Lo vamos a contactar sobre su acceso a la beta.