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