Skip to main content

Checkout API Route

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

Customer Portal API Route

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

Webhooks API Route

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

نظرة عامة

يشرح هذا الدليل كيفية دمج Dodo Payments في تطبيق Nuxt لديك باستخدام وحدة Nuxt الرسمية. ستتعلّم كيفية إعداد مسارات API الخاصة بصفحة الدفع وبوابة العملاء وwebhooks، وكيفية إدارة متغيرات البيئة بأمان.

التثبيت

1

Install the Nuxt module

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

Register the module in nuxt.config.ts

أضف @dodopayments/nuxt إلى مصفوفة modules واضبط إعداداتها:
nuxt.config.ts
لا تلتزم بملف .env أو الأسرار في نظام التحكم بالإصدارات.

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

تتم معالجة جميع عمليات تكامل Dodo Payments في Nuxt عبر مسارات الخادم الموجودة في المجلد server/routes/api/.
استخدم هذا المعالج لدمج صفحة الدفع الخاصة بـ Dodo Payments في تطبيق Nuxt لديك. ويدعم تدفقات الدفع الثابتة (GET) والديناميكية (POST) وتدفقات الجلسات (POST).
إذا كان productId مفقودًا أو غير صالح، يعرض المعالج استجابة 400.

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

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

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

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
سيتم تمرير أي معلمة Query تبدأ بـ 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 بسلاسة في تطبيق Nuxt الخاص بك.

Query Parameters

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

معالج مسار Webhook

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

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


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

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