Skip to main content
يفتح overlay checkout نافذة منبثقة فوق صفحتك. يُدخل العملاء تفاصيل الدفع الخاصة بهم في النافذة المنبثقة بينما تظل صفحتك ظاهرة في الخلفية. عند إغلاقهم للنافذة المنبثقة، تعود السيطرة إلى صفحتك. وعند إكمال الدفع، تتم إعادة توجيههم إلى return_url.
نافذة الدفع المنبثقة معروضة فوق صفحة منتج

Interactive Demo

شاهد overlay checkout أثناء العمل من خلال العرض التوضيحي المباشر الخاص بنا.

البدء السريع

ثبّت SDK، ثم هيّئه وافتح صفحة الدفع باستخدام عنوان checkout URL من create checkout session API:

التكامل خطوة بخطوة

1

Install the SDK

ثبّت الحزمة باستخدام npm أو yarn أو pnpm:
2

Initialize the SDK

استدعِ Initialize مرة واحدة عند تحميل تطبيقك، وعادةً ما يكون ذلك في المكوّن الرئيسي أو نقطة دخول التطبيق:
هيّئ SDK دائمًا قبل فتح صفحة الدفع. هيّئه مرة واحدة عند تحميل تطبيقك، وليس قبل كل محاولة دفع.
3

Create a Checkout Button

أنشئ مكوّنًا يفتح نافذة الدفع المنبثقة:
4

Add the Button to Your Page

استخدم مكوّن زر الدفع في تطبيقك:
5

Handle Redirects

أنشئ صفحات للتعامل مع عمليات إعادة التوجيه بعد الدفع:
6

Test Your Integration

  1. شغّل خادم التطوير:
  1. اختبر تدفق الدفع:
    • انقر على زر الدفع
    • تحقّق من ظهور النافذة المنبثقة
    • اختبر تدفق الدفع باستخدام بيانات الاختبار
    • تأكّد من عمل عمليات إعادة التوجيه بشكل صحيح
ينبغي أن ترى أحداث الدفع مسجّلة في وحدة تحكم المتصفح.
7

Go Live

عندما تصبح جاهزًا للإنتاج:
  1. غيّر الوضع إلى 'live':
  1. حدّث عناوين checkout URL لاستخدام جلسات الدفع المباشرة من الواجهة الخلفية
  2. اختبر التدفق الكامل في بيئة الإنتاج
  3. راقب الأحداث والأخطاء

مرجع API

التهيئة

استدعِ Initialize مرة واحدة لإعداد SDK:

فتح صفحة الدفع

افتح نافذة الدفع المنبثقة:

إغلاق صفحة الدفع

أغلق النافذة المنبثقة برمجيًا:

التحقّق من الحالة

تحقّق مما إذا كانت النافذة المنبثقة مفتوحة حاليًا:

الأحداث

استمع إلى أحداث الدفع عبر callback‏ onEvent المُمرَّر إلى Initialize:

تنفيذ CDN

للتكامل السريع دون خطوة build، حمّل SDK من CDN:

تخصيص السمة

خيار themeConfig من جهة العميل مهمل، وستتم إزالته في الإصدار الرئيسي التالي من Checkout SDK‏ (v2.0.0). يؤدي تمريره إلى تسجيل تحذير بشأن الإهمال في وحدة تحكم المتصفح. اضبط السمة عند إنشاء جلسة الدفع عبر API بدلًا من ذلك، باستخدام المعامل customization.theme_config — راجع تخصيص سمة Checkout — أو بصريًا من صفحة Design في لوحة المعلومات. تنطبق السمات المضبوطة على مستوى الجلسة بالتساوي على overlay وinline وhosted checkout.
يغطي هذا القسم إعداد السمة من جهة العميل باستخدام Checkout SDK، وهو إعداد مهمل. النهج الموصى به هو ضبط السمات من جهة الخادم عند إنشاء جلسة دفع عبر API باستخدام المعامل theme_config. راجع تخصيص سمة Checkout لمعرفة إعدادات مستوى API، أو استخدم صفحة Design في لوحة المعلومات لضبط السمات بصريًا مع معاينة مباشرة.
إذا كان لا بد من استخدام إعداد السمة من جهة العميل، فمرّر themeConfig في المعامل options:

خصائص السمة

جميع خصائص السمة المتاحة للوضعين الفاتح والداكن:

معالجة الأخطاء

