Transactions

Dans HubSpot, les transactions représentent des transactions avec des contacts ou des entreprises. Les transactions sont suivies tout au long de votre processus de vente via des phases de pipeline jusqu'à ce qu'elles soient gagnées ou perdues. Les points de terminaison des transactions vous permettent de créer et de gérer des fiches d'informations de transaction ainsi que de synchroniser des données de transaction entre HubSpot et d'autres systèmes. 

Découvrez-en davantage sur les API d'objets, de fiches d'informations, de propriétés et d'associations dans le guide Comprendre le CRM. Pour plus d'informations générales sur les objets et les fiches d'informations dans HubSpot, découvrez comment gérer votre base de données CRM.

Créer des transactions

Pour créer de nouvelles transactions, effectuez une demande POST à /crm/v3/objects/deals.

Dans votre demande, incluez les données de votre transaction dans un objet de propriétés. Vous pouvez également ajouter un objet d'association pour associer votre nouvelle transaction à des fiches d'informations existantes (par exemple, des contacts ou des entreprises) ou à des activités (par exemple, des réunions ou des notes).

Propriétés

Les détails de la transaction sont stockés dans des propriétés de transaction. Il existe des propriétés de transaction HubSpot par défaut, mais vous pouvez également créer des propriétés personnalisées.

Lorsque vous créez une nouvelle transaction, vous devez inclure les propriétés suivantes dans votre demande : dealname, dealstage et, si vous disposez de plusieurs pipelines, pipeline. Si aucun pipeline n'est spécifié, le pipeline par défaut sera utilisé. 

Pour afficher toutes les propriétés disponibles, vous pouvez récupérer une liste des propriétés de transaction de votre compte en effectuant une demande GET à /crm/v3/properties/deals. Découvrez-en davantage sur l'API des propriétés.

Remarque : Vous devez utiliser l'ID interne d'une phase de transaction ou d'un pipeline lors de la création d'une transaction via l'API. L'ID interne sera également retourné lorsque vous récupérerez des transactions via l'API. Vous pouvez trouver l'ID interne d'une phase de transaction ou d'un pipeline dans les paramètres de votre pipeline de transactions.

Par exemple, pour créer une nouvelle transaction, votre demande peut ressembler à ce qui suit :

///Example request body { "properties": { "amount": "1500.00", "closedate": "2019-12-07T16:50:06.678Z", "dealname": "New deal", "pipeline": "default", "dealstage": "contractsent", "hubspot_owner_id": "910901" } }

Associations

Lorsque vous créez une nouvelle transaction, vous pouvez également associer la transaction à des fiches d'informations ou activités existantes. Dans l'objet d'association, ajoutez les champs suivants :

Use this table to describe parameters / fields
ParameterDescription
toObjectId

L'ID de la fiche d'informations ou de l'activité à laquelle vous souhaitez associer la transaction.

associationTypeId

Un identifiant unique pour indiquer le type d'association entre la transaction et l'autre objet ou activité. Les types d'association par défaut sont répertoriés ici, ou vous pouvez récupérer la valeur en effectuant une demande GET à /crm/v4/associations/{fromObjectType}/{toObjectType}/labels. Découvrez-en davantage sur l'API des associations.

Vous pouvez également inclure le champ label pour attribuer un libellé d'association défini qui décrit l'association. Découvrez-en davantage sur l'association de fiches d'informations via l'API des associations.

Par exemple, pour associer une nouvelle transaction à un contact et une entreprise existants, votre demande ressemblerait à ce qui suit :

///Example request body { "properties": { "amount": "1500.00", "closedate": "2019-12-07T16:50:06.678Z", "dealname": "New deal", "pipeline": "default", "dealstage": "contractsent", "hubspot_owner_id": "910901" }, "associations": [ { "to": { "id": 201 }, "types": [ { "associationCategory": "HUBSPOT_DEFINED", "associationTypeId": 5 } ] }, { "to": { "id": 301 }, "types": [ { "associationCategory": "HUBSPOT_DEFINED", "associationTypeId": 3 } ] }] }

Récupérer des transactions

Vous pouvez récupérer des transactions individuellement ou par lots.

  • Pour récupérer une transaction individuelle, effectuez une demande GET à /crm/v3/objects/deals/{dealId}.
  • Pour demander une liste de toutes les transactions, effectuez une demande GET à /crm/v3/objects/deals.
Pour ces points de terminaison, 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 la transaction demandée n'a pas de valeur pour une propriété, elle n'apparaîtra pas dans la réponse.
propertiesWithHistory

Une liste séparée par des virgules des propriétés actuelles et historiques à renvoyer dans la réponse. Si la transaction demandée n'a pas de valeur pour une propriété, elle n'apparaîtra pas dans la réponse.

associations

