Empezar
Por qué se utiliza ISO 4217 para Google, Facebook, Bing, Pinterest y TikTok en los feeds XML - AdTribes
  1. Inicio
  2. Base de conocimientos
  3. Consejos generales sobre feeds
  4. Por qué se utiliza ISO 4217 para Google, Facebook, Bing, Pinterest y TikTok en los feeds XML

Por qué se utiliza ISO 4217 para Google, Facebook, Bing, Pinterest y TikTok en los feeds XML

Al generar feeds XML para Google, Facebook, Bing, Pinterest y TikTok, los valores de moneda deben formatearse correctamente para garantizar que se procesen sin errores. Estas plataformas requieren que los precios utilicen un punto como separador decimal, sin separadores de miles y códigos de moneda de tres letras. Los códigos de moneda están definidos por ISO 4217, mientras que las reglas de separadores provienen de la especificación de feed de cada plataforma.

La presentación de feeds que no cumplen con estos requisitos de formato de plataforma dará lugar a rechazos de feed o a un análisis incorrecto de los precios en Google Merchant Center, Facebook Catalog, Microsoft Bing Shopping, Pinterest Catalogs y TikTok Product Catalog. Product Feed Pro y Product Feed Elite manejan este formato automáticamente para todas estas plataformas.

Si necesita utilizar separadores regionales en lugar de este formato, hay una solución alternativa a nivel de desarrollador utilizando fragmentos de PHP disponible. Consulte la sección Uso de separadores regionales a continuación. Tenga en cuenta que este enfoque no está soportado.

La aplicación de ISO 4217 para TikTok requiere Product Feed Pro 13.5.7 o posterior. En versiones anteriores, los feeds de TikTok Product Catalog podían mostrar precios utilizando el separador decimal con formato de configuración regional de tu tienda en lugar del punto requerido, lo que el analizador del catálogo de TikTok podía rechazar. Actualiza a la versión 13.5.7 o superior si tu feed de TikTok se ve afectado. Para obtener ayuda con la configuración de un feed de TikTok, consulta Cómo configurar un feed de catálogo de TikTok.

Requisitos

RequisitoDetalles
PluginProduct Feed Pro o Product Feed Elite instalado y activo
WooCommerceInstalado y configurado con la moneda de tu tienda
Feed de productosAl menos un feed configurado para Google, Facebook, Bing, Pinterest o TikTok

Comprensión de ISO 4217 y las reglas de formato de feed

ISO 4217 es el estándar internacional para códigos de moneda. Define los códigos de tres letras utilizados para identificar monedas en sistemas financieros y comerciales, como USD para Dólar estadounidense, EUR para Euro y JPY para Yen japonés. Google, Facebook, Bing, Pinterest y TikTok requieren estos códigos de moneda ISO 4217 en las presentaciones de los feeds de productos.

Las reglas de separadores decimales y de miles no forman parte de ISO 4217. Provienen de la especificación de feed de cada plataforma, aunque las cinco plataformas coinciden en los mismos requisitos:

  • Separador decimal: Se debe utilizar un punto (.) para los valores decimales.
  • Separadores de miles: No se utilizan. Omitirlos evita errores de análisis.
  • Códigos de moneda: El código de tres letras ISO 4217 (por ejemplo, USD, EUR, JPY) se anexa al valor del precio.

Por qué Google, Facebook, Bing, Pinterest y TikTok requieren este formato

Al enviar feeds de productos a Google Merchant Center, Facebook Catalog, Microsoft Bing Shopping, Pinterest Catalogs o TikTok Product Catalog, los valores de moneda deben seguir estas reglas de formato para evitar errores en el feed. Estas plataformas aplican un estándar uniforme porque:

  1. Evita la mala interpretación de datos: Algunos países utilizan comas (,) como separadores decimales y puntos (.) para los miles (por ejemplo, 1.000,50 en lugar de 1,000.50). Sin estandarización, esto conduce a un análisis incorrecto de los precios.
  2. Garantiza la coherencia: Al exigir el mismo formato decimal (.), las plataformas pueden interpretar con precisión los valores de los precios independientemente de las diferencias regionales.
  3. Cumplimiento obligatorio del feed: Google, Facebook, Bing, Pinterest y TikTok rechazan los feeds que no cumplen con su formato requerido. Consulte la documentación oficial de cada plataforma: Google, Facebook, Bing, Pinterest, TikTok.

Cómo Product Feed Pro maneja este formato

