Skip to main content

Checkout Handler

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

Customer Portal

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

Webhooks

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

التثبيت

1

Install the package

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

Set up environment variables

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

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

تفترض جميع الأمثلة أنك تستخدم موجه تطبيق SvelteKit.
استخدم هذا المعالج لدمج صفحة الدفع الخاصة بـ Dodo Payments في تطبيق SvelteKit الخاص بك. يدعم تدفقات الدفع الثابتة (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 بسلاسة في تطبيق SvelteKit الخاص بك.

معلمات Query

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

معالج مسار Webhook

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

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


مطالبة لنموذج LLM

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