يوفر SDK للدفع عبر Dodo طريقة سلسة لدمج واجهة الدفع الخاصة بنا في تطبيق الويب الخاص بك. تم بناؤه باستخدام TypeScript ومعايير الويب الحديثة، ويقدم حلاً قويًا للتعامل مع المدفوعات مع معالجة الأحداث في الوقت الحقيقي وسمات قابلة للتخصيص.
قم بتثبيت SDK للدفع عبر Dodo باستخدام مدير الحزم المفضل لديك:
نسخ
npm install dodopayments-checkout
2
تهيئة SDK
قم بتهيئة SDK في تطبيقك، عادةً في المكون الرئيسي أو نقطة دخول التطبيق:
نسخ
import { DodoPayments } from "dodopayments-checkout";DodoPayments.Initialize({ mode: "test", // Change to 'live' for production displayType: "overlay", // Optional: defaults to 'overlay' for overlay checkout onEvent: (event) => { console.log("Checkout event:", event); // Handle different events switch (event.event_type) { case "checkout.opened": // Checkout overlay has been opened break; case "checkout.closed": // Checkout has been closed break; case "checkout.error": // Handle errors console.error("Checkout error:", event.data?.message); break; } },});
قم دائمًا بتهيئة SDK قبل محاولة فتح واجهة الدفع. يجب أن تتم التهيئة مرة واحدة عند تحميل تطبيقك.
عرض أو إخفاء مؤقت الدفع. الافتراضي هو true. عند تعطيله، ستتلقى حدث checkout.link_expired عند انتهاء الجلسة.
options.showSecurityBadge
boolean
لا
عرض أو إخفاء شارة الأمان. الافتراضي هو true.
options.manualRedirect
boolean
لا
عند التمكين، لن يتم إعادة توجيه الدفع تلقائيًا بعد الانتهاء. بدلاً من ذلك، ستتلقى أحداث checkout.status وcheckout.redirect_requested لمعالجة إعادة التوجيه بنفسك.
DodoPayments.Initialize({ onEvent: (event: CheckoutEvent) => { switch (event.event_type) { case "checkout.opened": // Checkout overlay has been opened break; case "checkout.payment_page_opened": // Payment page has been displayed break; case "checkout.customer_details_submitted": // Customer and billing details submitted break; case "checkout.closed": // Checkout has been closed break; case "checkout.redirect": // Checkout will perform a redirect break; case "checkout.error": // An error occurred console.error("Error:", event.data?.message); break; case "checkout.link_expired": // Checkout session has expired (only when showTimer is false) break; case "checkout.status": // Checkout status update (only when manualRedirect is enabled) const status = event.data?.message?.status; break; case "checkout.redirect_requested": // Redirect requested (only when manualRedirect is enabled) const redirectUrl = event.data?.message?.redirect_to; break; } }});
نوع الحدث
الوصف
checkout.opened
تم فتح واجهة الدفع
checkout.payment_page_opened
تم عرض صفحة الدفع
checkout.customer_details_submitted
تم تقديم تفاصيل العميل والفوترة
checkout.closed
تم إغلاق واجهة الدفع
checkout.redirect
ستقوم واجهة الدفع بإجراء إعادة توجيه
checkout.error
حدث خطأ أثناء الدفع
checkout.link_expired
تم إطلاقه عند انتهاء جلسة الدفع. يتم استلامه فقط عندما يتم تعيين showTimer إلى false.
checkout.status
تم إطلاقه عند تمكين manualRedirect. يحتوي على حالة الدفع (succeeded، failed، أو processing).
checkout.redirect_requested
تم إطلاقه عند تمكين manualRedirect. يحتوي على عنوان URL لإعادة توجيه العميل إليه.
يمكنك تخصيص مظهر الدفع عن طريق تمرير كائن themeConfig في معلمة options عند فتح الدفع. يدعم تكوين السمة كلا من الوضعين الفاتح والداكن، مما يتيح لك تخصيص الألوان، الحدود، النصوص، الأزرار، ونصف قطر الحدود.
يوفر SDK معلومات خطأ مفصلة من خلال نظام الأحداث. تأكد دائمًا من تنفيذ معالجة الأخطاء بشكل صحيح في رد النداء الخاص بك onEvent:
نسخ
DodoPayments.Initialize({ mode: "test", displayType: "overlay", onEvent: (event: CheckoutEvent) => { if (event.event_type === "checkout.error") { console.error("Checkout error:", event.data?.message); // Handle error appropriately // You may want to show a user-friendly error message // or retry the checkout process } if (event.event_type === "checkout.link_expired") { // Handle expired checkout session console.warn("Checkout session has expired"); } }});
تأكد دائمًا من معالجة حدث checkout.error لتوفير تجربة مستخدم جيدة عند حدوث أخطاء.
يسمح Apple Pay للعملاء بإكمال المدفوعات بسرعة وأمان باستخدام طرق الدفع المحفوظة لديهم. عند تمكينه، يمكن للعملاء فتح نافذة Apple Pay مباشرة من طبقة الدفع على الأجهزة المدعومة.
يدعم Apple Pay على iOS 17+، iPadOS 17+، وSafari 17+ على macOS.
لتمكين Apple Pay لمجالك في الإنتاج، اتبع الخطوات التالية:
1
قم بتنزيل ورفع ملف ارتباط مجال Apple Pay
قم بتنزيل ملف ارتباط مجال Apple Pay.قم بتحميل الملف إلى خادم الويب الخاص بك في /.well-known/apple-developer-merchantid-domain-association. على سبيل المثال، إذا كان موقعك هو example.com، اجعل الملف متاحًا في https://example.com/well-known/apple-developer-merchantid-domain-association.