Checkout Handler
قم بدمج صفحة دفع Dodo Payments في تطبيق Fastify الخاص بك.
Customer Portal
اسمح للعملاء بإدارة الاشتراكات والتفاصيل.
Webhooks
استقبل وعرّف أحداث webhook الخاصة بـ Dodo Payments.
التثبيت
1
Install the package
قم بتشغيل الأمر التالي في جذر المشروع الخاص بك:
2
Set up environment variables
أنشئ ملف
.env في جذر المشروع الخاص بك:أمثلة معالج المسار
تفترض جميع الأمثلة أنك تستخدم Fastify App Router.
- Checkout Handler
- Customer Portal Handler
- Webhook Handler
استخدم هذه المعالجة لدمج صفحة دفع Dodo Payments في تطبيق Fastify الخاص بك. تدعم تدفقات الدفع الثابتة (GET) والديناميكية (POST) وجلسات (POST).
معالج مسار الدفع
تدعم Dodo Payments ثلاثة أنواع من تدفقات الدفع لدمج المدفوعات في موقعك، ويدعم هذا الموصل جميع أنواع التدفقات.
- روابط الدفع الثابتة: روابط قابلة للمشاركة على الفور لجمع المدفوعات بسرعة وبدون كود.
- روابط الدفع الديناميكية: توليد روابط الدفع برمجيًا مع تفاصيل مخصصة باستخدام API أو SDKs.
- جلسات الدفع: إنشاء تجارب دفع آمنة وقابلة للتخصيص مع عربات منتجات مُعدة مسبقًا وتفاصيل العملاء.
Static Checkout (GET)
Static Checkout (GET)
Supported Query Parameters
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
اعرض محدد العملة.
integer
حدد مبلغ الدفع (مثل
1000 مقابل 10.00$).boolean
اعرض حقول الخصم.
string
أي معلمة استعلام تبدأ بـ
metadata_ ستمرير كبيانات وصفية.تنسيق الاستجابة
يرجع الدفع الثابت استجابة JSON مع عنوان URL للدفع:Dynamic Checkout (POST)
Dynamic Checkout (POST)
- أرسل المعلمات كجسم JSON في طلب POST.
- يدعم كلا من المدفوعات لمرة واحدة والمتكررة.
- للحصول على قائمة كاملة بحقول جسم POST المدعومة، راجع:
تنسيق الاستجابة
يرجع الدفع الديناميكي استجابة JSON مع عنوان URL للدفع:Checkout Sessions (POST)
Checkout Sessions (POST)
توفر جلسات الدفع تجربة دفع أكثر أمانًا مستضافة تتولى تدفق الدفع الكامل لكل من المشتريات لمرة واحدة والاشتراكات مع تحكم كامل بالتخصيص.راجع دليل تكامل جلسات الدفع لمزيد من التفاصيل وقائمة كاملة من الحقول المدعومة.
تنسيق الاستجابة
ترجع جلسات الدفع استجابة JSON مع عنوان URL للدفع:معالج مسار بوابة العملاء
يمكنك من خلال معالج مسار بوابة العملاء دمج بوابة عملاء مدفوعات دودي بسلاسة في تطبيق Fastify الخاص بك.معلمات الاستعلام
string
مطلوب
معرّف العميل لجلسة البوابة (مثال:
?customer_id=cus_123).boolean
إذا تم تعيينه على
true، يرسل بريدًا إلكترونيًا إلى العميل برابط البوابة.معالج مسار ويب هوك
- الطريقة: يتم دعم طلبات POST فقط. ترجع الطرق الأخرى 405.
- التحقق من التوقيع: يتحقق من توقيع الويب هوك باستخدام
webhookKey. يرجع 401 إذا فشل التحقق. - التحقق من الحمولة: يتم التحقق منها باستخدام Zod. يرجع 400 للحمولات غير الصحيحة.
- معالجة الأخطاء:
- 401: توقيع غير صالح
- 400: حمولة غير صالحة
- 500: خطأ داخلي أثناء التحقق
- توجيه الأحداث: يستدعي معالج الحدث المناسب بناءً على نوع الحمولة.