I tested a one-time purchase ("pro-lifetime", $4.99, interval: "once") in test mode. The payment shows as completed (paidAt is set, plan is correctly populated), but extpay.getUser() still returns paid: false. subscriptionStatus shows "incomplete", which I understood should only gate paid for subscription-interval plans, not one-time purchases, per the docs: "For subscription payments, paid is only true if subscriptionStatus is active."
Full user object:
{ "email": "sindre_b@live.no", "installedAt": "2026-08-20T08:49:08.404Z", "paid": false, "paidAt": "2026-08-20T15:00:44.054Z", "trialStartedAt": null, "subscriptionStatus": "incomplete", "subscriptionCancelAt": null, "plan": { "unitAmountCents": 499, "currency": "usd", "nickname": "pro-lifetime", "interval": "once", "intervalCount": null } }
Is this expected behavior for one-time plans, or a bug?
I tested a one-time purchase ("pro-lifetime", $4.99, interval: "once") in test mode. The payment shows as completed (paidAt is set, plan is correctly populated), but extpay.getUser() still returns paid: false. subscriptionStatus shows "incomplete", which I understood should only gate paid for subscription-interval plans, not one-time purchases, per the docs: "For subscription payments, paid is only true if subscriptionStatus is active."
Full user object:
{ "email": "sindre_b@live.no", "installedAt": "2026-08-20T08:49:08.404Z", "paid": false, "paidAt": "2026-08-20T15:00:44.054Z", "trialStartedAt": null, "subscriptionStatus": "incomplete", "subscriptionCancelAt": null, "plan": { "unitAmountCents": 499, "currency": "usd", "nickname": "pro-lifetime", "interval": "once", "intervalCount": null } }
Is this expected behavior for one-time plans, or a bug?