الانتقال إلى المحتوى الرئيسي

Checkout Handler

قم بدمج صفحة دفع Dodo Payments في تطبيق Fastify الخاص بك.

Customer Portal

اسمح للعملاء بإدارة الاشتراكات والتفاصيل.

Webhooks

استقبل وعرّف أحداث webhook الخاصة بـ Dodo Payments.

التثبيت

1

Install the package

قم بتشغيل الأمر التالي في جذر المشروع الخاص بك:
2

Set up environment variables

أنشئ ملف .env في جذر المشروع الخاص بك:
لا تقم بتضمين ملف .env الخاص بك أو الأسرار في نظام التحكم بالإصدارات.

أمثلة معالج المسار

تفترض جميع الأمثلة أنك تستخدم Fastify App Router.
استخدم هذه المعالجة لدمج صفحة دفع Dodo Payments في تطبيق Fastify الخاص بك. تدعم تدفقات الدفع الثابتة (GET) والديناميكية (POST) وجلسات (POST).

معالج مسار الدفع

تدعم Dodo Payments ثلاثة أنواع من تدفقات الدفع لدمج المدفوعات في موقعك، ويدعم هذا الموصل جميع أنواع التدفقات.
  • روابط الدفع الثابتة: روابط قابلة للمشاركة على الفور لجمع المدفوعات بسرعة وبدون كود.
  • روابط الدفع الديناميكية: توليد روابط الدفع برمجيًا مع تفاصيل مخصصة باستخدام API أو SDKs.
  • جلسات الدفع: إنشاء تجارب دفع آمنة وقابلة للتخصيص مع عربات منتجات مُعدة مسبقًا وتفاصيل العملاء.

Supported Query Parameters

productId
string
مطلوب
معرّف المنتج (مثال: ?productId=pdt_nZuwz45WAs64n3l07zpQR).
quantity
integer
كمية المنتج.
fullName
string
الاسم الكامل للعميل.
firstName
string
الاسم الأول للعميل.
lastName
string
اسم العائلة للعميل.
email
string
عنوان البريد الإلكتروني للعميل.
country
string
بلد العميل.
addressLine
string
سطر عنوان العميل.
city
string
مدينة العميل.
state
string
الولاية/المقاطعة الخاصة بالعميل.
zipCode
string
الرمز البريدي/رمز البريد للعميل.
disableFullName
boolean
عطِّل حقل الاسم الكامل.
disableFirstName
boolean
عطِّل حقل الاسم الأول.
disableLastName
boolean
عطِّل حقل الاسم الأخير.
disableEmail
boolean
عطِّل حقل البريد الإلكتروني.
disableCountry
boolean
عطِّل حقل البلد.
disableAddressLine
boolean
عطِّل حقل سطر العنوان.
disableCity
boolean
عطِّل حقل المدينة.
disableState
boolean
عطِّل حقل الولاية.
disableZipCode
boolean
عطِّل حقل الرمز البريدي.
paymentCurrency
string
حدد عملة الدفع (مثل USD).
showCurrencySelector
boolean
اعرض محدد العملة.
paymentAmount
integer
حدد مبلغ الدفع (مثل 1000 مقابل 10.00$).
showDiscounts
boolean
اعرض حقول الخصم.
metadata_*
string
أي معلمة استعلام تبدأ بـ metadata_ ستمرير كبيانات وصفية.
إذا كان productId مفقودًا، تعيد المعالجة استجابة 400. تؤدي معلمات الاستعلام غير الصالحة أيضًا إلى استجابة 400.

تنسيق الاستجابة

يرجع الدفع الثابت استجابة JSON مع عنوان URL للدفع:

تنسيق الاستجابة

يرجع الدفع الديناميكي استجابة JSON مع عنوان URL للدفع:
توفر جلسات الدفع تجربة دفع أكثر أمانًا مستضافة تتولى تدفق الدفع الكامل لكل من المشتريات لمرة واحدة والاشتراكات مع تحكم كامل بالتخصيص.راجع دليل تكامل جلسات الدفع لمزيد من التفاصيل وقائمة كاملة من الحقول المدعومة.

تنسيق الاستجابة

ترجع جلسات الدفع استجابة JSON مع عنوان URL للدفع:

معالج مسار بوابة العملاء

يمكنك من خلال معالج مسار بوابة العملاء دمج بوابة عملاء مدفوعات دودي بسلاسة في تطبيق Fastify الخاص بك.

معلمات الاستعلام

customer_id
string
مطلوب
معرّف العميل لجلسة البوابة (مثال: ?customer_id=cus_123).
send_email
boolean
إذا تم تعيينه على true، يرسل بريدًا إلكترونيًا إلى العميل برابط البوابة.
تعيد 400 إذا كان customer_id مفقودًا.

معالج مسار ويب هوك

  • الطريقة: يتم دعم طلبات POST فقط. ترجع الطرق الأخرى 405.
  • التحقق من التوقيع: يتحقق من توقيع الويب هوك باستخدام webhookKey. يرجع 401 إذا فشل التحقق.
  • التحقق من الحمولة: يتم التحقق منها باستخدام Zod. يرجع 400 للحمولات غير الصحيحة.
  • معالجة الأخطاء:
    • 401: توقيع غير صالح
    • 400: حمولة غير صالحة
    • 500: خطأ داخلي أثناء التحقق
  • توجيه الأحداث: يستدعي معالج الحدث المناسب بناءً على نوع الحمولة.

معالجات أحداث الويب هوك المدعومة


موجه لـ LLM

آخر تعديل في ٢٢ مايو ٢٠٢٦