Este artículo explica la importación automática de las altas de contactos al programa de Loyalty. Las altas son códigos de tarjetas Loyalty, cada uno asociado a un contacto de la bdd que se convierte en miembro del programa de Loyalty. Al importar un fichero de “cardcode” se añaden nuevos miembros a un programa de Loyalty. En este artículo también verás cómo cambiar el nivel de un grupo de miembros de Loyalty.
Encontrarás un ejemplo de un fichero para este alcance al final del artículo.
Requisitos previos
- Conocimiento básico del formato CSV y la codificación UTF-8
- Un editor de texto UTF-8
- Un software de hoja de cálculo
- Creación de la subsecuencia para el alcance “cardcode” en el fichero de configuración
Preparación de un fichero de importación de altas de miembros Loyalty
Edita el fichero de importación con tu editor de texto de UTF-8 preferido. Si es necesario, controla el número y posición de las columnas con un software de hoja de cálculo que te guste. Es la mejor herramienta para eliminar cualquier columna que no desees importar.
💡 | Recuerda guardar siempre utilizando la codificación UTF-8 sin BOM.
⚠️| Por favor, limita el tamaño del archivo a 200K.
Cabecera y columnas
La primera línea del archivo, llamada cabecera, se utiliza para determinar el contenido de las líneas siguientes. Por lo tanto, debería contener únicamente los nombres de los campos (uno por cada columna).
⚠️ | Recuerda que, si el Datahub encuentra un nombre de columna que no reconoce, no procesará el archivo.
Para el fichero “cardcode”, están disponibles las siguientes columnas:
Columna |
Obligatorio |
Formato |
Descripción |
card_code |
Sí |
Texto |
Identificador de la tarjeta Loyalty. Los códigos son únicos: si especificas un código existente, el registro se actualizará. ⚠️ | Esta columna es obligatoria. Sin embargo, se puede configurar en Splio que los cardcodes se autogeneren: si es así, Splio proporcionará los valores "card_code" faltantes en formato EAN13. En este caso, la columna puede tener un valor vacío (pero aún debes incluirlo en el archivo). |
customer_key |
Sí |
Texto |
Clave única del contacto en la bdd de Splio que será el titular del card_code. Puedes obtener más información sobre cómo utilizar esta columna en la sección Datahub - Contactos. Si está vacío, el card code no se vinculará a un contacto. |
id_program |
Sí |
Entero positivo |
ID interno del programa de Loyalty al que pertenece el alta. Este identificador lo puedes pedir a Splio o lo puedes encontrar en la url cuando entras en un programa en el universo de Splio. ⚠️ | Esta columna debería utilizarse para importar nuevas suscripciones. Asegúrate de eliminarla cuando importes actualizaciones: todos los intentos de actualizar los valores “id_program” fallarán, provocando que el Datahub ignore estas líneas. |
join_date |
No |
YYYY-MM-DD HH:MM:SS |
Fecha en la que el miembro se unió al programa. Si está vacío, se rellenará con la hora de la importación. Consulta más abajo para una explicación exhaustiva sobre las fechas. |
expiration_date |
No |
YYYY-MM-DD HH:MM:SS |
Fecha en la que caduca el card_code. |
birthday |
No |
YYYY-MM-DD |
Fecha (sin hora) que revela el cumpleaños del titular. Utilizada en muchas suboperaciones. |
id_tier |
No |
Entero positivo |
ID del nivel del programa Loyalty para insertar el miembro directamente en dicho nivel (incluidos los niveles VIP). Si está vacío, le dará el nivel más bajo del programa. Puede funcionar solo para la creación del card code y no para una actualización. |
⚠️ | El orden de los campos en la importación del cardcode es esencial y debe respetar el siguiente orden: "card_code"; "customer_key"; "id_program"; "join_date"; "custom_fields".
📗 | Recuerda que Splio no importará archivos si faltan columnas obligatorias o si existen columnas que no reconoce. Las líneas con valores vacíos en las columnas obligatorias se saltarán. Consulta también las notas para columnas individuales más arriba.
Ejemplo de fichero de altas de miembros Loyalty
El siguiente ejemplo muestra un archivo de importación. Los valores ;NULL; se explican a continuación.
card_code;customer_key;id_program;join_date;expiration_date;birthday;id_tier
"my_card_code";"mostly@email.fr";"1";"2019-01-01 00:00:01";"2020-01-01 00:00:01;1955-02-01";"2";
"mostly@email.fr";"3";NULL;NULL;NULL;"2"
"my_card_code1";"mostly@email.fr";"1";NULL;NULL;NULL;"4"
📗 | Este archivo no contiene errores obvios, aunque la primera línea contiene mucha más información que las otras dos. Ten en cuenta que en la línea central no hay código de tarjeta: si la generación automática de cardcode está activada, Splio proporcionará el número. Si no, la línea provocará un error y no se importará.
Cambio de nivel
La importación de cardcodes también puede servir para cambiar el nivel de un grupo de miembros de tu programa de Loyalty.
Para hacerlo, prepara un fichero con estos campos:
Columna |
Obligatorio |
Formato |
Descripción |
card_code |
Sí |
Texto |
ver más arriba |
tier_name | Sí | Texto | el nombre del nivel |
context | No | Textà | la razón por la que has cambiado el nivel |
value_date |
Sí |
AAAA-MM-DD HH:MM:SS |
La fecha en que el miembro cambia de un nivel a otro |
last_downgrade_check | No | AAAA-MM-DD HH:MM:SS | Especifica la fecha de la última comprobación del downgrade - se tendrá en cuenta para las comprobaciones periódicas del downgrade (diarias, mensuales, anuales) |
Nombre del fichero
Splio requiere que nombres tus ficheros de importación de una manera específica. Cada nombre de fichero debe contener el nombre del universo, el ámbito ("cardcode" o "tierchange"), la subsección (que has obtenido de tu contacto en Splio) y la fecha. El orden de procesamiento de los ficheros depende de los ámbitos y las fechas.
Para guardar tu archivo, utiliza un nombre compuesto por el nombre del universo, el alcance (“cardcode” o "tierchange"), la subsecuencia y la fecha actual. Por ejemplo:
myuniverse_cardcode_customers_20210225.csv
⚠️ | Si hay más de un fichero de cardcode por día, la subsecuencia en el nombre del fichero es obligatoria.
Este nombre de archivo pertenece al universo “myuniverse”, subsecuencia “customers” o "tier_change" definido para las altas a Loyalty y su fecha es el 25 de febrero de 2021.
Si deseas más información, consulta la sección «Reglas de nomenclatura de ficheros» en el articulo Datahub - Información general.
Ahora puedes subir el fichero al SFTP/FTPS.
Fechas
Todas las fechas de los ficheros de importación de tienda están compuestas por 4 dígitos para el año, 2 para el mes, y 2 para el día, seguido de las horas, minutos y segundos, 2 dígitos cada uno. Una fecha correcta para el 11 de marzo de 2021, 1:17 p.m. tiene el siguiente formato:
2021-03-11 13:17:00
El día y hora están separados por un espacio en blanco. Puedes omitir la parte de la hora y utilizar solo la fecha. Si lo haces de esta forma, Splio asumirá la hora más temprana posible del día (medianoche). Por lo tanto,
2021-03-07
será tratada exactamente como si introdujeras
2021-03-07 0:00:00
⚠️ | Usar fechas sin hora no es una opción muy recomendada: 00:00:00 es medianoche y Splio intentará procesar la fecha como tal. Esto puede causar errores y algunos triggers relacionados con las fechas fallarán. Además, todos los datos loyalty son siempre considerados como información financiera. Esto quiere decir que tú y tu empresa sois responsables de estos datos y no os podéis permitir dejar detalles al azar.
📗| Un beneficio adicional de utilizar fechas completas es que podrás buscar y filtrar por fecha con una precisión mucho mayor.
⚠️ | Al importar fechas con hora, asegúrate de que siempre utilizas la franja horaria CEST.
Explicación: borrar valores
Solo para las altas de Loyalty, los valores NULL no funcionan para eliminar datos. Utiliza "" o un valor vacío para este propósito.