المقدمة
قم بمزامنة بيانات الدفع الخاصة بك مباشرةً إلى HubSpot CRM. أنشئ جهات اتصال من المدفوعات الناجحة، وتتبع دورة حياة الاشتراك، وابنِ ملفات تعريف شاملة للعملاء - كل ذلك يتم تشغيله تلقائيًا بواسطة أحداث مدفوعات Dodo.
تتطلب هذه التكاملات الوصول كمسؤول في HubSpot لتكوين نطاقات OAuth وأذونات API.
البدء
افتح قسم Webhook
في لوحة معلومات مدفوعات Dodo، انتقل إلى Webhooks → + إضافة نقطة نهاية وقم بتوسيع قائمة التكاملات المنسدلة.
اختر HubSpot
اختر بطاقة تكامل HubSpot .
اتصل بـ HubSpot
انقر على الاتصال بـ HubSpot ووافق على نطاقات OAuth المطلوبة.
تكوين التحويل
قم بتحرير كود التحويل لربط بيانات الدفع بأشياء HubSpot CRM.
اختبر وأنشئ
اختبر باستخدام حمولات عينة وانقر على إنشاء لتفعيل المزامنة.
تم!
🎉 ستقوم أحداث الدفع الآن بإنشاء/تحديث السجلات تلقائيًا في HubSpot CRM الخاص بك.
أمثلة على كود التحويل
إنشاء جهة اتصال من الدفع
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
تحديث جهة الاتصال مع الاشتراك
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
إنشاء صفقة من الدفع
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
نصائح
استخدم مستكشف API الخاص بـ HubSpot لاختبار إنشاء الكائنات
قم بربط مبالغ الدفع بحقول العملة في HubSpot
قم بتضمين معرفات العملاء للتوافق الصحيح
قم بتعيين مراحل الصفقة المناسبة بناءً على حالة الدفع
استكشاف الأخطاء وإصلاحها
السجلات غير المنشأة في HubSpot
تحقق من أن نطاقات OAuth تشمل أذونات الكتابة
تحقق من وجود الخصائص المطلوبة في HubSpot
تأكد من أن البريد الإلكتروني للعميل صالح وفريد
راجع حدود معدل API في HubSpot
تحقق من أن هيكل JSON يتطابق مع تنسيق API الخاص بـ HubSpot
تحقق من تضمين جميع الخصائص المطلوبة
تأكد من أن أسماء الخصائص تتطابق تمامًا مع أسماء حقول HubSpot