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

Checkout Handler

قم بدمج عملية الدفع عبر Dodo Payments مع تدفقات ثابتة وديناميكية وجلسة.

Customer Portal

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

Webhooks

استلم وعيّن معالجة أحداث ويب هوك الخاصة بـ Dodo Payments.

التثبيت

1

Install the package

نفّذ الأمر التالي في جذر مشروعك:
2

Set up environment variables

Create a .env file in your project root:
لا تُرسل ملف .env أو الأسرار إلى نظام التحكم في الإصدارات.

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

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

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

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

المعلمات المدعومة في الاستعلام

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 للدفع:

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

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

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

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

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

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

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


موجه لـ LLM

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