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

الميزات

  • واجهة مستخدم تفاعلية — قم بتشغيل dodo دون وجود أي وسيطات لفتح الواجهة التفاعلية بالكامل مع لوحة الأوامر، والتاريخ، والإشعارات الحية.
  • المساعد الذكي المدمج — اطرح الأسئلة أو قم بالإجراءات باللغة الإنجليزية العادية مع /ai. لا تتطلب إعدادًا إضافيًا، يعمل dodopayments-mcp محلياً.
  • آمن افتراضيًا — يتم تخزين مفاتيح API في مخزن سرية النظام (macOS Keychain، Windows Credential Vault، Linux libsecret). لا يوجد إعداد نص عادي على القرص.
  • تحديث تلقائي — تقوم CLI بالتحقق من الإصدارات الجديدة عند بدء التشغيل وتبلغك داخل التطبيق. قم بتشغيل /update للترقية في المكان.
  • أدوات Webhook — استمع إلى webhooks الحية أو قم بتشغيل الحمولة خارج الخط للتطوير المحلي.

التثبيت

قم بتثبيت CLI في سطر واحد على macOS أو Linux:
curl -fsSL https://dodopayments.com/install.sh | sh

التثبيت باستخدام npm أو Bun

إذا كان لديك بالفعل Node أو Bun، فالتثبيتات باستخدام مدير الحزم تسحب دائمًا الإصدار الأحدث:
npm install -g dodopayments-cli

التثبيت اليدوي (لا يلزم Node / Bun)

إذا كنت تفضل عدم توجيه سكريبت عن بعد إلى sh، قم بتحميل الملف الثنائي بنفسك.
1

Download the binary

قم بتحميل الملف الثنائي لمنصتك من GitHub Release الأحدث.
المنصةالملف الثنائي
macOS (Apple Silicon)dodo-cli-darwin-arm64
macOS (Intel)dodo-cli-darwin-x64
Linux (x86_64)dodo-cli-linux-x64
Linux (arm64)dodo-cli-linux-arm64
Windows (x86_64)dodo-cli-windows-x64.exe
2

Rename the binary to `dodo`

mv ./dodo-cli-* ./dodo && chmod +x ./dodo
3

Move it to a directory on your PATH

sudo mv ./dodo /usr/local/bin/
على Windows، يتطلب النقل إلى C:\Windows\System32 صلاحيات المسؤول.
4

(Optional) Verify the download

كل إصدار ينشر SHA256SUMS.txt. تحقق من تحميلك بواسطة:
shasum -a 256 -c SHA256SUMS.txt

المصادقة

قبل استخدام الأوامر المصادق عليها، قم بتسجيل الدخول باستخدام مفتاح API الخاص بك:
dodo login
أو، من داخل واجهة المستخدم:
/login
تدفق تسجيل الدخول سيقوم بـ:
  1. فتح متصفحك إلى صفحة مفاتيح API لـ Dodo Payments.
  2. يُطلب منك لصق مفتاح API الخاص بك.
  3. يطلب منك تحديد بيئة — وضع الاختبار أو الوضع المباشر.
  4. تخزين الاعتمادات في مخزن سرية النظام (Keychain على macOS، وCredential Vault على Windows، وlibsecret على Linux).
لأن الاعتمادات مخزنة في مخزن سرية النظام، قد يُطلب منك تقديم كلمة مرور الجهاز الخاصة بك لأول مرة تقرأ فيها CLI أو تكتب الاعتمادات. إذا كنت تُرقّي من إصدار سابق، فسيتم نقل أي مفتاح API نصي موجود إلى مخزن السرية وحذف الملف القديم تلقائيًا.

التبديل بين الأوضاع وتسجيل الخروج

يمكنك الاحتفاظ بمفتاح واحد مصادق عليه لـ وضع الاختبار والوضع المباشر في نفس الوقت. لمسح الاعتمادات:
dodo logout
يسمح لك تدفق تسجيل الخروج بالاختيار بين جميع الحسابات، وضع الاختبار، أو الوضع المباشر بشكل مستقل.

الاستخدام

يمكنك استخدام CLI في وضعين.

1. واجهة المستخدم التفاعلية (موصى بها)