طبّق دائمًا معالجة الأخطاء في callback‏ onEvent:
تعامل دائمًا مع الحدث checkout.error لتوفير تجربة مستخدم جيدة عند حدوث الأخطاء.

أفضل الممارسات

  1. التهيئة مرة واحدة: استدعِ Initialize مرة واحدة عند تحميل تطبيقك، وليس قبل كل عملية دفع
  2. معالجة الأخطاء: طبّق معالجة مناسبة للأخطاء في callback الخاص بالأحداث
  3. وضع الاختبار: استخدم وضع "test" أثناء التطوير، وانتقل إلى "live" فقط عند الاستعداد للإنتاج
  4. معالجة الأحداث: تعامل مع جميع الأحداث ذات الصلة لتوفير تجربة مستخدم متكاملة
  5. عناوين URL صالحة: استخدم دائمًا عناوين checkout URL صالحة من create checkout session API
  6. TypeScript: استخدم TypeScript لتحسين أمان الأنواع وتجربة المطور
  7. حالات التحميل: اعرض حالات التحميل أثناء فتح صفحة الدفع لتحسين UX
  8. إدارة المؤقت: عطّل المؤقت (showTimer: false) إذا كنت تريد التعامل مع انتهاء صلاحية الجلسة يدويًا

استكشاف الأخطاء وإصلاحها

الأسباب المحتملة:
  • لم تتم تهيئة SDK قبل استدعاء open()
  • عنوان checkout URL غير صالح
  • أخطاء JavaScript في وحدة التحكم
  • مشكلات في اتصال الشبكة
الحلول:
  • تحقّق من إجراء تهيئة SDK قبل فتح صفحة الدفع
  • تحقّق من وجود أخطاء في وحدة تحكم المتصفح
  • تأكّد من أن عنوان checkout URL صالح ومن create checkout session API
  • تحقّق من اتصال الشبكة
الأسباب المحتملة:
  • لم يتم إعداد معالج الأحداث بشكل صحيح
  • أخطاء JavaScript تمنع انتشار الأحداث
  • لم تتم تهيئة SDK بشكل صحيح
الحلول:
  • تأكّد من إعداد معالج الأحداث بشكل صحيح في Initialize()
  • تحقّق من وجود أخطاء JavaScript في وحدة تحكم المتصفح
  • تحقّق من اكتمال تهيئة SDK بنجاح
  • اختبر أولًا باستخدام معالج أحداث بسيط
الأسباب المحتملة:
  • تعارض CSS مع أنماط تطبيقك
  • لم تُطبَّق إعدادات السمة بشكل صحيح
  • مشكلات في التصميم المتجاوب
الحلول:
  • تحقّق من تعارضات CSS في أدوات مطوري المتصفح
  • تأكّد من صحة إعدادات السمة
  • اختبر على أحجام شاشات مختلفة
  • تأكّد من عدم وجود تعارضات في z-index مع النافذة المنبثقة

المحافظ الرقمية

للحصول على معلومات تفصيلية حول إعداد Google Pay والمحافظ الرقمية الأخرى، راجع صفحة المحافظ الرقمية.
لا يتوفر Apple Pay بعد في overlay checkout.

دعم المتصفحات

يدعم Checkout SDK الخاص بـ Dodo Payments ما يلي:
  • Chrome (أحدث إصدار)
  • Firefox (أحدث إصدار)
  • Safari (أحدث إصدار)
  • Edge (أحدث إصدار)
  • IE11+

مقارنة Overlay Checkout وInline Checkout

اختر نوع الدفع المناسب لحالة استخدامك:
استخدم overlay checkout لتحقيق تكامل أسرع مع إجراء تغييرات بسيطة على صفحاتك الحالية. استخدم inline checkout عندما تريد أقصى قدر من التحكم في تجربة الدفع والحفاظ على اتساق العلامة التجارية.

موارد ذات صلة

Inline Checkout

ضمّن صفحة الدفع مباشرةً في صفحتك للحصول على تجارب متكاملة بالكامل.

Checkout Sessions API

أنشئ جلسات دفع لتشغيل تجارب الدفع الخاصة بك.

Webhooks

تعامل مع أحداث الدفع من جهة الخادم باستخدام webhooks.

Integration Guide

دليل شامل لتكامل Dodo Payments.
لمزيد من المساعدة، تفضّل بزيارة مجتمع Discord أو تواصل مع فريق دعم المطورين لدينا.
آخر تعديل في ٢٦ سبتمبر ٢٠٢٦