Flux produit

Vos produits dans ChatGPT, sans rejet silencieux

OpenAI écarte un produit mal formé sans vous prévenir, et le produit n’apparaît jamais. Convrail garde votre catalogue à jour, contrôle chaque ligne de votre flux produit selon la spécification officielle avant l’envoi, livre les lignes acceptées dans le format attendu par OpenAI et liste chaque rejet avec sa correction.

  • Contrôlé selon la spécification officielle OpenAI
  • Créé chez OpenAI et livré pour vous
  • Chaque rejet listé avec sa correction

Flux du jour, 9 987 produits

✓ 9 974 prêts pour ChatGPT 13 à corriger avant l’envoi

  • Lampe Nordic Oak titre de plus de 150 caractères raccourcir
  • Chaise Loop prix « 25,99 » mal écrit 25.99 EUR
  • Tapis Sahel balises HTML dans la description nettoyer

Envoyé à OpenAI à 04:00, journal complet disponible

Exemple illustratif, pas un résultat client.

Ce qui change pour votre boutique

Plus aucun produit écarté en silence

Un titre en majuscules, du HTML dans une description ou un prix écrit « 25,99 » est repéré avant qu’OpenAI ne le voie, avec la correction à faire.

Un flux toujours à jour

Les modifications de votre boutique arrivent chez OpenAI dans l’heure, et votre catalogue complet est renvoyé une fois par jour.

Vous savez toujours ce qui a été envoyé

Chaque livraison est journalisée : produits lus, acceptés et rejetés, ce qui a changé depuis la précédente, et si le fichier est bien arrivé.

Tout ce que votre flux exige, inclus

  • Catalogue synchronisé

    Les webhooks produits sur Shopify et la synchronisation par lots sur WooCommerce gardent le flux à jour, avec une resynchronisation complète à la demande.

  • Validation ligne par ligne

    Les 9 champs requis et leurs limites exactes, le format des prix, les fichiers image, les identifiants et les valeurs de remplissage, contrôlés sur chaque ligne.

  • Des corrections, pas des codes d’erreur

    Chaque produit rejeté est listé avec le champ, la règle enfreinte et la correction à apporter.

  • Des données produit propres

    Le HTML est retiré des descriptions, les prix sont dans la devise de la boutique et les variantes sont regroupées sous un même produit.

  • Vos réglages appliqués

    Nom de la boutique, pays ciblés et éligibilité à la recherche et à la publicité dans ChatGPT, réglés une fois et appliqués à chaque produit.

  • Codes-barres invalides écartés sans risque

    Un GTIN au chiffre de contrôle faux est omis plutôt qu’envoyé : le produit reste dans le flux.

  • Quatre formats d’export

    JSON Lines compressé par défaut, ou Parquet, CSV ou TSV, avec des fichiers découpés sous les limites de taille de la spécification.

  • Créé et livré pour vous

    Dès que votre compte ChatGPT Ads est relié, Convrail crée votre flux chez OpenAI et y dépose chaque livraison, avec des reprises et une alerte si l’envoi échoue encore.

  • Un journal pour chaque exécution

    Nombre de produits acceptés et rejetés, ce qui a été ajouté, retiré ou modifié depuis l’exécution précédente, et le statut de livraison.

En place en trois étapes

  1. Installez Convrail

    Sur Shopify ou WooCommerce. Votre catalogue se synchronise tout seul.

  2. Réglez votre flux

    Nom de la boutique et pays ciblés. Reliez votre compte ChatGPT Ads : votre flux est créé chez OpenAI, sans rien d’autre à saisir.

  3. Corrigez l’essentiel, le reste part

    Les produits acceptés sont livrés dans l’heure ; les rejetés attendent la correction indiquée dans l’application.

Sous le capot

Pour les équipes techniques et les agences : les champs requis et leurs limites, le passage du catalogue au fichier livré, et ce que chaque exécution enregistre.

Le problème du rejet silencieux