قم بتشغيل dodo دون وجود أي وسيطات لبدء الواجهة التفاعلية الكاملة:
dodo
اكتب / لفتح لوحة الأوامر، أو ابدأ بالكتابة مباشرة — يتم إرسال أي شيء ليس أمرًا بشريون إلى المساعد الذكي.
الأمرالوصف
/helpعرض مرجع الأوامر
/updateالتحقق من وجود تحديث لـ CLI وتثبيته
/loginالمصادقة بمفتاح API
/logoutتسجيل الخروج من بيئة واحدة أو جميعها
/clearمسح شاشة TUI
/exitالخروج من TUI (أيضًا: اكتب exit، أو اضغط على Esc مرتين)

2. الأوامر الفرعية المباشرة

قم بتشغيل الأوامر مباشرة دون الدخول إلى TUI:
dodo <category> <sub-command> [args...]
على سبيل المثال:
dodo payments list 1
dodo customers create
dodo wh trigger
تظهر جداول المراجع أدناه كل أمر. في TUI، قم بتقديمها بـ /؛ في الوضع المباشر، أسقط /.

المساعد الذكاء الاصطناعي

استخدم اللغة الطبيعية لطرح الأسئلة أو اتخاذ الإجراءات. يستخدم المساعد dodopayments-mcp بشكل محلي — لا يتطلب إعدادًا إضافيًا أو تدفق OAuth، ولا يترك مرور الذكاء الاصطناعي جهازك إلا للتحدث مع موفر النموذج.
الأمرالوصف
/ai <query>اسأل المساعد الذكي سؤالًا أو قدم له تعليمًا
(أي نص ليس أمرًا بشريون)يتم إرساله إلى المساعد الذكي بشكل افتراضي أثناء تواجدك في TUI
أمثلة:
how much revenue did I make this week?
/ai create a new customer named Acme Inc.
/ai find my last failed payment
يحترم المساعد البيئة النشطة الخاصة بك (الاختبار / المباشر)، لذا فهو يعمل فقط على البيانات من البيئة التي سجلت فيها الدخول حاليًا.

هيكل المشروع

