Skip to content

Importación de datos a CiviCRM

La mayoría de las organizaciones tienen datos en fuentes externas al CiviCRM, como plataformas de bases de datos utilizadas anteriormente, hojas de cálculo creadas para eventos específicos u otros fines y/o libreta de direcciones de correo electrónico. Ya que ingresar manualmente gran cantidad de datos puede ser tedioso, CiviCRM proporciona una forma de importar datos en masa si la fuente puede exportarlos a algún formato común, como un archivo de versión separada por comas (CSV).

Las importaciones también se pueden utilizar para actualizar los datos existentes. Esto se tratará en la sección final de este capítulo.

Consideraciones antes de importar

Para obtener más detalles sobre cómo organizar sus datos antes de importarlos a CiviCRM, lea la sección sobre "Organización de sus datos", especialmente "Mapeo de sus datos en CiviCRM".

Preparación para importar datos

La importación de datos requiere una atención y un cuidado considerables, por lo que aquí presentaremos algunos conceptos que debe conocer antes de comenzar su primera importación. Puede importar datos básicos y personalizados para contactos, así como datos de asistencia a eventos, actividades, membresías y contribuciones. Este capítulo se centrará en el proceso de importación de contactos. Los procesos para otros datos son similares.

Hay dos formas de importar datos:

  • Desde archivos CSV. La mayoría de las aplicaciones de bases de datos y hojas de cálculo (por ejemplo, OpenOffice.org Calc, Google Spreadsheets, Microsoft Excel) pueden crear y manipular archivos en este formato. A menudo, es más fácil ver y limpiar sus datos cuando están en un archivo CSV que cuando todavía están dentro de su base de datos anterior.\ Cada columna de su archivo CSV se asignará a un campo en CiviCRM, así que asegúrese de usar una columna diferente para cada información.\ Dependiendo de su país o región, los campos de sus archivos CSV pueden estar separados por punto y coma (;) en lugar de comas. Si es así, deberá cambiar el valor del separador de campos de importación / exportación en la configuración de Localización de CiviCRM yendo al menú de navegación y eligiendo Administrar > Localización > Idiomas, Moneda, Localizaciones.
  • Desde otra base de datos SQL o MySQL almacenada en el mismo servidor, utilizando una consulta SQL. (Esta opción es solo para usuarios avanzados que tienen conocimientos de la administración de servidores y bases de datos).

Si no tiene conocimientos claros de sus datos existentes y cómo se asignan a los campos de CiviCRM, experimentará problemas cuando intente importar los datos. Lea sobre cada tipo de datos en otras secciones de este Manual de CiviCRM y visite la documentación en línea de CiviCRM para obtener más información: http://wiki.civicrm.org/confluence/display/CRMDOC/Importing+Data (versión en inglés)