Une liste séparée par des virgules des objets pour lesquels récupérer les ID associés. Les associations spécifiées qui n'existent pas ne seront pas renvoyées dans la réponse. Découvrez-en davantage sur l'API des associations.

  • Pour récupérer un lot de transactions spécifiques par ID de fiche d'informations ou selon une propriété d'identifiant unique personnalisée, effectuez une demande POST à crm/v3/objects/deals/batch/read. Le point de terminaison du lot ne peut pas récupérer les associations. Découvrez comment lire par lots les associations avec l'API des associations.

Pour le point de terminaison de lecture par lot, vous pouvez également utiliser le paramètre idProperty facultatif pour récupérer les transactions en fonction d'une propriété d'identifiant unique personnalisée. Par défaut, les valeurs d'identifiant dans la demande font référence à l'ID de fiche d'informations (hs_object_id), de sorte que le paramètre idProperty n'est pas requis lors de la récupération par ID de fiche d'informations. Pour utiliser une propriété de valeur unique personnalisée pour récupérer des transactions, vous devez inclure le paramètre idProperty.

Par exemple, pour récupérer un lot de transactions, votre demande peut ressembler à ce qui suit :

///Example request body with record ID { "properties": [ "dealname", "dealstage", "pipeline" ], "inputs": [ { "id": "7891023" }, { "id": "987654" } ] }
///Example request body with a unique value property { "properties": [ "dealname", "dealstage", "pipeline" ], "idProperty": "uniqueordernumber", "inputs": [ { "id": "0001111" }, { "id": "0001112" } ] }

Pour récupérer des transactions avec des valeurs actuelles et historiques pour une propriété, votre demande pourrait ressembler à :

///Example request body with record ID (current and historical values) { "propertiesWithHistory": [ "dealstage" ], "inputs": [ { "id": "7891023" }, { "id": "987654" } ] }

Mettre à jour des transactions

Vous pouvez mettre à jour des transactions individuellement ou par lots. Pour les transactions existantes, l'ID de transaction est une valeur unique que vous pouvez utiliser pour mettre à jour la transaction via l'API.

Pour mettre à jour une transaction individuelle avec son ID de transaction, effectuez une demande PATCH à /crm/v3/objects/deals/{dealId} et incluez les données que vous souhaitez mettre à jour.

Associer des transactions existantes à des fiches d'informations ou activités

Pour associer une transaction à d'autres fiches d'informations de CRM ou à une activité, effectuez une demande PUT à /crm/v3/objects/deals/{dealId}/associations/{toObjectType}/{toObjectId}/{associationTypeId}.

Pour récupérer la valeur associationTypeId, reportez-vous à cette liste de valeurs par défaut ou effectuez une demande GET à/crm/v4/associations/{fromObjectType}/{toObjectType}/labels.

Découvrez-en davantage sur l'association de fiches d'informations avec l'API des associations.

Supprimer une association

Pour supprimer une association entre une transaction et une fiche d'informations ou une activité, effectuez une demande DELETE à l'URL suivante : /crm/v3/objects/deals/{dealId}/associations/{toObjectType}/{toObjectId}/{associationTypeId}.

Épingler une activité à une fiche d'informations de transaction

Vous pouvez épingler une activité à une fiche d'informations de transaction via l'API en incluant le champ hs_pinned_engagement_id dans votre demande. Dans le champ, incluez l'ID de l'activité à épingler, qui peut être récupéré via les API d'engagement. Vous pouvez épingler une activité par fiche d'informations, et l'activité doit déjà être associée à la transaction avant l'épinglage.

Pour définir ou mettre à jour l'activité épinglée d'une transaction, votre demande peut ressembler à :

///Example request body PATCH /crm/v3/objects/deals/{dealId} { "properties": { "hs_pinned_engagement_id": 123456789 } }

Vous pouvez également créer une transaction, l'associer à une activité existante et épingler l'activité dans la même demande. Par exemple :

///Example request body POST /crm/v3/objects/deals { "properties": { "dealname": "New deal", "pipelines": "default", "dealstage": "contractsent", "hs_pinned_engagement_id": 123456789 }, "associations": [ { "to": { "id": 123456789 }, "types": [ { "associationCategory": "HUBSPOT_DEFINED", "associationTypeId": 213 }] }] }

Supprimer des transactions

Vous pouvez supprimer des transactions individuellement ou par lots, ce qui placera la transaction dans la corbeille dans HubSpot. Vous pourrez ensuite restaurer la transaction dans HubSpot.

Pour supprimer une transaction avec son ID, effectuez une demande DELETE à /crm/v3/objects/deals/{dealId}.

Pour en savoir plus sur la suppression de transactions par lots, cliquez sur l'onglet Points de terminaison en haut de cet article.


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é.