L’ingestion du flux OpenAI ne renvoie pas de rapport d’erreur par ligne. Un titre en majuscules, du HTML resté dans une description ou un prix écrit « 25,99 » : le produit est ignoré, et rien ne vous prévient. Les marchands le découvrent des semaines plus tard, quand un produit vendu chaque jour n’apparaît jamais dans ChatGPT. Convrail déplace ce contrôle de votre côté : chaque ligne est validée avant la livraison, et chaque rejet est écrit dans le journal d’exécution avec le champ, la règle et la correction.

✗ « 25,99 » comme prix : la ligne disparaît, et le produit avec
✓ intercepté avant livraison : le prix doit être « 25.99 EUR »

Les 9 champs requis, avec les limites exactes

Voici les règles que Convrail applique, issues de la spécification du flux produit OpenAI. Chacune est couverte par un test automatisé.

Champs requis du flux produit OpenAI et validation appliquée par Convrail
ChampRègleRejet typique
item_idRequis, stable, 100 caractères maxIdentifiant de variante qui change à chaque import
titleRequis, 150 caractères max, pas tout en majuscules« CASQUE SANS FIL XL »
descriptionRequise, 5 000 caractères max, texte brutBalises HTML laissées par l’éditeur de la boutique
urlRequise, URL http(s) valideChemin relatif
brandRequis, 70 caractères maxChamp fournisseur vide
image_urlRequise, lien HTTP(S) direct vers un JPEG ou PNG, HTTPS recommandéFichier .webp, URL avec identifiants
price« <montant> <ISO-4217> », supérieur à 0« 25,99 », « 25.99 », « 25,99 € »
availabilityin_stock, out_of_stock, pre_order, backorder ou unknown« disponible »
seller_nameRequis, vrai nom de vendeur, 70 caractères maxAbsent, « unknown »

Les champs conditionnels et recommandés sont contrôlés de la même façon quand ils sont présents, car un champ optionnel mal formé écarte aussi la ligne.

Champs conditionnels et recommandés validés par Convrail
ChampRègleRejet typique
is_eligible_search« true » ou « false » en minuscules ; absent vaut trueBooléen, « TRUE », « oui »
is_ads_eligible« true » ou « false » en minuscules ; requis pour la publicité« 1 », « oui »
target_countriesCodes ISO 3166-1 alpha-2 en majuscules, configurés avec votre compte OpenAI« France », « USA »
gtin8, 12, 13 ou 14 chiffres avec un chiffre de contrôle valideFaute de frappe dans le code-barres, tirets
sale_priceMême devise, strictement inférieur à pricePrix promotionnel égal au prix
group_idStable et différent de item_idgroup_id copié depuis item_id
brand, seller_nameVraies valeurs, jamais de remplacement« n/a », « null », « unknown »

Également contrôlés quand ils sont présents : mpn (70 caractères max), availability_date (ISO 8601), star_rating et popularity_score (de 0 à 5), review_count et return_deadline_in_days (entiers positifs). Sans GTIN ni MPN, identifier_exists vaut « no ». Un GTIN au chiffre de contrôle erroné est omis plutôt qu’envoyé : la ligne reste valide.