Las siguientes reglas y recomendaciones le ayudarán a importar datos sin problemas:

  • Siempre pruebe su importación de datos con una muestra pequeña de ellos. Después de importar los datos de prueba, verifique que los mismos se hayan importado y funcionen correctamente dentro de CiviCRM.
  • Puede resultar útil crear un contacto de prueba que tenga todos los atributos que haya definido. Luego importe el contacto y verifique que se han importado todos los atributos y datos correctamente en el CiviCRM.
  • Cuando mapea las columnas o campos de sus datos de origen a los campos de CiviCRM durante la importación, CiviCRM puede guardar este mapeo de campos como un mapa de importación para futuros usos. Esto es útil si va a importar varios archivos con la misma estructura. Para guardar un mapa de importación para futuros usos, haga clic en la casilla de verificación "Guardar este mapa de campo" en la parte inferior de la pantalla del asistente de importación e ingrese un nombre y una descripción apropiados. Para reutilizar un mapa de importación guardado, selecciónelo en el menú desplegable en la pantalla “Seleccione el origen de datos” (paso 1) del asistente de importación.
  • Si sus importaciones tardan demasiado tiempo, intente dividirlas en lotes más pequeños. Si tiene los permisos adecuados en su servidor web, también puede aumentar los valores memorylimit y maxexecution_time en el archivo php.ini.
  • Puede agregar todos los contactos importados en una misma importación a grupos o etiquetas nuevos o existentes. Todos los contactos de una misma importación recibirán los mismos grupos y etiquetas. Esta limitación tiene un par de efectos en su importación:
  • Asegúrese de asignar grupos y etiquetas que sean aplicables a todos los contactos del conjunto importado. Si necesita asignar grupos o etiquetas contacto por contacto, importe una cantidad menor de contactos en los que todos los contactos compartan las mismas etiquetas y grupos. Alternativamente, puede crear campos de datos personalizados para realizar búsquedas en CiviCRM que contengan los grupos y etiquetas que desea asignar a los contactos importados. Después de la importación, puede ejecutar búsquedas en esos campos y utilizar acciones por lotes como "Agregar contactos al grupo" o "Etiquetar contactos" en los resultados de la búsqueda.
  • Puede utilizar esta función para gestionar la importación. Considere agregar contactos a un nuevo grupo o etiqueta que indique de qué lote de importaciones eran parte los contactos, lo que le permite identificar fácilmente cuándo se importó un contacto y deshacer una importación completa si es necesario.
  • CiviCRM almacena los nombres y apellidos en campos separados, por lo que estos deben aparecer como columnas separadas en su archivo CSV. Lo mismo ocurre con la ciudad y el código postal. La mayoría de los programas de hojas de cálculo contienen herramientas que automatizan el proceso de dividir texto en campos.
  • Asegúrese de que los nombres de sus países se expresen de la misma manera que en CiviCRM, es decir, 'Estados Unidos', no 'Estados Unidos de América', y 'Reino Unido', no 'Gran Bretaña'.
  • Si está importando varias ubicaciones, la primera ubicación se establecerá como la dirección principal. Es posible que desee mover las columnas para asegurarse de que la ubicación deseada se convierta en la ubicación principal. Es posible que también deba dividir su importación para que algunos registros tengan un tipo de registro como ubicación principal, mientras que otros tengan uno diferente.
  • Si está importando datos en campos personalizados de opciones múltiples (por ejemplo, casilla de verificación o botón de opción), su fuente de datos puede usar la etiqueta (lo que el usuario puede ver en la interfaz de CiviCRM) o el valor (lo que realmente está almacenado en el base de datos para esa elección). CiviCRM lo reconocerá y lo importará adecuadamente. Al importar en campos de datos principales de opciones múltiples, puede especificar solo los valores en su fuente de datos, no la etiqueta.
  • Si está actualizando opciones múltiples, los nuevos valores reemplazarán todo el campo. Por ejemplo, si actualiza el valor del campo Colores para que sea "naranja" para un contacto que actualmente tiene Colores establecidos en "azul", el resultado será que los Colores se establecen en naranja, no en naranja y azul.
  • Asegúrese de que su fuente de datos utilice un formato de fecha aceptado y mismo formato de fecha que en la pantalla Elegir Fuente de Datos del asistente de importación.
  • Asegúrese de que los prefijos y sufijos de nombre que utilice se hayan configurado en la interfaz de administración.
  • Si planea realizar importaciones adicionales de datos relacionados que están asociados con sus datos de contacto, por ejemplo, datos de contribución, datos de participación en eventos, datos de membresía, puede facilitar las cosas asegurándose de que sus registros de contacto tengan ID únicos que también estén asociados con los datos relacionados. Cuando realice la importación inicial de sus datos de contacto, importe estos ID únicos y asignelos al campo ID externo de CiviCRM, de modo que pueda usar sus ID originales para que coincidan con los registros de contacto para importaciones posteriores del datos relacionados.
  • La “Dirección Maestra Pertenece A” es un campo de importación especial que solo funciona con CiviCRM_Address.id. La información necesaria para utilizar este campo para las importaciones solo está disponible directamente en las tablas de la base de datos MySQL. No se muestran en ninguna parte de CiviCRM, incluidas las pantallas de datos, URL de enlace, perfiles o exportaciones. La información sobre cómo utilizar este campo especial está disponible en el Wiki (en inglés)

Campos obligatorios para las importaciones de contactos

Al preparar la importación de datos, es útil saber qué campos son obligatorios para la importación. Querrá asegurarse de que estos campos estén incluidos en su archivo de importación CSV. A continuación se muestra una lista de los campos obligatorios. Están marcados en rojo y con estrella en la interfaz. En caso de que tenga menos datos, basta con seleccionar un campo. El campo Identificador externo solo es útil si desea actualizar los contactos existentes. Tenga en cuenta que el campo con el identificador (Coincidir con el contacto) es obligatorio para fines de duplicación.

  • Correo electrónico (coincidencia con el contacto)
  • Identificador externo
  • Nombre
  • Apellido

Configuración de un archivo CSV para importar

