Sync Data

Sincroniza tus productos, atributos y datos de clientes de Magento 2 con Clerk. Esta guía cubre la personalización de datos de productos y clientes, la selección de qué productos importar y la gestión de la sincronización de pedidos.
Antes de sincronizar los datos, asegúrate de haber instalado y configurado la extensión de Clerk en el backend de Magento 2. Consulta la guía de inicio para obtener instrucciones de instalación.
Configurar la sincronización #
Para sincronizar los datos de tu tienda Magento 2 con Clerk, necesitas configurar los ajustes de sincronización de datos en Clerk.
Ve a my.clerk.io > Data > Configuration.
Introduce la URL de tu tienda y cualquier ajuste opcional que necesites.
Si planeas usar Email & Audience, establece Collect Emails en Sí en la extensión de Magento y haz clic en Guardar.
Selecciona el idioma para tu dominio si corresponde.
Haz clic en Start Sync y espera a que la sincronización se complete.
Tu tienda ahora está conectada a Clerk.
Personalizando los datos de productos #
Enviando atributos simples #
Si los atributos que quieres enviar ya están disponibles como atributos simples en tu administración de Magento 2, pueden añadirse fácilmente en la página de Extensión.
- Empieza yendo a Stores -> Product
Aquí puedes ver todos los atributos disponibles en tu tienda.
Busca los códigos de atributo de los que quieres enviar a Clerk:
- Asegúrate de que tu atributo sea tanto Visible como utilizado en Listados de Productos.
Puedes verificarlo haciendo clic en el atributo y yendo a Propiedades del escaparate:
Ve a Stores->Configuration->Clerk->Configuration
En Synchronization -> Additonal Fields, escribe los códigos de atributo separados por comas :
Haz clic en Save Config en la esquina derecha.
(*Si no puedes encontrar la extensión de Clerk, asegúrate de seleccionar la tienda correcta, haciendo clic en “Scope” en la parte superior izquierda.)
Ve a System -> Cache Management
Borra las distintas cachés aquí:
Después de implementar tus atributos, ve a my.clerk.io->Data y haz clic en Start New Data Sync en la esquina superior derecha.
Si los atributos que quieres enviar ya están disponibles como parte de tus productos configurables/agrupados en tu administración de Magento 2, pueden sincronizarse fácilmente en la última versión de tu plugin.
Aparecerán como child_attribute, por ejemplo, child_color, child_skus, etc.
Enviando atributos personalizados #
Los atributos personalizados pueden añadirse a través de la extensión en FTP.
Este archivo gestiona los atributos de producto:
vendor->clerk->magento2->Model->Adapter->Product.php
Cada atributo tiene su propio fieldHandler, en la función addFieldHandlers()
Simplemente añade tu atributo aquí, con la siguiente sintaxis:
$this->addFieldHandler('CLERK_ATTRIBUTE_NAME', function($item) {
return MAGENTO2_LOGIC;
});
Donde CLERK_ATTRIBUTE_NAME define el nombre que quieres que tenga en Clerk, y MAGENTO2_LOGIC es el código para extraer el atributo de Magento 2.
Importando datos de productos simples #
El siguiente código puede usarse para obtener cualquier dato que quieras de productos simples dentro de un producto configurable, para que Clerk lo reciba como un array de datos.
Esto es especialmente útil para atributos como SKUs, tallas o colores, para hacerlos buscables y filtrables en Clerk.
Al igual que el script de atributo personalizado anterior, los datos de productos para productos configurables pueden añadirse a través de la extensión en FTP.
Este archivo gestiona los atributos de producto:
vendor->clerk->magento2->Model->Adapter->Product.php
Añade el siguiente código al archivo:
{%raw%}
$this->addFieldHandler('CLERK_ATTRIBUTE_NAME', function ($item) {
$simple_products_array = [];
if ($item->getTypeId() === Configurable::TYPE_CODE) {
$simple_products = $item->getTypeInstance()->getUsedProducts($item);
foreach ($simple_products as $product) {
array_push($simple_products_array, $product->getATTRIBUTE_TEXT());
}
}
return array_values(array_unique($simple_products_array));
});
{%endraw%}
Donde CLERK_ATTRIBUTE_NAME define el nombre que quieres que tenga en Clerk, y getATTRIBUTE_TEXT es la función get con el texto del atributo que estás llamando, por ejemplo $product->getSKU().
Por último, incluye tus nuevos atributos en la extensión de Clerk en la administración de Magento 2, bajo Synchronization -> Additional Fields. (Como se explica en el punto 4)
Después de implementar tus atributos, ve a my.clerk.io->Data y haz clic en Start New Data Sync en la esquina superior derecha.
Personalizando los datos de los clientes #
Al igual que con los Productos, los Clientes se representan con atributos en Clerk.
Enviando atributos de Cliente, puedes utilizar Audience como Customer Data Platform (CDP) y crear Audiences en base a cualquier atributo que envíes, como región, género, códigos fiscales, etc.
Puedes leer más sobre la gestión de atributos de clientes en Magento2 aquí.
- Empieza por averiguar qué atributos tienes disponibles y cuáles son sus Attribute Codes.
Puedes encontrarlos en el backend de Magento2 en Stores > Attributes > Customer.
- Una vez tengas los códigos de los atributos que quieres, ve a:
Stores > Settings **> Configuration > Clerk > Configuration > Customer Synchronization**
En Extra Customer Attributes, añade una lista de atributos separados por coma que quieras sincronizar.
Haz clic en Save Config.
Ve a my.clerk.io > Data y haz clic en Start New Data Sync para sincronizar los nuevos atributos.
Eligiendo productos para importar #
Por defecto, la extensión de Magento 2 solo importa productos que están en stock y disponibles para la venta.
Esto puede modificarse si es necesario.
Incluir productos fuera de stock #
En el backend de Magento 2, ve a Stores->Configuration->Clerk->Configuration.
En Product Synchronization tienes dos opciones para elegir los productos a importar:
Only synchronize saleable products te permite elegir si envías productos que no pueden comprarse, pero aún se muestran
Only synchronize product with visibility te permite elegir una visibilidad específica que deben tener los productos
Después de hacer tus cambios, haz clic en Save Config.
Si haces esto, recomendamos que también añadas un atributo extra a Magento 2 que indique cuándo un producto no es disponible para la venta, para poder mostrarlo en tu Diseño.
Suponiendo que crees un atributo llamado is_saleable que sea true o false, puedes usarlo así en Designs:
{% raw %}
{% if product.is_saleable %}
<div class="in-stock">En stock</div>
{% else %}
<div class="not-in-stock">Sin stock</div>
{% endif %}
{% endraw %}
Luego ve a my.clerk.io -> Data Sync y haz clic en Start Sync para sincronizar con las nuevas reglas.
Añadiendo reglas personalizadas #
El siguiente archivo controla qué productos se importan a Clerk:
vendor->clerk->magento2->Model->Adapter->Product.php
En la parte inferior de este archivo, localiza la función llamada prepareCollection().
Si es necesario, añade reglas a prepareCollection() para controlar qué productos envía la extensión a Clerk.io.
Luego ve a my.clerk.io -> Data y haz clic en Start Full Data Sync para sincronizar con las nuevas reglas.
Desactivar la sincronización de pedidos #
Después de que la primera sincronización de datos se ejecute correctamente, la sincronización de pedidos desde Magento2 puede desactivarse ya que el seguimiento de ventas de la extensión toma el control.
Para desactivar la sincronización de pedidos, abre Stores > Configuration en tu backend de Magento 2.
Abre Clerk > Configuration.
En Synchronization, establece Disable Order Synchronization en Yes, luego haz clic en Save en la parte superior de la página.
Los cambios se aplican de inmediato.
Esta página ha sido traducida por una IA útil, por lo que puede contener errores de idioma. Muchas gracias por su comprensión.