المنتجات هي الأساس في Dodo Payments. سواء كنت تبيع تنزيلًا لمرة واحدة، أو اشتراكًا متكررًا، أو وصولًا قائمًا على الاستخدام، فإنك تبدأ بإنشاء منتج. يحدد كل منتج كيفية تسعيره وعرضه عند الدفع وتنفيذه بعد الشراء.
One‑Time
حصّل الرسوم مرة واحدة مقابل الوصول مدى الحياة أو مقابل منتج واحد.
Subscriptions
أصدر الفواتير وفق جدول زمني مع فترات تجريبية وحساب نسبي وإضافات.
Usage‑Based
قس الاستهلاك وأصدر الفواتير وفق الاستخدام الفعلي.
إنشاء منتج
يمكنك إنشاء المنتجات من لوحة المعلومات أو عبر API. اختر نموذج التسعير مسبقًا: One‑Time أو Subscription أو Usage‑Based، ثم اضبط التفاصيل. لا يمكن تغيير نموذج التسعير لاحقًا؛ أنشئ منتجًا جديدًا إذا كنت بحاجة إلى نموذج مختلف.1
Name & description
أدخل عنوانًا واضحًا ووصفًا موجزًا يركز على القيمة. يدعم الوصف Markdown.

2
Pricing model & price
اختر نموذج التسعير:
- One‑Time: سعر ثابت يُدفع مرة واحدة.
- Subscription: سعر متكرر بفاصل زمني وفترة تجريبية اختيارية.
- Usage‑Based: سعر يُحتسب بناءً على الأحداث المقاسة.
- السعر: المبلغ الأساسي والعملة. يمكنك تحديد السعر الأساسي بأي عملة يمكن لـ Dodo Payments تحصيل الرسوم بها، وليس USD فقط. استخدم محدد العملات القابل للبحث للعثور على عملة؛ حيث تُثبّت USD وGBP وEUR وINR في أعلى القائمة.
- الخصم (%): خصم اختياري مضمن يظهر في صفحة الدفع والفواتير.
- بالنسبة إلى الاشتراكات، حدّد التكرار كل (مثل شهر واحد أو سنة واحدة)، وأيام الفترة التجريبية، ومبلغ الفترة التجريبية الاختياري من أجل فترة تجريبية مدفوعة. يجب ألا يقل سعر الاشتراك عن $1 (أو ما يعادله بالعملة التي اخترتها)؛ ولا تُدعم المبالغ الأقل من هذا الحد الأدنى، ولن يعمل الاشتراك.
يستمر تحصيل الرسوم من العملاء خارج عملتك الأساسية من خلال Adaptive Currency، لذا يمكنك إنشاء الأسعار بالعملة الأنسب لسوقك من دون تغيير طريقة تحصيل الرسوم من المشترين.
3
Product media
ارفع الصور لعرض المنتج في صفحة الدفع والفواتير. تُدعم صيغ PNG/JPG/WebP حتى 3 MB. يمكنك إعادة ترتيب الصور أو استبدالها في أي وقت.
4
Automated entitlements (Under Advanced Settings)
أرفق عملية تنفيذ يتم تفعيلها تلقائياً بعد الدفع:
- مفاتيح الترخيص: إصدار مفاتيح فريدة والتحقق منها
- تنزيلات الملفات: منح وصول آمن إلى الملفات
- مخصص: تشغيل منطق الاستحقاقات الخاص بك عبر webhooks
الخيارات المتعددة وخيارات التسعير
بدلاً من إنشاء خيارات متعددة ضمن منتج واحد، أنشئ منتجات منفصلة لكل خيار تسعير (مثل شهري وسنوي). ثم اجمعها في مجموعة منتجات لعرض جميع الخيارات في صفحة دفع واحدة وتمكين تبديل الخطة في Customer Portal.
لماذا هذا الأسلوب؟
- نماذج تسعير واضحة: لكل منتج نموذج تسعير واحد ومحدد بوضوح (لمرة واحدة أو اشتراك أو قائم على الاستخدام)
- واجهات API يمكن التنبؤ بها: عمليات تكامل أبسط من دون منطق خيارات متعددة متداخل
- إعداد تقارير أسهل: تتبّع الإيرادات والمقاييس لكل منتج من دون تجميع الخيارات المتعددة
- صفحة دفع مرنة: عرض منتجات متعددة جنباً إلى جنب، مما يتيح للعملاء المقارنة والاختيار
آلية عمل مجموعات المنتجات
- إنشاء المنتجات: أنشئ منتجات فردية لكل خطة (مثل Starter Monthly وStarter Annual وPro Monthly وPro Annual)
- التجميع في مجموعة: أضف المنتجات ذات الصلة إلى مجموعة منتجات
- صفحة دفع موحّدة: يرى العملاء جميع الخيارات في صفحة دفع واحدة ويختارون الخطة المفضلة لديهم
- تبديل الخطة: يمكن للعملاء الترقية أو الرجوع إلى إصدار أدنى بين المنتجات الموجودة في المجموعة نفسها عبر Customer Portal
Product Collections
اجمع المنتجات ذات الصلة معاً لتوفير تجارب دفع موحّدة ومسارات سلسة للترقية والرجوع إلى إصدار أدنى.
إدارة المنتجات
يمكنك إدارة المنتجات من خلال لوحة المعلومات أو برمجياً عبر API. يوفر API تحكماً كاملاً في إنشاء المنتجات وتحديثها واستردادها ورفع الصور وأرشفتها.الإدارة من خلال لوحة المعلومات
- التحديث: عدّل الاسم والوصف والصور والسعر والحقول والمزايا في أي وقت (نموذج التسعير غير قابل للتغيير).
- الأرشفة: أخفِ المنتج من عمليات الشراء الجديدة من دون التأثير في العملاء الحاليين. ويمكنك إلغاء أرشفته لاحقاً.
- المسودات: يُحفظ المنتج قيد التنفيذ كمسودة، بحيث يمكنك العودة إليه لاحقاً. تُحفظ المسودات بشكل منفصل في وضعي الاختبار والإنتاج، لذلك لا تنتقل المنتجات غير المكتملة في أحد الوضعين إلى الوضع الآخر. استخدم مسح المسودة للتخلص منها والبدء من جديد.
الإدارة عبر API
تتيح لك التعليمات التالية إنشاء المنتجات وتحديثها وإدارتها واستردادها، بما في ذلك رفع الصور.Creating a Product
Creating a Product
يمكن أن يكون المنتج عنصراً يُشترى لمرة واحدة أو خدمة قائمة على الاشتراك. لإنشاء منتج جديد، أرسل طلب
POST إلى نقطة النهاية /products مع تفاصيل مثل الاسم والوصف والسعر والعملة وما إذا كان المنتج متكرراً.بالنسبة إلى المنتجات المتكررة، عيّن الكائن price إلى سعر متكرر (type: recurring_price)، وحدّد payment_frequency_interval وsubscription_period_interval (Day أو Week أو Month أو Year) مع الأعداد المقابلة لها.Create Product API
اطّلع على بنية الطلب والاستجابة التفصيلية في وثائق Create Product API.
Updating a Product
Updating a Product
لتعديل منتج موجود، أرسل طلب
PATCH إلى نقطة النهاية /products/{product_id}. يمكنك تحديث خصائص مثل الاسم والسعر والوصف مع إبقاء التفاصيل الأخرى دون تغيير.تأكد من أن product_id في نقطة النهاية يطابق منتجاً موجوداً.Update Product API
اطّلع على بنية الطلب والاستجابة التفصيلية في وثائق Update Product API.
Retrieving Products
Retrieving Products
يمكنك جلب قائمة بالمنتجات المخزنة في حسابك باستخدام طلب
GET إلى نقطة النهاية /products. يتيح لك ذلك استرداد تفاصيل المنتجات، بما في ذلك المنتجات النشطة والمؤرشفة.Retrieve Products API
اطّلع على بنية الطلب والاستجابة التفصيلية في وثائق Retrieve Products API.
Uploading Product Images
Uploading Product Images
يمكنك ربط صورة بمنتج من خلال رفعها إلى AWS S3 باستخدام عنوان URL موقّع مسبقاً يوفره API. أولاً، اطلب عنوان URL لرفع الصورة من نقطة النهاية
/products/{product_id}/images، ثم استخدم عنوان URL المتوفر لرفع الصورة خلال 60 ثانية.بعد استلام عنوان URL الموقّع مسبقاً من API، ارفع الصورة باستخدام طريقة PUT. يضمن ذلك وصولاً آمناً ومؤقتاً إلى AWS S3 لرفع الصورة.المكتبات المدعومة للرفع إلى S3:- Node.js:
axios،node-fetch - Python:
requests،boto3 - Go:
net/http - PHP:
GuzzleHttp - Ruby:
rest-client
200 OK، مما يشير إلى أنه تم تخزين الصورة بنجاح.Upload Product Image API
اطّلع على بنية الطلب والاستجابة التفصيلية في وثائق Upload Product Image API.
Archiving a Product
Archiving a Product
إذا لم تعد ترغب في عرض منتج أو استخدامه، يمكنك أرشفته باستخدام طلب
DELETE إلى نقطة النهاية /products/{id}. يخفي هذا الإجراء المنتج، لكنه لا يحذفه نهائياً.Archive Product API
اطّلع على بنية الطلب والاستجابة التفصيلية في وثائق Archive Product API.
Unarchiving a Product
Unarchiving a Product
إذا كنت بحاجة إلى استعادة منتج مؤرشف، فأرسل طلب
POST إلى نقطة النهاية /products/{product_id}/unarchive. سيؤدي ذلك إلى إعادة تفعيل المنتج وجعله متاحاً للاستخدام مرة أخرى.Unarchive Product API
اطّلع على بنية الطلب والاستجابة التفصيلية في وثائق Unarchive Product API.
Checkout & fulfillment
Checkout & fulfillment
أنشئ تدفقات الدفع أو الاشتراك من المنتجات، ونفّذ عمليات التنفيذ تلقائياً عبر المزايا وwebhooks.
Checkout Sessions
أنشئ جلسات دفع لعمليات الشراء لمرة واحدة أو القائمة على الاشتراك.
Payment Webhooks
استجب لأحداث دورة حياة الدفع.
Subscription Webhooks
تعامل مع أحداث إنشاء الاشتراك وتجديده وإلغائه.
أفضل الممارسات
- ابدأ بالوضوح: أنشئ منتجات منفصلة لكل خيار تسعير (شهري مقابل سنوي)
- استخدم الفترات التجريبية بعناية: اربط الفترات التجريبية بعملية الإعداد الأولي لتعزيز التفعيل
- أتمت تنفيذ الطلبات: استخدم المزايا وwebhooks للتسليم فوراً
- أضف وسوماً باستخدام metadata: خزّن معرّفات نظامك لأغراض المطابقة
أنت مستعد لإنشاء المنتجات والبدء في البيع — لمرة واحدة أو بشكل متكرر أو حسب الاستخدام.
ذات صلة
Product Analytics
تتبّع الإيرادات والعملاء والاحتفاظ والمشتركين وMRR لكل منتج على حدة.
Localized Pricing
حدّد أسعاراً ثابتة لكل عملة أو بلد على المنتج بدلاً من الاعتماد على أسعار الصرف المباشرة.