Ejemplo de formato de hoja de cálculo .csv

student_sample

Cuando piense en configurar su hoja de cálculo, piense en los datos que está recopilando y planifique los encabezados de sus columnas. Tenga en cuenta que es posible que deba crear más de un archivo .csv y realizar varias importaciones antes de terminar.

Si planea importar datos relacionados que pertenecen a un contacto específico, por ejemplo, información del participante del evento, datos de contribución, etc., deberá asegurarse de que cada registro de contacto tenga un identificador único o el registro de contacto debe tener Nombre, Apellido y correo electrónico, para que pueda vincular sus datos relacionados para importaciones posteriores. Si tiene una identificación única, debe asignarla al identificador externo de CiviCRM en la importación.

Ejecución de una importación

El proceso de importación consta de cuatro pasos.

Paso 1: Configuración

La configuración le permite especificar los detalles básicos de su importación, incluido el origen de los datos. Los datos pueden provenir de un archivo CSV o de una consulta SQL de una base de datos en su servidor. Una casilla de verificación le permite indicar si la primera fila de su archivo contiene las cabeceras de las columnas.

image

Tenga en cuenta que las importaciones usan la regla predeterminada no supervisada para decidir si un registro de contacto es un duplicado (consulte el capítulo de Deduplicar y fusionar) en esta sección para obtener información sobre las reglas de coincidencias de duplicados en CiviCRM). Puede especificar qué acción tomar cuando una importación encuentra un duplicado:

  • Saltar: omitir el contacto duplicado, es decir, dejar el registro original como está.
  • Actualizar: actualiza el registro original con los campos de la base de datos de importación. Los campos que no estén incluidos en los datos de importación se dejarán como están.
  • Rellenar: complete los datos de contacto adicionales, si contienen campos que faltan o están en blanco en los registros originales, y deje los campos que actualmente tienen valores como están.

No comprobar duplicados: inserta todos los registros válidos sin compararlos con los registros de contactos existentes en busca de posibles duplicados.

image

Los mapeos de importación le dicen a CiviCRM cómo los campos de datos en su archivo de importación se corresponden con los campos en CiviCRM. La primera vez que importa desde una fuente de datos en particular, es una buena idea marcar la casilla "Guardar esta asignación de campo" en la parte inferior de la página antes de continuar. El mapeo guardado se puede reutilizar fácilmente la próxima vez que se importen datos similares, solicitando que se carguen en este paso.

Paso 2: Coincidir campos

Si tenía encabezados de columna en su archivo, estos encabezados aparecerán en la primera columna en el lado izquierdo, mientras que las columnas siguientes muestran filas de datos en su archivo para ser importados, y la última columna es el campo CiviCRM correspondiente. Si cargó una asignación de importación en el Paso 1, sus opciones se reflejarán aquí. Puede cambiarlos si no son adecuados para esta importación.

ImportMatchFields

Los campos de CiviCRM incluyen datos estándar de CiviCRM, como el nombre y el apellido, así como cualquier campo de datos personalizados que se hayan configurado para su uso con registros de contactos. Haga coincidir los campos haciendo clic en la lista desplegable y seleccionando los datos apropiados. Por ejemplo, si el encabezado de la segunda columna en su entrada es Apellido, debe elegir Apellido como su Campo CiviCRM coincidente.

Seleccione "- no importar -" para las columnas del archivo de importación que no desee importar a CiviCRM.

Si tiene una asignación guardada para un conjunto específico de columnas de una hoja de cálculo y el diseño de la hoja de cálculo ha cambiado (por ejemplo, necesita importar campos adicionales, por lo tanto agrega las columnas de datos en la hoja de cálculo), puede modificar y guardar la asignación de campos. Un consejo para facilitar el proceso de asignación cuando necesita importar campos adicionales es colocar las columnas adicionales de datos en su hoja de cálculo de importación a la derecha de las columnas que ha mapeado previamente en CiviCRM. Esto le permite utilizar la asignación de campo guardada existente para mapear los campos de importación iniciales y luego continuar mapeando los nuevos campos de datos.

Step2d

Tenga en cuenta que si agrega nuevas columnas de datos en su hoja de cálculo y no coloca las columnas DESPUÉS de las columnas que asignó anteriormente, no podrá usar la asignación guardada y tendrá que mapear todos sus campos de importación nuevamente.

Una vez que haya mapeado sus campos, puede decidir si desea mantener la asignación original guardada sin cambios, o marcar la casilla "Actualizar esta asignación de campo" para incluir los nuevos campos.

