customer-management

Manage Dodo Payments customers, portal sessions, payment methods, and wallet ledgers.

6|1|Updated Apr 21, 2026
One-click install
npx skills add https://github.com/dodopayments/dodo-agent-plugin --skill customer-management-dodopayments
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: customer-management
Source: https://github.com/dodopayments/dodo-agent-plugin/tree/main/plugins/dodopayments/skills/customer-management
Command: npx skills add https://github.com/dodopayments/dodo-agent-plugin --skill customer-management-dodopayments

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires dodopayments.

What problem does it solve? Integrating customer lifecycle operations with Dodo Payments requires handling many distinct APIs—customer CRUD, hosted portal sessions, saved payment methods, wallet ledgers, and entitlements—while avoiding pitfalls like duplicate customers, non-idempotent wallet mutations, and rebuilt billing UIs. ## Core Features & Use Cases - Customer CRUD and Linking: Create, list, retrieve, and update customer records, and link them to your app's user records via stored IDs or metadata. - Hosted Customer Portal: Generate time-bound portal sessions so customers can view invoices, cancel subscriptions, change plans, and update payment methods without building custom UI. - Wallets and Entitlements: Manage real-money wallet balances with idempotent ledger entries, and read credit balances, feature entitlements, and grant revocation status. - Use Case: When a user requests a refund, create an idempotent wallet ledger entry crediting their USD balance, then send them a portal session link to review their invoices and subscriptions. ## Quick Start Ask your agent to create a Dodo Payments customer, generate a customer portal session link, and add an idempotent credit to the customer's wallet.

Frequently Asked Questions about customer-management

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create and manage customers with the Dodo Payments API?

Use the dodopayments TypeScript SDK: client.customers.create with email, name, and optional metadata returns a customer_id prefixed with cus_. You can then list, retrieve, and update records, and store the customer_id in your database to link it to your app's users.

How do I build a self-service billing portal for customers?

Create a hosted portal session with client.customers.customerPortal.create and redirect the customer to the returned link. The portal handles invoices, subscription cancellation, plan changes, payment method updates, and license key downloads, so you should not rebuild these flows yourself.

What is the difference between Dodo Payments wallets and credits?

Wallets hold real-money balances in USD or INR that customers spend on future purchases, while credits are usage-based entitlements tracked separately. Wallet ledger entries require an idempotency_key to prevent duplicate charges on retries.

Can I create saved payment methods via the Dodo Payments API?

No, payment methods are created during checkout when the customer opts to save their card. The API only supports listing a customer's payment methods and deleting them by payment_method_id.

Why do duplicate customers appear after multiple checkouts?

Passing a customer email object to checkout session creation makes a new customer each time. Create the customer once, store the customer_id, and pass it to subsequent checkout sessions to keep customer data consolidated.