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 elección de qué productos importar y la gestión de la sincronización de pedidos.
Personalización de datos del producto #
Envío de atributos simples #
Si los atributos que deseas enviar ya están disponibles como atributos simples en el administrador de Magento 2, se pueden agregar fácilmente en la página de la Extensión.
- Comienza accediendo a Stores -> Product

Aquí puedes ver todos los atributos disponibles en tu tienda.
Encuentra los códigos de atributo de los que deseas enviar a Clerk:

- Asegúrate de que tu atributo sea tanto Visible como usado en Listados de Productos.
Puedes comprobar esto haciendo clic en el atributo y yendo a Propiedades de la tienda:

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
Limpia las diferentes 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 deseas enviar ya están disponibles como parte de los datos de productos configurables/agrupados en tu panel de Magento2, se pueden sincronizar fácilmente con la última versión de tu plugin.
Aparecerán como child_attribute, por ejemplo, child_color, child_skus, etc.

Envío de atributos personalizados #
Los atributos personalizados se pueden agregar a través de la extensión en FTP.
Este archivo maneja 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 tendrá en Clerk, y MAGENTO2_LOGIC es el código para obtener el atributo de Magento 2.

Importación de datos de productos simples #
El siguiente código se puede usar para obtener cualquier dato que desees 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 que sean buscables y filtrables en Clerk.
Como en el script de atributos personalizados anterior, los datos de productos configurables se pueden agregar a través de la extensión en FTP.
Este archivo gestiona los atributos de producto:
vendor->clerk->magento2->Model->Adapter->Product.php
Agrega 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 tendrá en Clerk, y getATTRIBUTE_TEXT es la función get con el texto para el atributo que estás llamando, por ejemplo $product->getSKU().
Por último, incluye tus nuevos atributos en la extensión de Clerk en el administrador de Magento 2, bajo Synchronization -> Additional Fields.(Como se explicó 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.

Personalización de datos del cliente #
Como con los Productos, los Clientes están representados por attributes en Clerk.
Al enviar atributos de Cliente, puedes usar Audience como una Customer Data Platform(CDP) y crear Audiences basadas en cualquier atributo que envíes, como región, género, códigos fiscales y más.
Puedes leer más sobre cómo Magento2 gestiona los Atributos de Cliente aquí.
- Comienza por averiguar qué atributos tienes disponibles y cuáles son sus Códigos de Atributo.
Puedes encontrar esto en el backend de Magento2 en Stores > Attributes > Customer.

- Una vez que tengas los códigos de atributo que deseas, ve a:
Stores > Settings **> Configuration > Clerk > Configuration > Customer Synchronization**
En Extra Customer Attributes, agrega una lista separada por comas de los atributos que quieres 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:

Elegir productos para importar #
De manera estándar, la extensión de Magento 2 solo importa productos que están en stock y disponibles para la venta.
Esto se puede cambiar si es necesario.
Incluir productos agotados #
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 enviar productos que no se pueden comprar, 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, te recomendamos que también agregues un atributo extra a Magento 2, que indique cuándo un producto no está disponible para la venta, para que puedas mostrarlo en tu Design.
Asumiendo que creas un atributo llamado is_saleable que puede ser true o false, puedes usarlo así en Designs:
{% raw %}
{% if product.is_saleable %}
<div class="in-stock">In Stock</div>
{% else %}
<div class="not-in-stock">Not In Stock</div>
{% endif %}
{% endraw %}
Luego ve a my.clerk.io -> Data Sync y haz clic en Start Sync para sincronizar con las nuevas reglas.
Agregar 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 lo necesitas, puedes agregar reglas avanzadas a esta función para controlar qué productos enviar:

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 haya ejecutado correctamente, la sincronización de pedidos desde Magento2 se puede desactivar ya que el seguimiento de ventas desde la extensión toma el control.
Para desactivar la sincronización de pedidos, entra en tu backend de Magento2, haz clic en STORES y luego en CONFIGURATION:

A continuación, desplázate hacia abajo y encuentra la pestaña llamada CLERK, haz clic y presiona CONFIGURATION:

Haz clic en SYNCHRONIZATION, cambia el campo DISABLE ORDER SYNCHRONIZATION a NO y presiona SAVE en la parte superior de la página:

Los cambios tendrán efecto 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.