Premium not applied after payment
Use this when the gateway shows paid but the member still looks Registered / free.
Fulfillment is driven by the webhook / IPN (or sync return) calling checkout billing — not by the member refreshing the page alone. Look for checkoutBillingApplied style metadata on the payment once applied.
1. Confirm what “paid” means here
- Open Payment transactions list — status Completed vs Pending / Failed / Refunded.
- Member payment history — Pending/processing is not applied yet.
- Provider dashboard “captured” ≠ our webhook finished. Recheck gateway keys, webhook URL, and signing secret in Settings (use each provider’s official docs for where Client ID / Secret / webhook live). Health Center may flag payment delivery issues.
2. Checkout vs redeem vs balance vs traffic
| Path | What should change |
|---|---|
/premium (or plan) checkout |
Membership plan + Paid access ends (premiumUntil) |
| Pay with account balance | Same, if balance pay is enabled and funds are enough |
| Redeem a premium key | Extends Premium / Pro from the key duration |
| Traffic package | Bandwidth only — not the Premium membership tier |
| Balance top-up only | Adds balance — does not by itself make them Premium |
3. User record checks (Admin)
Edit a user (profile, role, flags):
1. Membership plan is Premium / Premium Pro.
2. Paid access ends is in the future (required for paid tiers).
3. Status is not BANNED / PENDING.
4. Nobody manually demoted them after the sale.
4. Common traps
- Plans not published → checkout empty. Plan & pricing — Premium plans.
- Guest paid without an account link — payment may not attach to the member you expect.
- Reseller key already used or expired — redeem errors.
- Top-up still processing — wait for Completed; don’t expect Premium from a pending top-up alone.
5. After a refund
Refunds can reverse premium and/or commissions depending on gateway + Affiliation refund settings. Check the transaction row and Affiliate commissions ledger.