Product Feed Pro y Product Feed Elite formatean automáticamente los precios en sus feeds XML para cumplir con los requisitos de estas plataformas. No necesita configurar nada. El plugin lo maneja por defecto:

  • Los precios siempre se formatean utilizando un punto (.) como separador decimal.
  • No se incluyen separadores de miles para evitar problemas de análisis.
  • Se añade el código de divisa de tres letras correcto (p. ej., USD, GBP, EUR) a los valores de los precios, leído de la configuración de divisa de su tienda WooCommerce (get_woocommerce_currency()).

Por ejemplo:

Formato regional (no aceptado por estos canales)Formato de feed requerido
1234,56 EUR1234,56 EUR
10.500,99 USD10500,99 USD
5.000,75 GBP5000,75 GBP

Los formatos regionales de la columna izquierda no son intrínsecamente incorrectos. Son perfectamente válidos en muchos países. Simplemente no son aceptados por Google, Facebook, Bing, Pinterest y TikTok, cuyos analizadores de feeds requieren el formato de punto decimal que se muestra a la derecha.

Problemas comunes y soluciones

Si tu feed es rechazado debido a errores de formato de moneda, comprueba:

  • Separadores decimales incorrectos: use . en lugar de ,
  • Uso de separadores de miles: elimínelos por completo
  • Códigos de divisa faltantes: asegúrese de que los precios incluyan el código de tres letras adecuado

Uso de separadores regionales en lugar del formato requerido

Por defecto, Product Feed Pro y Product Feed Elite aplican el formato correcto para todos los feeds de Google, Facebook, Bing, Pinterest y TikTok. Sin embargo, si tu tienda utiliza formato numérico regional (por ejemplo, un punto como separador de miles y una coma como separador decimal) y necesitas que tus feeds lo reflejen, puedes usar los fragmentos de PHP a continuación para anular el comportamiento predeterminado.

Esta es una personalización a nivel de desarrollador. No se ofrece soporte para problemas que surjan al aplicar estos fragmentos, así que procede solo si te sientes cómodo editando el archivo functions.php de tu tema o utilizando un plugin de fragmentos de código como WPCode.

Primero, asegúrese de que las opciones de divisa de WooCommerce coincidan con sus preferencias. Navegue a WooCommerce → Ajustes → General y desplácese hasta la sección Opciones de divisa. Para el formato regional europeo, establezca el separador de miles en un punto (.) y el separador decimal en una coma (,).

Configuración general de WooCommerce mostrando la sección de opciones de moneda con campos de separador decimal y de miles

A continuación, añade el siguiente fragmento a tu archivo functions.php o a través del plugin WPCode. Esto fuerza a que todos tus feeds y plantillas utilicen tus separadores preferidos a través del filtro adt_product_feed_localize_price_args. Para el formato regional europeo, el fragmento debe establecer 'decimal_separator' => ',' y 'thousand_separator' => '.':

add_filter('adt_product_feed_localize_price_args', function($args) {
    $args['decimal_separator'] = ',';
    $args['thousand_separator'] = '.';
    return $args;
});

A continuación, agregue uno o más de los siguientes fragmentos para eliminar el formato requerido para plataformas específicas a través del filtro adt_pfp_localize_price_iso4217_feeds:

// Google feeds
add_filter('adt_pfp_localize_price_iso4217_feeds', function($feeds) {
    return array_filter($feeds, function($feed) {
        return strpos($feed, 'google_') !== 0;
    });
});

// Facebook feeds
add_filter('adt_pfp_localize_price_iso4217_feeds', function($feeds) {
    return array_filter($feeds, function($feed) {
        return strpos($feed, 'facebook_') !== 0;
    });
});

// Bing feeds
add_filter('adt_pfp_localize_price_iso4217_feeds', function($feeds) {
    return array_filter($feeds, function($feed) {
        return strpos($feed, 'bing_') !== 0;
    });
});

// Pinterest feeds
add_filter('adt_pfp_localize_price_iso4217_feeds', function($feeds) {
    return array_filter($feeds, function($feed) {
        return $feed !== 'pinterest';
    });
});

// TikTok feeds
add_filter('adt_pfp_localize_price_iso4217_feeds', function($feeds) {
    return array_filter($feeds, function($feed) {
        return $feed !== 'tiktok';
    });
});

Por ejemplo, un fragmento completo para eliminar el formato requerido solo para los feeds de Google:

add_filter('adt_product_feed_localize_price_args', function($args) {
    $args['decimal_separator'] = ',';
    $args['thousand_separator'] = '.';
    return $args;
});

add_filter('adt_pfp_localize_price_iso4217_feeds', function($feeds) {
    return array_filter($feeds, function($feed) {
        return strpos($feed, 'google_') !== 0;
    });
});

