-
Email requirement
- Dodo requires a valid
customer.emailfor receipts + compliance. - Using placeholder emails is not recommended long-term.
- Better approach: collect email during checkout (use hosted checkout input) or prompt in Discord before payment.
- Dodo requires a valid
-
Receipts
- Receipts are sent to
customer.email. - If you don’t have a real email → user won’t receive receipts.
- Alternative: ask for email post-purchase and update customer (see below).
- Receipts are sent to
-
Updating customer email
- Yes — you can update customer data via API.
- Use
PATCH /customers/{customer_id}to replace the email. - Store
customer_idso you can update later.
-
Customer lookup
- No reliable way to fetch customers purely by metadata.
- Metadata is not indexed for lookup.
- You should store
customer_idon your side (e.g. mapped to Discord user/guild ID).
Recommended setup
- Create customer at checkout → store
customer_id+ Discord ID - Collect email either:
- upfront in checkout, or
- later → then PATCH update
If you skip storing customer_id, managing subscriptions and updates will get messy quickly.