Les métadonnées définies sur un objet ne sont généralement pas « héritées » ni copiées sur les objets associés qui sont créés simultanément. Par exemple, une propriété Balance Transaction n'héritera pas des métadonnées précédemment définies sur l'élément Charge qui a créé cette même propriété.
Il existe quelques exceptions importantes. Lorsqu'un PaymentIntent est confirmé, Stripe copie ses métadonnées, ainsi que d'autres champs, dans la propriété Charge créée par le PaymentIntent. Il s'agit toutefois d'un événement ponctuel, et les mises à jour ultérieures des métadonnées de PaymentIntent ne seront pas reproduites sur la propriété Charge, dont les métadonnées doivent être actualisées séparément.
De plus, les métadonnées d'un Invoice's Line Item seront copiées à partir des métadonnées de l'élément Subscription auquel appartient l'Invoice, pour les éléments de ligne de facture avec le type : ‘subscription'.
Il existe également des objets Stripe avec des paramètres dédiés qui permettent de définir les métadonnées des objets associés. Exemples :
Vous pouvez définir les métadonnées d'un élément Subscription créé pour une Checkout Session en mode abonnement en définissant subscription_data.metadata. Toute mise à jour future des métadonnées de l'objet Subscription doit être effectuée directement sur celui-ci ou en modifiant les phases d'une planification d'abonnement.
Les planifications d'abonnement peuvent être utilisées pour mettre à jour les métadonnées sur l'objet Subscription sous-jacent à l'aide de phases.metadata.[0] À mesure que la planification passe à chaque phase, Stripe mettra à jour les métadonnées de Subscription en fonction du contenu de phases.metadata. Pour en savoir plus à ce sujet, consultez notre guide disponible dans la documentation.