Después de agregar los fragmentos, actualice sus feeds. La salida reflejará sus preferencias de separadores regionales:

Salida del feed XML mostrando precios formateados con separadores regionales después de aplicar el snippet

Preguntas frecuentes

¿Product Feed Pro aplica este formato a todos los tipos de feed o solo a Google, Facebook, Bing, Pinterest y TikTok?
Este formato se aplica específicamente a las plantillas de feed de Google, Facebook, Bing, Pinterest y TikTok, ya que estas plataformas lo requieren explícitamente. Otros tipos de feed siguen la configuración de moneda de tu WooCommerce, a menos que configures anulaciones adicionales.
Mi feed fue rechazado por un error en el formato del precio. ¿Qué debo revisar primero?
Primero, confirme que Product Feed Pro está generando precios con un punto como separador decimal, sin separador de miles y con un código de moneda de tres letras (por ejemplo, 1234.56 USD). Si el feed parece correcto, verifique que no haya aplicado ningún fragmento de separador regional que pueda estar anulando la salida. Verifique también que la configuración de moneda de su WooCommerce coincida con la salida deseada.
¿Este formato afectará a los precios mostrados en mi tienda?
No. Este formato solo se aplica a la salida del feed XML enviada a Google, Facebook, Bing, Pinterest y TikTok. Los precios de tu tienda seguirán mostrándose utilizando la configuración de formato de moneda de tu WooCommerce.
Utilizo una moneda sin decimales (por ejemplo, JPY). ¿Cómo se maneja esto?
Para los feeds de Google, Facebook, Bing, Pinterest y TikTok, los precios siempre se formatean con dos decimales, independientemente de la configuración decimal de tu WooCommerce. Un precio en yenes japoneses de 1500 se envía como 1500.00 JPY, no como 1500 JPY. Esto lo aplica el plugin para cumplir con los requisitos de la plataforma.
Apliqué los fragmentos de separador regional pero mi feed todavía muestra el formato estándar. ¿Por qué?
Asegúrate de haber añadido *ambos* fragmentos: el primero establece tus separadores preferidos a través de adt_product_feed_localize_price_args (con 'decimal_separator' => ',' y 'thousand_separator' => '.' para el formato europeo), y el segundo elimina la plataforma específica de la lista de aplicación a través de adt_pfp_localize_price_iso4217_feeds. Asegúrate también de haber actualizado el feed afectado después de guardar los fragmentos, ya que los feeds se almacenan en caché y no se actualizarán hasta que se regeneren.
¿Puedo aplicar separadores regionales solo a una plataforma y mantener el formato estándar para las demás?
Sí. El filtro adt_pfp_localize_price_iso4217_feeds te permite eliminar plataformas individuales (Google, Facebook, Bing, Pinterest o TikTok) de la lista de aplicación de forma independiente. Simplemente incluye solo el bloque de filtro para la plataforma que deseas anular y deja las otras fuera.
¿Cómo actualizo un feed después de hacer cambios?
Ve a Product Feed → Manage feeds, localiza el feed que deseas regenerar y haz clic en Refresh Feed. El archivo del feed se reconstruye utilizando la configuración actual del plugin y cualquier snippet activo.
¿Afecta esta configuración a los precios de oferta y a los precios habituales de la misma manera?
Sí. El formato se aplica de manera uniforme a todos los campos de precios enviados en el feed, incluidos los precios habituales, los precios de oferta y cualquier atributo de precio personalizado mapeado en tu plantilla de feed.
¿Qué sucede si WooCommerce está configurado para mostrar precios sin decimales?
Para los feeds de Google, Facebook, Bing, Pinterest y TikTok, el plugin siempre genera precios con dos decimales. La configuración de decimales de tu WooCommerce no se aplica a estos feeds forzados. Por ejemplo, un precio de 1500 aparece como 1500.00 en el feed independientemente de cómo esté configurado WooCommerce para mostrarlo en tu tienda.

Ayuda y soporte

Si necesitas más ayuda con el formato de moneda en tus feeds de productos, no dudes en abrir un ticket de soporte para contactar con el equipo de soporte.

Ten en cuenta que el sistema de soporte por tickets es exclusivo para usuarios de Product Feed Elite.

Si solo está utilizando el plugin Product Feed Pro, no dude en abrir un nuevo tema en el foro de WordPress.org.

¿Te ha resultado útil este artículo?

Artículos relacionados

Completa tu compra
Feed de productos de WooCommerce de AdTribes

El mejor plugin de feeds de productos de WooCommerce

  • AdTribes Pty Ltd
    ABN: 40 675 636 816
Producto
Recursos e información
Sitios asociados
Rymera