Paso 3: Previsualizar

Esta pantalla muestra los resultados de la importación de sus datos, informa el número de filas que se importarán y le permite verificar las coincidencias de sus campos.

Si algunas de las filas en su hoja de cálculo contienen datos que no coinciden con los requisitos de CiviCRM para uno o más campos, verá un mensaje de error con un recuento de las filas no válidas (vea la captura de pantalla a continuación). Haga clic en el enlace Descargar Errores y revise los errores en el archivo descargado, para que pueda corregirlos antes de realizar la importación.

ImportPreviewErrs

En la parte inferior del formulario, puede optar por agregar los contactos a un grupo existente, importar a un grupo nuevo, crear una nueva etiqueta o etiquetar registros importados. Se recomienda agregar registros importados a un grupo separado para poder encontrar rápidamente las importaciones y, si es necesario, eliminarlas y volver a importarlas.

Step3b_1

Paso 4: Resumen

La pantalla final informa las importaciones exitosas junto con Contactos duplicados y Errores. Si ha configurado la importación para agregar todos los contactos a un grupo o etiqueta, puede hacer clic para ver sus registros de contactos importados.

Step4a_2

En este punto, tiene sentido verificar para asegurarse de que su importación haya funcionado como se esperaba. Busque los contactos que acaba de importar y verifique sus campos y datos personalizados para asegurarse de que se hayan importado correctamente. 

Importación de datos relacionados

Acabamos de describir el proceso de importación de un archivo de datos. Pero, ¿qué pasa si desea importar datos relacionados, como direcciones de organizaciones con empleados, relaciones entre padres e hijos, actividades, contribuciones, etc.? Para cada tipo de datos que desee importar, deberá importar un archivo CSV por separado.

CiviCRM tiene herramientas específicas para importar datos de contacto relacionados y un conjunto de herramientas de importación específicas para contribuciones, membresías, participación en eventos, etc. (ver capítulos específicos para obtener detalles sobre cómo utilizar estas herramientas). Para importar datos relacionados, debe ejecutar varias importaciones de contactos.

Por ejemplo, si queremos importar datos para niños y luego para ambos padres, tendremos que ejecutar tres importaciones, una para el niño, otra para el padre y otra para la madre.

Primero importamos los datos del niño e incluimos un identificador externo que podremos utilizar para hacer coincidir al niño con sus padres. Luego importamos al padre, y luego a la madre, como contactos relacionados, utilizando el identificador externo para vincularlos entre sí. 

En el siguiente ejemplo, tenemos un archivo CSV que contiene información sobre el padre y la madre. Usamos este archivo CSV dos veces como parte de la importación. Eche un vistazo a los campos a continuación para comprender:

Parent1a

Parent1b

Estamos vinculando al padre con el hijo original utilizando el identificador externo y luego estamos importando el nombre del padre relacionado utilizando el tipo de relación 'Hijo de'.

Cuando finalice la importación, regrese y verifique los datos buscando al padre y examinando la pestaña de relación. Deben tener una relación que lo vincule con el niño.

Luego puede repetir este proceso para la madre y también para otras relaciones según sea necesario.

Estandarización de direcciones

Para muchas organizaciones, un elemento importante de limpieza de sus datos es la estandarización de direcciones. La estandarización de cómo se ingresan las direcciones en CiviCRM permitirá obtener resultados de búsqueda más precisos al buscar por dirección. Para obtener más información sobre cómo se maneja y usa el análisis de direcciones en CiviCRM, consulte el capítulo de la sección Configuración de este manual. Cuando agregue o edite contactos, ingresará y editará elementos de dirección como el número de la calle, el nombre de la calle y el piso, etc, de acuerdo con estos estándares.

Importar actividades

Al preparar la importación de datos, es útil saber qué campos son obligatorios para la importación. Asegúrese de que estos campos estén incluidos en su archivo de importación CSV. A continuación se muestra una lista de los campos obligatorios. El campo ID de contacto se utiliza para hacer una referencia cruzada y adjuntar la actividad al contacto, por lo que debe coincidir exactamente con el ID del contacto en el sistema.

  • Fecha de actividad 
  • ID de tipo de actividad 
  • Etiqueta de tipo de actividad
  • ID del contacto (coincidir con el contacto)
  • Asunto

