Skip to main content

Checkout Handler

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

Customer Portal

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

Webhooks

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

التثبيت

1

Install the package

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

Set up environment variables

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

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

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

معالج مسار صفحة الدفع

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

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

string
مطلوب
معرّف المنتج (مثلًا، ?productId=pdt_nZuwz45WAs64n3l07zpQR).
integer
كمية المنتج.
string
الاسم الكامل للعميل.
string
الاسم الأول للعميل.
string
اسم العائلة للعميل.
string
عنوان البريد الإلكتروني للعميل.
string
بلد العميل.
string
سطر عنوان العميل.
string
مدينة العميل.
string
ولاية/مقاطعة العميل.
string
الرمز البريدي للعميل.
boolean
تعطيل حقل الاسم الكامل.
boolean
تعطيل حقل الاسم الأول.
boolean
تعطيل حقل اسم العائلة.
boolean
تعطيل حقل البريد الإلكتروني.
boolean
تعطيل حقل البلد.
boolean
تعطيل حقل سطر العنوان.
boolean
تعطيل حقل المدينة.
boolean
تعطيل حقل الولاية.
boolean
تعطيل حقل الرمز البريدي.
string
تحديد عملة الدفع (مثلًا، USD).
boolean
إظهار محدد العملة.
number
يثبّت المبلغ المُحصّل، بوحدات العملة الرئيسية (مثلًا، 12.5 مقابل 12.50 دولارًا). للمنتجات من نوع Pay What You Want فقط، ويتم تجاهله إذا كان أقل من الحد الأدنى لسعر المنتج.
boolean
إظهار حقول الخصم.
string
سيتم تمرير أي معامل استعلام يبدأ بـ metadata_ كـ metadata.
إذا كان productId مفقودًا، يُرجع المعالج استجابة 400. كما تؤدي Query Parameters غير الصالحة إلى استجابة 400.

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

يعيد الدفع الثابت استجابة JSON تحتوي على عنوان URL لصفحة الدفع:
يعمل Dynamic Checkout كوسيط لنقطتي النهاية المهجورتين POST /payments وPOST /subscriptions. ويستمر في العمل مع عمليات التكامل الحالية، لكن ينبغي لعمليات التكامل الجديدة استخدام Checkout Sessions أدناه.

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

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

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

تعيد Checkout Sessions استجابة JSON تحتوي على عنوان URL الخاص بصفحة الدفع:

معالج مسار Customer Portal

يتيح لك معالج مسار Customer Portal دمج بوابة عملاء Dodo Payments بسلاسة في تطبيق Tanstack الخاص بك.

Query Parameters

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

معالج مسار Webhook

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

معالجات أحداث Webhook المدعومة


Prompt لنموذج LLM

آخر تعديل في ٢١ أغسطس ٢٠٢٦