dodopayments-cli
v2.1.0
Published
A CLI for Dodo Payments
Readme
Dodo Payments CLI
Manage your Dodo Payments resources and test webhooks directly from the terminal. Built for developers who prefer the command line.
Installation
We provide various ways to install the CLI:
Note: If you have Node or Bun installed, it's highly recommended to use that installation method.
Using npm (Recommended)
npm install -g dodopayments-cliUsing Bun
bun install -g dodopayments-cliManual Installation
Download the latest release from GitHub Releases that matches your system.
Extract the downloaded file to a directory of your choice.
Rename the binary file to
dodo:- Linux/macOS:
mv ./dodopayments-cli-* ./dodo - Windows:
ren .\dodopayments-cli-* .\dodo
- Linux/macOS:
Move the binary to a directory in your system's PATH:
- Linux/macOS:
sudo mv ./dodo /usr/local/bin/ - Windows:
move .\dodo C:\Windows\System32\dodo(requires admin mode)
- Linux/macOS:
Authentication
Before using the CLI, you must authenticate:
dodo loginThis command will:
- Open your browser to the Dodo Payments API Keys page
- Prompt you to enter your API Key
- Ask you to select the environment (Test Mode or Live Mode)
- Store your credentials locally to
~/.dodopayments/api-key
Note: Upto 1 Test Mode & 1 Live Mode can be used at the same time
Usage
The general syntax is:
dodo <category> <sub-command>Products
Manage your products catalog.
| Command | Description |
|---------|-------------|
| dodo products list | List all products |
| dodo products create | Open dashboard to create a product |
| dodo products info | View details for a specific product |
Payments
View payment transactions.
| Command | Description |
|---------|-------------|
| dodo payments list | List all payments |
| dodo payments info | Get information about a specific payment |
Customers
Manage your customer base.
| Command | Description |
|---------|-------------|
| dodo customers list | List all customers |
| dodo customers create | Create a new customer profile |
| dodo customers update | Update an existing customer's details |
Discounts
Manage coupons and discounts.
| Command | Description |
|---------|-------------|
| dodo discounts list | List all discounts |
| dodo discounts create | Create a new percentage-based discount |
| dodo discounts delete | Remove a discount by ID |
Licenses
Manage software licenses.
| Command | Description |
|---------|-------------|
| dodo licences list | List all licenses |
Addons
Manage your add-ons.
| Command | Description |
|---------|-------------|
| dodo addons list | List all addons |
| dodo addons create | Open dashboard to create an addon |
| dodo addons info | View details for a specific addon |
Refunds
Manage your refunds.
| Command | Description |
|---------|-------------|
| dodo refund list | List all refunds |
| dodo refund info | View details for a specific refund |
Webhooks
Manage and test webhooks directly from the CLI.
| Command | Description |
|---------|-------------|
| dodo wh listen | Listen for webhooks from Dodo Payments in real time and forward them to your local dev server |
| dodo wh trigger | Trigger a test webhook event interactively |
Note: The webhook triggering doesn't support signing requests yet. Please disable webhook signature verification while triggering. A simple way to do this is using
unsafe_unwrap()instead ofunwrap()in the webhook endpoint during testing only.
Note: The webhook listening tool will only work with a test mode API key. If you use a live mode API key, it won't work.
This interactive tool guides you through:
- Setting a destination endpoint URL
- Selecting a specific Event to trigger
Supported Webhook Events
| Category | Events |
|----------|--------|
| Subscription | active, updated, on_hold, renewed, plan_changed, cancelled, failed, expired |
| Payment | success, failed, processing, cancelled |
| Refund | success, failed |
| Dispute | opened, expired, accepted, cancelled, challenged, won, lost |
| License | created |
Contributing
We welcome contributions from the community! Whether you're fixing bugs, adding new features, or improving documentation, your help is appreciated.
Please read our Contributing Guide to get started. We also have a Code of Conduct that we expect all contributors to follow.
Ways to Contribute
- Report bugs and suggest features
- Improve documentation
- Add new CLI commands
- Write tests
- Review pull requests
Support
- Discord Community - Get help and discuss with the community
- GitHub Issues - Report bugs or request features
- Documentation - Learn more about Dodo Payments
License
This project is licensed under the MIT License - see the LICENSE file for details.
