Paddle
Integrate Paddle payments with subscriptions, webhooks, checkout, and tax compliance.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/ivangdavila/paddleSetup
On first use, read setup.md for integration guidelines.
When to Use
User needs to integrate Paddle for SaaS payments. Agent handles API calls, webhook verification, checkout setup, subscription management, and tax compliance configuration.
Architecture
Memory lives in ~/paddle/. See memory-template.md for structure.
~/paddle/
├── memory.md # API keys, environment, product IDs
└── webhooks.md # Webhook endpoints and event handling
Quick Reference
| Topic | File |
|---|---|
| Setup process | setup.md |
| Memory template | memory-template.md |
| API endpoints | api.md |
| Webhook handling | webhooks.md |
Core Rules
1. Always Use Sandbox First
- Test ALL integrations in sandbox before production
- Sandbox API:
https://sandbox-api.paddle.com - Production API:
https://api.paddle.com - Never skip sandbox testing for payment flows
2. Verify Webhook Signatures
- Every webhook MUST be verified before processing
- Use the webhook secret from Paddle dashboard
- Reject requests with invalid signatures immediately
- Log failed verifications for debugging
3. Handle Subscription States Correctly
| State | Meaning | Action |
|---|---|---|
active | Paying customer | Grant access |
trialing | In trial period | Grant access, remind before end |
past_due | Payment failed | Retry period, warn user |
paused | User paused | Restrict access, allow resume |
canceled | Subscription ended | Revoke access at period end |
4. Store Paddle IDs Correctly
customer_id(ctm_xxx) — unique per customersubscription_id(sub_xxx) — unique per subscriptiontransaction_id(txn_xxx) — unique per paymentprice_id(pri_xxx) — your pricing configuration- Map these to your internal user/subscription records
5. Use Paddle Retain for Dunning
- Enable Paddle Retain in dashboard for failed payments
- It handles retry logic and customer communication
- Track
subscription.past_dueevents but let Paddle retry first - Only take action after
subscription.canceledfrom failed payments
Common Traps
- Hardcoding price IDs → Use environment variables, prices change between sandbox/production
- Processing webhooks without verification → Security vulnerability, anyone can fake events
- Ignoring
past_duestate → User loses access during retry window, bad UX - Not handling proration → Confusing charges when users upgrade/downgrade mid-cycle
- Testing with production keys → Real charges, angry customers, refund headaches
External Endpoints
| Endpoint | Data Sent | Purpose |
|---|---|---|
| https://api.paddle.com | Customer data, subscription info | Payment processing |
| https://sandbox-api.paddle.com | Test customer data | Sandbox testing |
No other data is sent externally.
Security & Privacy
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-ivangdavila-paddle": {
"enabled": true,
"auto_update": true
}
}
}Related Skills
Animations
Create performant web animations with proper accessibility and timing.
Arduino
Develop Arduino projects avoiding common wiring, power, and code pitfalls.
Bulgarian
Write Bulgarian that sounds human. Not formal, not robotic, not AI-generated.
Arabic
Write Arabic that sounds human. Not formal, not robotic, not AI-generated.
Assistant
Manage tasks, communications, and scheduling with proactive and organized support.