सुविधाएँ
- Interactive TUI: बिना arguments के
dodoचलाकर command palette, history और live notifications वाले interactive interface को खोलें। - Built-in AI assistant:
/aiके साथ सामान्य English में प्रश्न पूछें या actions लें। Assistant स्थानीय रूप सेdodopayments-mcpपर चलता है और इसके लिए किसी अतिरिक्त setup की आवश्यकता नहीं है। - Encrypted credentials: API keys को
~/.dodopayments/config.jsonमें संग्रहीत किया जाता है और AES-256-GCM से encrypt किया जाता है। Encryption key आपकी machine से derive की जाती है। कोई भी plaintext credentials disk पर संग्रहीत नहीं होते। - Auto update: CLI startup पर नए versions की जाँच करता है और TUI में सूचना देता है। npm और Bun installs के लिए, वहीं upgrade करने हेतु
/updateचलाएँ। - Webhook tooling: Test Mode webhooks को अपने local server पर forward करें या mock webhook payloads को offline भेजें।
- Scaffolding:
dodo initके साथ Next.js, Express और Better Auth projects में billing routes जोड़ें।
Installation
macOS या Linux पर install script के साथ नवीनतम release binary install करें:dodo को /usr/local/bin, ~/.local/bin और ~/bin में से पहली writable directory में install करता है, या यदि इनमें से कोई भी writable न हो तो ~/.local/bin में install करता है। किसी specific release को install करने के लिए DODO_VERSION environment variable को उसके tag पर set करें। Directory चुनने के लिए DODO_INSTALL_DIR set करें।
NPM या Bun के साथ Install करें
यदि आपके पास Node.js या Bun है, तोdodopayments-cli package को globally install करें। Package manager installs नवीनतम published version प्राप्त करते हैं:
dodo login जैसे direct subcommands Node.js 18 या उसके बाद के versions पर चलते हैं। Package manager के माध्यम से install करने पर interactive TUI के लिए Bun भी आवश्यक है। Release binaries के लिए किसी runtime की आवश्यकता नहीं होती।Manual Installation (Node / Bun के बिना)
Remote script चलाए बिना install करने के लिए binary को स्वयं download करें।1
Download the Binary
नवीनतम GitHub Release से अपने platform के लिए binary download करें।
2
Rename the Binary to dodo
3
Move It to a Directory on Your PATH
Windows पर file को
C:\Windows\System32 में move करने के लिए administrator privileges आवश्यक हैं।4
(Optional) Verify the Download
प्रत्येक release में एक
SHA256SUMS.txt file प्रकाशित होती है। इसे binary के पास download करें, फिर binary को verify करें:Authentication
अपने account को पढ़ने या बदलने वाले commands चलाने से पहले API key से log in करें। Direct subcommand से log in करने के लिए key और उसका mode,test या live, pass करें:
- आपके browser में dashboard का Developer → API Keys page खोलता है।
- आपको अपनी API key paste करने के लिए कहता है।
- आपको Test Mode या Live Mode चुनने के लिए कहता है।
~/.dodopayments/config.json में encrypted रूप से store करते हैं।
Encryption key आपकी machine से derive की जाती है, इसलिए stored credentials केवल उसी machine पर काम करते हैं। यदि आप v3.0.x से upgrade कर रहे हैं, जिसमें keys OS keychain में store होती थीं, तो
dodo login फिर से चलाएँ। पुराने plaintext ~/.dodopayments/api-key file में मौजूद keys अपने-आप migrate हो जाती हैं और वह file delete कर दी जाती है।Modes बदलना और Log Out करना
आप एक test mode key और एक live mode key को एक ही समय में logged in रख सकते हैं। TUI में active mode बदलने के लिए/switch चलाएँ। Stored keys हटाने के लिए:
test, live या all pass करें। TUI में /logout आपसे All accounts, Test Mode या Live Mode चुनने के लिए कहता है, फिर confirmation माँगता है।
उपयोग
आप CLI को दो modes में उपयोग कर सकते हैं।1. Interactive TUI (अनुशंसित)
Interactive interface खोलने के लिए बिना arguments केdodo चलाएँ:
/ टाइप करें। / से शुरू न होने वाला text AI assistant को भेजा जाता है।
2. Direct Subcommands
TUI खोले बिना command चलाएँ:dodo को / से बदलें, जैसे /payments list 1। TUI only चिह्नित commands interactive wizards हैं। Direct mode में वे ऐसा message print करते हैं जो आपको TUI खोलने के लिए कहता है।
AI Assistant
अपने account के बारे में प्रश्न पूछें या सामान्य English में actions लें। Assistant आपकी machine परdodopayments-mcp चलाता है, इसलिए किसी अतिरिक्त setup या OAuth flow की आवश्यकता नहीं होती। यह आपकी machine से stored key का उपयोग करके Dodo Payments API को call करता है और आपके prompts को language model को भेजता है।
Direct mode में
dodo ai के बाद अपना प्रश्न चलाएँ। TUI में उदाहरण:
Project Scaffolding
dodo init किसी existing project में Dodo Payments billing routes जोड़ता है। यह route files लिखता है, matching @dodopayments/* adapter package install करता है और आपके .env file में missing DODO_PAYMENTS_* variables को placeholder values के साथ जोड़ता है। यह पहले से मौजूद files और variables को skip करता है और बिना log in किए चलता है।
Better-Auth scaffold के लिए generate किए जाने वाले plugins की comma-separated list pass कर सकते हैं:
checkout, portal, usage और webhooks। List न देने पर सभी चार generate किए जाते हैं।
यदि आपके project में
src/ directory है, तो scaffolder उसके अंदर files लिखता है। यह आपके project की lock file (bun, pnpm या yarn) से install command चुनता है और कोई lock file न मिलने पर npm का उपयोग करता है।Command Reference
इन commands के लिए logged-in API key आवश्यक है। List commands एक optional page number लेते हैं, जिसका default 1 है, और प्रत्येक page पर अधिकतम 100 items दिखाते हैं।Products
अपने product catalog को manage करें।Payments
Payment transactions देखें।Customers
अपने customers को manage करें।Discounts
Discount codes manage करें।Licenses
License keys देखें। Command की spellinglicences है।
Addons
Product add-ons manage करें।Refunds
Refund information देखें।Checkout
Hosted checkout sessions बनाएँ।Webhooks
CLI में development के लिए दो webhook tools हैं: एक listener, जो test mode webhooks को आपके local server पर forward करता है, और एक trigger, जो किसी भी endpoint पर mock webhook payloads भेजता है।
Direct mode में arguments आवश्यक हैं। TUI में बिना arguments के
/wh listen या /wh trigger चलाकर interactive wizard खोलें।
Webhooks के लिए Listen करें
अपने Dodo Payments account से webhooks को real time में अपने local development server पर forward करें।1
Enter Your Local Endpoint URL
वह local URL pass करें जिस पर webhooks प्राप्त होने चाहिए, उदाहरण के लिए
http://localhost:3000/webhook। TUI wizard में CLI आपसे यह URL पूछता है।2
Automatic Setup
यदि आपके account में CLI के relay server के लिए कोई webhook endpoint नहीं है, तो CLI एक endpoint बनाता है। Endpoint Developer → Webhooks में दिखाई देता है। इसके बाद CLI events प्राप्त करने के लिए relay से WebSocket connection खोलता है।
3
Receive and Forward
जब कोई webhook event fire होता है, जैसे test payment या subscription change से, तो CLI payload और headers को आपके local endpoint पर
POST request के रूप में forward करता है। यह event type और आपके endpoint के response को log करता है और response को relay को वापस भेजता है।फ़ॉरवर्ड करने से पहले relay और CLI JSON body को parse करके उसे फिर से serialize करते हैं। यदि फ़ॉरवर्ड की गई body मूल body से byte दर byte अलग होती है, उदाहरण के लिए number formatting में, तो headers सही होने के बावजूद signature verification विफल हो जाता है।
Test Webhooks Trigger करें
Real transactions बनाए बिना किसी भी endpoint पर mock webhook payload भेजें।/wh trigger wizard आपको इन steps से guide करता है:
- Destination endpoint URL set करना।
- Payload के लिए वैकल्पिक रूप से Business ID, Product ID, Metadata (एक JSON object), Customer email और Customer ID दर्ज करना। खाली fields में placeholder values का उपयोग होता है।
- Interactive menu से भेजने के लिए कोई event चुनना। आप लगातार कई events भेज सकते हैं। समाप्त करने के लिए exit चुनें।
dodo wh trigger के लिए login आवश्यक नहीं है। यह एक local, offline webhook payload generator के रूप में काम करता है।समर्थित Webhook Events
dodo wh trigger उन 48 event types में से 46 के लिए mock payloads भेज सकता है जिन्हें Dodo Payments deliver करता है। यह subscription.past_due या subscription.unpaused को support नहीं करता। Event name को ठीक वैसे ही pass करें जैसा सूची में दिया गया है:
तीन trigger names उनके द्वारा भेजे जाने वाले payload में event
type से अलग होते हैं: payment.success, payment.succeeded भेजता है; refund.success, refund.succeeded भेजता है; और licence.created, license_key.created भेजता है।
Mock payload shapes API reference में दिए गए संबंधित schemas का अनुसरण करते हैं। प्रत्येक event का अर्थ और production में Dodo Payments उसे कब emit करता है, यह जानने के लिए Webhook Events देखें।
Environment Variables
यह variable बदलता है किdodo wh listen किस तरह connect करता है:
Updates
CLI startup पर नए version की जाँच करता है और version उपलब्ध होने पर status bar में notification दिखाता है। TUI से npm या Bun install को upgrade करने के लिए चलाएँ:/update release binary को upgrade नहीं कर सकता। Binary installs, जिसमें install script वाले installs भी शामिल हैं, के लिए यह इसके बजाय नवीनतम GitHub release का link देता है। Shell से upgrade करने के लिए वह command फिर से चलाएँ जिससे आपने install किया था:
Resources
GitHub Repository
Source code और releases।
npm Package
npm registry पर
dodopayments-cli package।Support
- Discord: community server से जुड़ें।
- GitHub: repository पर issue खोलें।
- Email: support@dodopayments.com पर contact करें।