La herramienta de importación para actividades es similar a la de los contactos, pero hay algunos requisitos previos que deben cumplirse antes de ejecutar la importación. En primer lugar, las actividades no se pueden importar a menos que los contactos y los tipos de actividad ya existan en la base de datos. Si necesita importar actividades para contactos que aún no están disponibles, primero ejecute una importación de contactos, preferiblemente incluyendo un identificador externo único (por lo general, un identificador asignado por la base de datos o la aplicación desde la que está importando registros).

Recuerde, los archivos CSV deben tener un tamaño inferior a 2 MB. Si el tamaño del archivo supera este, cree varios archivos CSV y distribuya los datos entre ellos.

Importar contribuciones

Puede insertar nuevas contribuciones o actualizar las existentes.

Si inserta nuevas contribuciones, su archivo CSV debe incluir al menos los siguientes campos:

  • ID de contacto ó Identificador Externo ó todos los campos utilizados en su regla de coincidencia duplicada no supervisada (para que coincida con un contacto existente)
  • Tipo financiero
  • Monto total

Si desea actualizar contribuciones existentes, su archivo CSV debe incluir al menos los siguientes campos:

  • ID de transacción ó ID de factura ó ID de pago (para que coincida con una contribución existente)
  • Tipo financiero
  • Monto total

También puede usar actualizar contribuciones existentes para importar nuevos o cambiar datos existentes en otros campos de contribución principales o personalizados. Al hacer esto, aún necesitará incluir una identificación para que coincida con una contribución existente y los campos Tipo financiero y Monto total en su archivo CSV, incluso si los valores que importa para esos campos no son diferentes de los valores que ya están en su base de datos.

Importar membresías

Puede insertar nuevas membresías o actualizar las membresías existentes.

Si inserta nuevas membresías, su archivo CSV debe incluir al menos los siguientes campos:

  • ID de contacto ó Identificador Externo ó todos los campos utilizados en su regla de coincidencia duplicada no supervisada (para que coincida con un contacto existente)
  • Tipo de membresía 
  • Fecha de inicio de la membresía

Si desea actualizar membresías existentes su archivo CSV debe incluir al menos los siguientes campos:

  • ID de membresía (para que coincida con una membresía existente)
  • Tipo de membresía 
  • Fecha de inicio de membresía

También puede usar la actualización de membresías existentes para importar nuevos o cambiar datos existentes en otros campos de membresía principales o personalizados . Al hacer esto, deberá incluir el ID de membresía para que coincida con una membresía existente, y los campos Tipo de Membresía y Fecha de Inicio de Membresía en su archivo CSV, incluso si los valores que importa para esos campos no son diferentes de los valores que ya están en su base de datos.

Importar participantes

En cada sesión de importación, puede insertar nuevos registros o actualizar los registros de participantes existentes.

Si inserta nuevos registros, debe decidir si restringir los registros para cada evento a solo uno por persona (establezca En entradas duplicadas en Saltar) o permitir registros duplicados para el mismo evento de un contacto determinado (establezca En entradas duplicadas en No comprobar duplicados). En cualquier caso, su archivo CSV debe incluir al menos los siguientes campos:

  • ID de contacto ó Identificador externo ó todos los campos utilizados en su regla de coincidencia duplicada no supervisada (para que coincida con un contacto existente)
  • ID de evento
  • Estado del participante

Si desea actualizar los registros existentes, debe establecer En entradas duplicadas en Actualizar. Su archivo CSV debe incluir al menos los siguientes campos:

  • ID de participante (para que coincida con un registro existente)
  • ID de evento o título de evento
  • Estado del participante

También puede usar la actualización de registros existentes para importar nuevos o cambiar datos existentes en campos de participantes personalizados. Al hacer esto, deberá incluir el ID de participante para que coincida con un registro existente, y los campos ID de evento ó Título del evento y Estado del participante en su archivo CSV, incluso si los valores que importa para esos campos no son diferentes de los valores ya en su base de datos.

Importar etiquetas

Actualmente no existe una forma de importar etiquetas o conjuntos de etiquetas. Sin embargo puede utilizar esta extensión avanzada (inglés).

Si desea asignar etiquetas individuales durante la importación de sus contactos, tendrá que:

  • Dividir su archivo CSV por etiquetas individuales e importar cada subconjunto por separado como se describe arriba.
  • Crear campos personalizados temporales e importar etiquetas en ellos como datos estándar, después de la importación utilice búsquedas avanzadas para aislar contactos con valores particulares y etiquetarlos en masa. Una vez que haya terminado, puede eliminar los campos personalizados.