Skip to main content

Checkout Handler

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

Customer Portal

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

Webhooks

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

التثبيت

1

Install the package

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

Set up environment variables

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

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

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

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

يدعم Dodo Payments ثلاثة أنواع من تدفقات الدفع لدمج المدفوعات في موقعك، ويدعم هذا المهايئ جميع أنواع تدفقات الدفع.
  • روابط الدفع الثابتة: روابط قابلة للمشاركة على الفور لجمع المدفوعات بسرعة وبدون كود.
  • روابط الدفع الديناميكية: توليد روابط الدفع برمجيًا مع تفاصيل مخصصة باستخدام 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_ كبيانات وصفية.
إذا كان productId مفقودًا، يعيد المعالج استجابة 400. تؤدي معلمات الاستعلام غير الصالحة أيضًا إلى استجابة 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 بسلاسة في تطبيق Remix الخاص بك.

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 للأحداث المدعومة


مطالبة لـ LLM

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