Introduktion
Synkronisera dina betalningsdata direkt till HubSpot CRM. Skapa kontakter från framgångsrika betalningar, spåra prenumerationslivscykler och bygg omfattande kundprofiler—allt automatiskt utlösts av Dodo Payments-händelser.
Denna integration kräver administratörsbehörighet i HubSpot för att konfigurera OAuth-scopes och API-behörigheter.
Komma igång
Öppna Webhook-sektionen
I din Dodo Payments-instrumentpanel, gå till Webhooks → + Lägg till slutpunkt och expandera integrationsrullgardinsmenyn.
Välj HubSpot
Välj HubSpot integrationskortet.
Anslut HubSpot
Klicka på Anslut till HubSpot och auktorisera de nödvändiga OAuth-scopes.
Konfigurera transformation
Redigera transformationskoden för att mappa betalningsdata till HubSpot CRM-objekt.
Testa & Skapa
Testa med exempelpayloads och klicka på Skapa för att aktivera synkroniseringen.
Klart!
🎉 Betalningshändelser kommer nu automatiskt att skapa/uppdatera poster i din HubSpot CRM.
Skapa kontakt från betalning
function handler ( webhook ) {
if ( webhook . eventType === "payment.succeeded" ) {
const p = webhook . payload . data ;
webhook . url = "https://api.hubapi.com/crm/v3/objects/contacts" ;
webhook . payload = {
properties: {
email: p . customer . email ,
firstname: p . customer . name . split ( ' ' )[ 0 ] || '' ,
lastname: p . customer . name . split ( ' ' ). slice ( 1 ). join ( ' ' ) || '' ,
phone: p . customer . phone || '' ,
company: p . customer . company || '' ,
amount: ( p . total_amount / 100 ). toString (),
payment_method: p . payment_method || '' ,
currency: p . currency || 'USD'
}
};
}
return webhook ;
}
See all 19 lines
Uppdatera kontakt med prenumeration
function handler ( webhook ) {
if ( webhook . eventType === "subscription.active" ) {
const s = webhook . payload . data ;
webhook . url = `https://api.hubapi.com/crm/v3/objects/contacts/ ${ s . customer . customer_id } ` ;
webhook . method = "PATCH" ;
webhook . payload = {
properties: {
subscription_status: "active" ,
subscription_amount: ( s . recurring_pre_tax_amount / 100 ). toString (),
subscription_frequency: s . payment_frequency_interval ,
next_billing_date: s . next_billing_date ,
product_id: s . product_id
}
};
}
return webhook ;
}
See all 17 lines
Skapa affär från betalning
function handler ( webhook ) {
if ( webhook . eventType === "payment.succeeded" ) {
const p = webhook . payload . data ;
webhook . url = "https://api.hubapi.com/crm/v3/objects/deals" ;
webhook . payload = {
properties: {
dealname: `Payment - ${ p . customer . email } ` ,
amount: ( p . total_amount / 100 ). toString (),
dealstage: "closedwon" ,
closedate: new Date (). toISOString (),
hs_currency: p . currency || "USD"
},
associations: [
{
to: {
id: p . customer . customer_id
},
types: [
{
associationCategory: "HUBSPOT_DEFINED" ,
associationTypeId: 3
}
]
}
]
};
}
return webhook ;
}
See all 29 lines
Tips
Använd HubSpots API-explorer för att testa objektsskapande
Mappa betalningsbelopp till HubSpot-valutafält
Inkludera kund-ID:n för korrekta kopplingar
Ställ in lämpliga affärssteg baserat på betalningsstatus
Felsökning
Poster skapades inte i HubSpot
Verifiera att OAuth-scopes inkluderar skrivbehörigheter
Kontrollera att nödvändiga HubSpot-egenskaper finns
Se till att kundens e-postadress är giltig och unik
Granska HubSpot API-hastighetsgränser