1What FoxPlug reads from Paddle
These are the exact things it reads, and nothing else.
| What | The details it takes |
|---|---|
| Subscriptions | up to 5 pages of 200 subscriptions in status active, past due, canceled, paused or trialing: status, currency code, created at, canceled at. |
| Subscription items and prices | for each subscription's items: quantity, price unit price amount and the price's billing cycle interval and frequency, turned into a monthly amount. |
| Active and trialing subscribers | active and trialing both count as subscribers; only active ones add monthly revenue (a trialing subscription adds 0). |
| Past-due subscriptions | status past due: how many, and the monthly amount at risk. |
| New and cancelled in 30 days | new = created at in the last 30 days; cancelled = status canceled with canceled at in the last 30 days. |
| Currency | the subscription's currency code, lowercased (the last one seen is used). |
2Moments it finds, and what each becomes
A moment is one thing that happened in Paddle worth a second look. Each one is scored, then it becomes a post, a changelog entry, a thing to fix or an idea to email, or it is skipped.
The first active subscriber appears
The moment is titled like this: 💸 Got the first paying customer
A maker connects Paddle and presses Check for what's new. One subscription is active, so FoxPlug writes 'Got the first paying customer' with the line 'Someone is paying for the thing I'm building (counted from Paddle).'
Subscribers reach 10, 50 or 100
The moment is titled like this: Passed 50 paying subscribers
The 50th active or trialing subscription is read. The moment 'Passed 50 paying subscribers' is written once, described as '50 people now pay for it every month (counted from Paddle).'
One or more subscriptions are past due
The moment is titled like this: No milestone. Brief line like '1 subscription is past due, $29 a month at risk.'
A renewal fails and Paddle marks the subscription past due. FoxPlug counts it and the monthly amount from its price and billing cycle, and the brief puts a Fix line first.
New subscriptions started in the last 30 days
The moment is titled like this: Brief line: 'Tell people: 4 new paying customers this month.'
Four subscriptions have created at inside the last 30 days, so the brief offers a Say line with that count.
3How the brain uses it
The rules below are the ones that apply to Paddle. The same rules, with worked examples, are on the brain page.
- Lemon Squeezy, Paddle and Polar report past-due subscriptions, which become the fix line. How the brain decides
- The first paying customer, then 10, 50 and 100 subscribers, become say lines. How the brain decides
- New paying customers in the last 30 days, including the first, become Say lines. How the brain decides
- Card expiry, saving customers and win-back need each customer's details, so they stay Stripe only. How the brain decides
4Set up Paddle in a few steps
Access: live API key pasted into FoxPlug. What to give it: live API key with the Subscriptions read permission only. Placeholder: pdl_live_apikey_….
- In Paddle, open Developer tools, then Authentication, then API keys (the in-app link goes there).
- Make a new live API key (not a sandbox one) and name it FoxPlug.
- Under permissions, tick only Subscriptions: read. Leave everything else off.
- Copy the key now and paste it into the Paddle box in FoxPlug. Paddle may show it only once.
5Limits worth knowing
Where it stops, so nothing surprises you.
- This reads Paddle Billing, the current Paddle. A Paddle Classic account has a different API and is not read.
- At most 1,000 subscriptions are read (5 pages of 200).
- Trialing subscribers count as subscribers but add 0 to monthly revenue.
- Paused subscriptions are fetched but are not counted as active.
- Only the next page link on the api.paddle.com host is followed.
- No failed-payment rescue, expiring card, saving or win-back drafts: those are Stripe only.
6What it never reads
Read only means read only, and the list below is what the code leaves alone.
- Customer emails. No customer email is read or stored.
- Sandbox data: a Paddle sandbox key (pdl_sdbx_) is refused because it holds test data.
- Anything written back: only GET reads are made, nothing is changed in Paddle.
7How Paddle differs from the tools next to it
Paddle returns each subscription with its items, so price, billing cycle and quantity come on the same call and FoxPlug needs no second prices read (Lemon Squeezy does). It pages at 200 and up to 5 pages, uses status filters active, past due, canceled, paused, trialing, reports past due, counts trialing as subscribers with no revenue, and rejects sandbox keys. Unlike Gumroad it has a true subscriber list, so monthly revenue is a real monthly figure.
8Questions
Which Paddle key do I need?
A live API key with only Subscriptions read ticked. A sandbox key is refused, because it holds test data.
Does FoxPlug see my customers' emails from Paddle?
No. It reads subscription status, price, billing cycle and dates. No customer email is read or stored.
Does a free trial count as revenue?
A trialing subscription counts as a subscriber but adds nothing to monthly revenue until it is active.
When does it read Paddle?
When you press Check for what's new or Build the brief, never on a timer.
FoxPlug reads this tool only when you press Check for what's new, and only to read. Plans and limits are on the pricing page. Questions: support.