dodo init يقوم ببناء مسارات الفواتير لـ Dodo Payments مباشرة في مشروع موجود. يقوم بإنشاء ملفات الطريق النموذجية، يثبت حزمة @dodopayments/* المتوافقة، ويكتب متغيرات البيئة DODO_PAYMENTS_* بأمان إلى .env الخاصة بك (فقط يضيف المتغيرات غير الموجودة بالفعل). يعمل الأمر بدون تسجيل الدخول.
dodo init <framework>
السقالةالوصف
dodo init nextjsبناء مسارات فوترة لـ Next.js App Router (عملية الشراء، بوابة العملاء، ومعالجات webhooks) باستخدام @dodopayments/nextjs
dodo init expressبناء مسارات فوترة خادم Express باستخدام @dodopayments/express
dodo init better-authبناء تكوين ملحق Better-Auth باستخدام @dodopayments/better-auth
بالنسبة للسقالة Better-Auth، يمكنك تمرير قائمة ملحقات مفصولة بفواصل لتوليدها (الافتراضي لجميعها): checkout، portal، usage، webhooks.
# Scaffold every Better-Auth plugin (default)
dodo init better-auth

# Scaffold only specific plugins
dodo init better-auth checkout,portal
السقالة تكتشف تلقائيًا دليل src/ وتضبط مسارات المخرجات وفقًا لذلك، وتكتشف تلقائيًا مدير الحزم الخاص بك (bun، pnpm، yarn، أو npm) لتشغيل أمر التثبيت الصحيح.

مرجع الأوامر

المنتجات

إدارة كتالوج المنتجات الخاص بك.
الأمرالوصف
dodo products list <page>قائمة المنتجات
dodo products createافتح لوحة التحكم لإنشاء منتج
dodo products info <id>عرض التفاصيل لمنتج معين

المدفوعات

عرض معاملات الدفع.
الأمرالوصف
dodo payments list <page>قائمة المدفوعات
dodo payments info <id>الحصول على معلومات حول دفع معين

العملاء

إدارة قاعدة العملاء الخاصة بك.
الأمرالوصف
dodo customers list <page>قائمة العملاء
dodo customers createإنشاء عميل جديد
dodo customers update <id>تحديث عميل موجود

الخصومات

إدارة القسائم والخصومات.
الأمرالوصف
dodo discounts list <page>قائمة الخصومات
dodo discounts createإنشاء خصم جديد يعتمد على النسبة المئوية
dodo discounts delete <id>إزالة خصم بواسطة معرف

التراخيص

إدارة تراخيص البرامج.
الأمرالوصف
dodo licences list <page>قائمة التراخيص

الإضافات

إدارة الإضافات للمنتجات.
الأمرالوصف
dodo addons list <page>قائمة الإضافات
dodo addons createافتح لوحة التحكم لإنشاء إضافة
dodo addons info <id>عرض التفاصيل لإضافة معينة

الاستردادات

عرض معلومات الاسترداد.
الأمرالوصف
dodo refunds list <page>قائمة الاستردادات
dodo refunds info <id>عرض التفاصيل لاسترداد معين

الدفع

إنشاء جلسات دفع مستضاف.
الأمرالوصف
dodo checkout newإنشاء جلسة دفع تفاعلية مستضافة والحصول على رابط دفع

Webhooks

يتضمن CLI أداتين قويتين لاختبار webhooks أثناء التطوير: مستمع ينقل webhooks الاختبارية المباشرة إلى خادمك المحلي، و محفز يرسل تحميلات سعر وهمية إلى أي نقطة نهاية.
الأمرالوصف
dodo wh listenالاستماع للـ webhooks في الوقت الفعلي وتحويلها إلى خادم التطوير المحلي الخاص بك
dodo wh triggerحفز حدث webhook اختباراً تفاعلياً — حتى أثناء تسجيل الخروج

استمع للـ webhooks

حول webhooks من Dodo Payments مباشرة إلى خادم التطوير المحلي الخاص بك في الوقت الفعلي.
dodo wh listen
1

Enter your local endpoint URL

قدم عنوان URL المحلي حيث تريد تلقي webhooks (على سبيل المثال، http://localhost:3000/webhook).
2

Automatic setup

ينشئ CLI تلقائيًا نقطة نهاية webhook على حساب Dodo Payments الخاص بك إذا لم تكن موجودة بالفعل، ثم يفتح اتصال WebSocket لتلقي الأحداث في الوقت الفعلي.
3

Receive and forward

عند إطلاق حدث webhook (من دفعة اختبار، تغيير اشتراك، إلخ.)، يستقبله CLI، يسجل نوع الحدث، ويحوله الطلب الكامل مع الرؤوس والجسم إلى نقطة النهاية المحلية الخاصة بك. يتم تسجيل الرد من نقطة النهاية الخاصة بك وإرجاعه.
dodo wh listen يتطلب مفتاح API في وضع الاختبار. لا يتم دعم المفاتيح التفاعلية في وضع الاستماع.
المستمع يحافظ على رؤوس الـ webhook الأصلية (webhook-id، webhook-signature، webhook-timestamp) عند التحويل إلى نقطة النهاية المحلية الخاصة بك، حتى تتمكن من اختبار منطق التحقق من توقيعك.

تحفيز webhooks التجريبية

إرسال حمولات webhooks وهمية إلى أي نقطة نهاية لاختبار سريع دون الحاجة إلى إنشاء معاملات حقيقية.
dodo wh trigger
يوجهك تدفق /wh trigger خلال:
  1. إعداد عنوان URL لنقطة النهاية الإخراج
  2. اختيار حدث معين لتحفيزه من قائمة تفاعلية
dodo wh trigger لا يتطلب تسجيل الدخول. إنه يعمل كمولد حمولات webhook محلي/غير متصل بالشبكة.
الأحداث المحفزة غير موقعة. أثناء الاختبار، قم بتعطيل التحقق من توقيع الـ webhook في نقطة النهاية الخاصة بك — على سبيل المثال، استخدم unsafe_unwrap() بدلاً من unwrap() في معالج الـ webhook أثناء الاختبار فقط.

أحداث webhook المدعومة

الفئةالأحداث
الاشتراكactive، updated، on_hold، renewed، plan_changed، cancelled، failed، expired
الدفعsucceeded، failed، processing، cancelled
الاستردادsucceeded، failed
النزاعopened، expired، accepted، cancelled، challenged، won، lost
الترخيصcreated

متغيرات البيئة

المتغيرالوصف
DODO_WH_TEST_SERVER_URLتجاوز عنوان URL لخادم الـ webhook الافتراضي المستخدم بواسطة dodo wh listen

التحديثات

يتحقق CLI من وجود إصدار أحدث عند بدء التشغيل ويعرض إشعارًا في شريط الحالة عند توفره. للترقية:
/update
أو، أعد تشغيل المثبت للترقية مباشرة:
curl -fsSL https://dodopayments.com/install.sh | sh

الموارد

GitHub Repository

عرض كود المصدر والإصدارات

npm Package

عرض على سجل npm

الدعم

آخر تعديل في ٩ يونيو ٢٠٢٦