Last updated: 3rd March 2026
This article explains the options available for limiting user access to a VPN account, focusing on how to create plans based on data usage or time elapsed, with some specific examples.
Plan Management and Types
All reseller partners have the ability to create user plans from within their dashboard. These plans can then be allocated to users using the Reseller v2 API. All plans can be viewed and created under https://app.wlvpn.com/reseller/iap. Please note that any plans you assign to users must comply with the terms of your WLVPN contract.
When adding a new plan, you can choose:
- Bandwidth-Based Plan: This will put the account into a "Cap Reached" status after the set amount of bandwidth has been used on the user’s account.
- Time-Based Plan: This will put the account into "Cap Reached" status after a set number of days have passed since the plan was allocated to the user’s account.
Additionally, bandwidth plans offer two advanced settings:
- Expire After Days: The account will enter "Cap Reached" after the set number of days or when the bandwidth limit is used, whichever comes first.
- "Refilling Interval Days" (Auto Refilling Bandwidth Plan): This marks the account as "Cap Reached" after the set bandwidth is used, but then resets the available bandwidth and account status back to Active every specified number of days.
Assigning, Revoking, and Upgrading Plans
- Assigning Plans: Once plans are created, you can assign them to a user as a purchase via the v2 API. See the documentation on how to allocate purchase to a customer.
- Revoking Plans: A customer's purchase will continue to limit the account until it is revoked. If you re-open an account without removing the plan, it would get closed again, so revocation is important. See documentation on how to revoke allocated purchase.
- Upgrading to Unlimited: When upgrading a customer from a limited plan to a paying, unlimited plan, you must call the revoke endpoint with the parameter "no_remaining_plan_handling": "unlimited".
Caveats
- Usage Check Delay: Usage is checked every 5–10 minutes, meaning it is possible for users to go slightly beyond the set bandwidth limit until the next check occurs.
- Account Status: Once the usage cap is reached, the account status will be 5. This status can be checked via the API or in your app (via the SDK) if you wish to add additional messaging to the customer.
Example: Free Plan with Daily Data Limit
To limit users to a certain amount of data per day and then disable the VPN until the next day (similar to a free tier model):
- You should use the auto refilling bandwidth plan.
- Setup Example: Set the bandwidth to the desired daily limit (e.g. 500mb) and set the refill days to 1.