Lignes de produit

Dans HubSpot, les lignes de produit sont des instances individuelles de produits. Lorsqu'un produit est associé à une transaction, il devient une ligne de produit. Vous pouvez créer des lignes de produit propres à un devis, qui ne seront pas ajoutées à votre bibliothèque de produits. Les points de terminaison des lignes de produit vous permettent de gérer ces données et de les synchroniser entre HubSpot et d'autres systèmes.

Exemple de cas d'utilisation : lors de la création d'un ensemble de devis que les représentants commerciaux enverront à de potentiels acheteurs, vous pouvez utiliser cette API pour créer des lignes de produit autonomes pour chaque devis ainsi que des lignes de produit associées à des produits existants.

Créer une ligne de produit

Pour créer un ligne de produit, effectuez une demande POST à /crm/v3/objects/line_items. Dans le corps de l'article, incluez les détails de la ligne de produit, tels que le nom, la quantité et le prix.

Pour créer une ligne de produit basée sur un produit existant (créé via l'API de produits ou dans HubSpot), incluez hs_product_id dans le corps de l'article. 

Vous pouvez également associer la ligne de produit avec des transactions, des devis, des factures, des liens de paiement ou des abonnements en incluant un tableau associations dans le corps de l'article. Par exemple, le corps d'article ci-dessous créerait une ligne de produit intitulée « Nouvelle ligne de produit autonome » associée à une transaction (ID : 12345).

// POST request to https://api.hubapi.com/crm/v3/objects/line_item { "properties": { "price": 10, "quantity": 1, "name": "New standalone line item" }, "associations": [ { "to": { "id": 12345 }, "types": [ { "associationCategory": "HUBSPOT_DEFINED", "associationTypeId": 20 } ]

Remarque :

  • Les lignes de produit appartiennent à un seul objet parent. Si vous associez des objets, les lignes de produit doivent être individuelles à chaque objet. Par exemple, si vous créez une transaction et un devis, vous devez créer un ensemble de lignes de produit pour la transaction et un autre ensemble pour le devis. Cela aidera à rationaliser les données CRM entre les objets et à prévenir la perte de données inattendue lorsque vous devez modifier des lignes de produit (par exemple, la suppression d'un devis supprimera les lignes de produit du devis, et si ces lignes de produit sont associées à une transaction, les lignes de produit des transactions seront également supprimées).
  • L'élément price spécifié dans le champ properties ne peut pas être négatif.
  • La propriété Durée des lignes de produit (hs_recurring_billing_period) accepte les formats de période ISO-8601 de PnYnMnD et PnW.

Récupérer une ligne de produit

Vous pouvez récupérer des lignes de produit de façon individuelle ou en masse.

  • Pour récupérer une ligne de produit spécifique, effectuez une demande GET à /crm/v3/objects/line_items/{lineItemId}lineItemId est l'ID de la ligne de produit.
  • Pour récupérer toutes les lignes de produit, effectuez une demande GET à /crm/v3/objects/line_items
Vous pouvez inclure les paramètres suivants dans l'URL de la requête :
Use this table to describe parameters / fields
ParameterDescription
properties

Une liste séparée par des virgules des propriétés à renvoyer dans la réponse. Si l'une des propriétés spécifiées n'est pas présente sur le(s) objet(s) demandé(s), elle sera ignorée.

propertiesWithHistory

Une liste séparée par des virgules des propriétés à renvoyer avec un historique de leurs précédentes valeurs. Si l'une des propriétés spécifiées n'est pas présente sur le(s) objet(s) demandé(s), elle sera ignorée.

Mettre à jour une ligne de produit

Pour mettre à jour une ligne de produit spécifique, effectuez une demande PATCH à /crm/v3/objects/line_items/{lineItemId}lineItemId est l'ID de la ligne de produit.

Dans le corps d'article, incluez les valeurs de propriété que vous souhaitez mettre à jour. Vous ne pouvez pas mettre à jour des associations via cette méthode. Vous devrez plutôt utiliser l'API des associations.

Par exemple, votre corps de requête peut ressembler aux éléments suivants :

// PATCH request to https://api.hubapi.com/crm/v3/objects/line_item/{lineItemId} { "properties": { "price": 25, "quantity": 3, "name": "Updated line item" }

Supprimer une ligne de produit

Pour supprimer une ligne de produit spécifique, effectuez une demande DELETE à /crm/v3/objects/line_items/{lineItemId}lineItemId est l'ID de la ligne de produit.

Propriétés des lignes de produit

Lors de la gestion de vos données de ligne de produit, vous pouvez utiliser certaines des propriétés communes dans le tableau ci-dessous. Pour obtenir toutes les propriétés des lignes de produit, effectuez une demande GET à /crm/v3/properties/line_item. Découvrez-en davantage sur l'utilisation de l'API des propriétés.

Nom de la propriété Libellé dans l'interface utilisateur Description
name Nom Le nom de la ligne de produit.
description Description Description complète du produit
hs_sku UGS Identifiant de produit unique
hs_billing_period_start_date Date de début de la facturation Date de début d'une période de facturation fixe
hs_billing_period_end_date Date de fin de la facturation Date de fin d'une période de facturation fixe
recurringbillingfrequency Fréquence de facturation La fréquence à laquelle une ligne de produit avec facturation récurrente est facturé. Elle informe le calcul des prix pour les transactions et les devis. Les lignes de produit avec facturation unique ne sont pas incluses.
quantity
Quantité Combien d'unités d'un produit sont incluses dans cette ligne de produit
price
Prix unitaire Le coût du produit
amount Prix net Le coût total de la ligne de produit (c'est-à-dire la quantité multipliée par le prix unitaire).
currency Devise Code de devise pour la ligne de produit

Cet article vous a-t-il été utile ?
Ce formulaire est destiné à recueillir les avis sur la documentation pour les développeurs. Si vous souhaitez faire part de votre avis sur les produits HubSpot, veuillez le partager sur le forum des idéesde la communauté.