First-run checklist
The eight things to set up between a successful install and your first real sale.
A fresh install works, but it is empty and disconnected. Work down this list in order — each step depends on the ones above it.
1. Connect Paddle#
Go to Settings and fill in your Paddle API key, client-side token, and webhook secret. Leave Sandbox on until you have tested a full purchase. See Connect Paddle.
2. Point Paddle at your webhook endpoint#
In your Paddle dashboard, add a notification destination pointing at https://your-domain.com/api/v1/webhook/paddle and subscribe it to the events listed in Webhook events. Copy the signing secret it gives you back into Settings.
3. Set up email#
If you skipped SMTP during install, add it now. Without working email, buyers never get their set-password link and cannot sign in at all.
4. Create your first product#
Products → Add product. A product is the thing you sell — usually one plugin or application. See Products.
5. Create plans and map them to Paddle prices#
Each plan carries a Paddle price ID, a billing cycle, a domain limit, and support and update windows. The price ID is the link that lets a webhook resolve which plan a purchase was for — a plan without one can never be fulfilled automatically. See Plans and Paddle prices.
6. Upload a version#
Upload at least one release archive for the product, so a customer has something to download. See Uploading versions.
7. Add the cron entry#
Add Laravel’s scheduler to cron so reminders, webhook retries, and log pruning run. See Scheduled tasks.
8. Buy your own product#
With Paddle still in sandbox, complete a purchase using a Paddle test card. Then confirm all four:
- A row appears under Webhook logs with status processed.
- A user, an order, and a subscription with a license key exist.
- The welcome email arrived and its set-password link works.
- Signing in as that customer, the download works.
When all four pass, turn sandbox off, swap in your live Paddle credentials and live webhook secret, and you are trading.