TypeScript
SDK آمن من حيث الأنواع لـ Node.js، مع API قائم على الوعود وترقيم صفحات تلقائي.
Python
واجهة بأسلوب Python مع دعم async/await لـ Python 3.9 وما بعده.
Go
واجهة Go اصطلاحية مع دعم context وكتابة قوية.
PHP
SDK متوافق مع PSR-4 لـ PHP 8.1 وما بعده.
Java
SDK آمن للخيوط لـ Java 8 وما بعده، مع دعم Maven وGradle.
Kotlin
SDK لـ Kotlin مع coroutines وأمان القيم الفارغة.
C#
SDK آمن من ناحية الأنواع لـ .NET Standard 2.0+ مع API يعتمد على Task غير المتزامنة.
Ruby
SDK لـ Ruby يتبع اصطلاحات Ruby.
Rust
SDK يبدأ بالعمليات غير المتزامنة، مبني على Tokio وreqwest لـ Rust 1.75 وما بعده.
البدء السريع
1
Install the SDK
ثبّت SDK للغتك باستخدام مدير الحزم الخاص بها.للاطلاع على إحداثيات Maven والخيارات الخاصة بكل إصدار، راجع صفحة كل SDK.
- TypeScript
- Python
- Go
- PHP
- Java
- Kotlin
- C#
- Ruby
- Rust
2
Initialize the Client
اقرأ مفتاح API من متغير البيئة بالنسبة إلى Java وKotlin وC# وRuby، راجع إعداد العميل في صفحة كل SDK.
DODO_PAYMENTS_API_KEY. تتصل الأمثلة بوضع الاختبار؛ راجع وضع الاختبار مقابل الوضع المباشر.- TypeScript
- Python
- Go
- PHP
- Rust
3
Create a Checkout Session
أنشئ جلسة checkout وأعد توجيه العميل إلى للاطلاع على الاستدعاء نفسه باللغات الأخرى، وعلى روابط الدفع وwebhooks، راجع دليل التكامل.
checkout_url المُعاد.الميزات الرئيسية
تتضمن جميع SDKs الخاصة بالواجهة الخلفية ما يلي:- أمان الأنواع: كتابة قوية لضمان الأمان في وقت التجميع وتحسين دعم IDE.
- معالجة الأخطاء: أخطاء مكتوبة النوع تعرض HTTP status ونص الخطأ الذي أعادته API.
- المصادقة: مصادقة باستخدام مفتاح API، تتم قراءته من متغير بيئة.
- دعم العمليات غير المتزامنة: أنماط async/await الحديثة حيثما ينطبق ذلك.
- الترقيم التلقائي للصفحات: ترقيم تلقائي للصفحات في استجابات القوائم.
- أحداث الاستخدام: أساليب لإرسال أحداث الاستخدام للفوترة القائمة على الاستخدام.
- وضع الاختبار: إعداد يوجّه العميل إلى وضع الاختبار، بحيث لا يتم تحويل أموال حقيقية.
SDKs للـCheckout على الأجهزة المحمولة
للتطبيقات الأصلية على Android وiOS وReact Native وFlutter، استخدم SDKs الخاصة بـcheckout على الأجهزة المحمولة. فهي تفتح صفحة checkout المستضافة بواسطة Dodo في سطح المتصفح الحقيقي للمنصة (وليس WebView)، ولذلك يعمل Apple Pay وGoogle Pay بالطريقة نفسها التي يعملان بها على الويب المفتوح. تشترك SDKs الأربعة للأجهزة المحمولة في العقد نفسه: يعيدstart(...) قيمة CheckoutResult مكتوبة النوع، ولا يحتفظ أي منها بمفتاح API، ولا يستدعي API مباشرةً.
Android
SDK بلغة Kotlin يفتح Chrome Custom Tab. يتطلب
minSdk 23.iOS
SDK بلغة Swift يفتح SFSafariViewController. يتطلب iOS 16+.
React Native
Turbo Module يعمل فوق النواتين الأصليتين. يتطلب React Native 0.76+.
Flutter
قناة Pigeon تعمل فوق النواتين الأصليتين. تتطلب Flutter 3.44+.
Mobile Integration Guide
تدفق دفع محمول شامل، بدءًا من جلسة checkout في الواجهة الخلفية وحتى إعداد مخطط callback.
واجهة سطر الأوامر
تدير Dodo CLI المدفوعات والعملاء وwebhooks من الطرفية. وتتضمن TUI تفاعلية ومساعدًا للذكاء الاصطناعي وأدوات لاختبار webhooks.CLI
عميل طرفية تفاعلي مع مساعد للذكاء الاصطناعي واختبار webhooks.
محولات الأطر
تضيف المحولات معالجات checkout وCustomer Portal وwebhooks إلى إطارك.الأطر الموصى بها
Next.js
معالجات المسارات لـcheckout وCustomer Portal وwebhooks في App Router.
Better Auth
أنشئ عميلاً عند تسجيل مستخدم جديد، وأضف checkout وCustomer Portal إلى تدفق المصادقة لديك.
Supabase
مشروع بدء باستخدام Next.js وSupabase يتضمن المصادقة ومخطط قاعدة البيانات وwebhooks وصفحة للأسعار.
Convex
وظائف checkout وCustomer Portal وwebhook للواجهة الخلفية في Convex.
All Other Framework Adaptors
All Other Framework Adaptors
SvelteKit
Nuxt
Remix
Express
Fastify
Hono
Astro
TanStack
Bun
الترحيل من Node.js SDK
يحل TypeScript SDK محل Node.js SDK القديم. إذا كنت تستخدم Node.js SDK، فراجع دليل الترحيل لتحديث تكاملك.
الحصول على المساعدة
- Discord: انضم إلى خادم المجتمع للحصول على مساعدة فورية.
- البريد الإلكتروني: تواصل معنا عبر support@dodopayments.com.
- GitHub: افتح issue في مستودع SDK المعني.
- التوثيق: تفضل بزيارة مرجع API.
المساهمة
يقبل كل مستودع SDK المساهمات. تحتوي معظم المستودعات على ملفCONTRIBUTING.md يتضمن إرشادات للإبلاغ عن الأخطاء وطلب الميزات وإرسال pull requests وتشغيل الاختبارات واتفاقيات تنسيق التعليمات البرمجية.
تفضل بزيارة صفحات SDK الفردية للوصول إلى مستودعات GitHub وإرشادات المساهمة الخاصة بها.