Du catalogue au fichier livré

  1. Votre catalogue reste synchronisé

    Les webhooks produit maintiennent à jour la copie de votre catalogue chez Convrail. Les changements sont regroupés sur 30 secondes : une modification en masse déclenche une reconstruction, pas cent. Une synchronisation complète est disponible à la demande.

  2. Chaque produit devient une ligne de flux

    Le HTML est retiré des descriptions, les prix sont formatés avec la devise de la boutique, les variantes sont regroupées sous group_id, et votre nom de vendeur, vos pays cibles et vos indicateurs d’éligibilité sont appliqués depuis les réglages du flux.

  3. Chaque ligne est validée

    Les lignes acceptées entrent dans le fichier. Les lignes rejetées sont journalisées avec le champ et la règle enfreinte. Le nombre de rejets est visible dans l’application avant que le fichier ne parte.

  4. Le fichier est exporté et découpé

    Formats : jsonl.gz par défaut, ou parquet, csv.gz ou tsv.gz. Les fichiers sont découpés à 500 000 articles ou environ 450 Mo, sous les limites de la spécification, avec des noms stables (feed-organic-000.jsonl.gz) pour que chaque livraison remplace l’instantané précédent.

  5. Livré chez OpenAI pour vous

    Convrail crée votre flux chez OpenAI, avec son propre accès de dépôt, et y livre les fichiers : les modifications de produits dans l’heure, une livraison par heure au plus pour laisser OpenAI terminer le traitement de la précédente, et le catalogue complet une fois par jour. Les livraisons en échec sont rejouées, puis ouvrent une alerte.

Un journal pour chaque exécution

Chaque exécution enregistre le nombre d’articles lus, acceptés et rejetés, le diff avec l’exécution précédente (ajoutés, retirés, modifiés) et le statut de livraison. Les erreurs par ligne sont conservées avec l’exécution : vous pouvez retrouver quand un produit a quitté le flux, et pourquoi.

Champ du journalSignification
itemsTotal, itemsValid, itemsRejectedNombre de lignes construites, conservées et écartées
added, removed, changedDiff avec l’exécution précédente, calculé à partir d’un hash de chaque ligne
errorsUne entrée par article rejeté : item_id, champ, message
deliveryStatuspending, delivered ou failed, avec le nombre de tentatives

Si vous avez déjà un flux Google Shopping

La plupart des champs se transposent, pas tous. OpenAI attend is_eligible_search, is_ads_eligible et target_countries que Google n’a jamais demandés, utilise seller_name à la place d’un compte marchand, et formate les booléens en chaînes minuscules. Convrail conserve aussi une projection compatible Google de votre flux : le même catalogue sert les deux canaux sans maintenir deux exports.

Questions fréquentes

Quels formats OpenAI accepte-t-il pour le flux produit ?

Parquet (recommandé pour les gros catalogues), JSON Lines compressé, CSV et TSV. Convrail exporte les quatre : le JSON Lines compressé (jsonl.gz) est le format par défaut, et un autre format se choisit dans les réglages avancés du flux.

À quelle fréquence le flux est-il livré ?

Les modifications de vos produits partent dans l’heure, avec une livraison par heure au plus pour laisser OpenAI terminer le traitement de la précédente, et votre catalogue complet est renvoyé une fois par jour. Les noms de fichiers restent stables : chaque livraison remplace la précédente.

Que devient un produit dont la ligne est invalide ?

Il est exclu de cette livraison et listé dans le journal d’exécution avec le champ et la règle enfreinte. Corrigez le produit dans votre boutique et l’exécution suivante le reprend.

Faut-il un flux distinct pour ChatGPT Ads ?

Non. OpenAI utilise un seul flux produit pour les résultats organiques et la publicité : chaque ligne indique si elle peut servir en publicité avec l’indicateur is_ads_eligible. Convrail le renseigne depuis vos réglages de flux.

Quelle taille de catalogue est possible ?

Les fichiers sont découpés à 500 000 articles ou environ 450 Mo chacun, dans les limites de la spécification. Dans notre test automatisé, un catalogue de 10 000 produits est validé, exporté et livré par SFTP en moins d’une minute.

Où sont conservés les accès de dépôt du flux ?

L’accès de dépôt créé chez OpenAI pour votre flux est chiffré au repos en AES-256-GCM, comme chaque secret que Convrail stocke, et n’est déchiffré qu’au moment de la livraison.

Mesurez le canal ChatGPT dès cette semaine

Convrail démarre avec une offre gratuite, et les offres payantes commencent par un essai gratuit. Laissez votre email et vous recevez le lien d'installation dès qu'une place s'ouvre.

Pas de newsletter. Un seul email avec le lien d'installation, rien d'autre.