Programme access with pricing plans - wix editor

I’m having trouble with
We have a wix programme only available to people who buy a pricing plan, the numbers of who is in the programme vs who is paying the pricing plan is not correct. Too many people have access to the programme even when they cancel their membership, this shouldn’t be the case.

Working in
Wix Editor

Site link

What I’m trying to do
I want only people who have a current pricing plan in active or pending cancellation to be able to access the programme

What I’ve tried so far
linked the pricing plan to the programme

This sounds like some people may have access to the Online Program directly, rather than only through the connected Pricing Plan.

In Wix Online Programs, there are two different ways someone can get access:

  1. They buy the connected Pricing Plan and get access through that plan.

  2. They are manually invited or added directly to the program.

That second path is the likely issue. Wix says members who are manually added to a program have access regardless of any connected Pricing Plans. But if someone joins the program by buying a plan, they only have access as long as that plan is active. (Wix source)

I would check two places:

1. Pricing Plans → Subscriptions
Filter your subscriptions by status. The people who should have access are only those with:

  • Active

  • Pending Cancellation

Pending Cancellation is normal for recurring plans. Wix says the plan can still be used until the end of the paid billing period, then it changes to Canceled. (Wix source)

2. Online Programs → Your Program → Participants
Compare the participant list against your Active / Pending Cancellation subscription list. Anyone in the program who does not have one of those plan statuses likely has access because they were manually invited/added to the program, or came in through another route.

To fix it, remove the extra participants from the program if they should no longer have access. Be careful here, because removing someone from a program may affect their program progress/history.

Going forward, avoid manually inviting or adding participants directly to the program if access should depend on payment status. Instead, make sure people join through the connected Pricing Plan flow only.

Also double-check that the Pricing Plan is correctly connected to the Online Program as a benefit. Wix supports connecting Online Programs to Pricing Plans, and that is the right setup for plan-based access.

In short: linking the Pricing Plan to the program is correct, but it only controls people whose program access comes from the plan. Anyone manually invited or added directly to the program may need to be cleaned up separately.

Hi, did you get any answers from WIX? I have the same issue 1 year later, WIX has admitted the glitch, but the Pricing Plans app is still a chaos, no fix has been done. They just remove people manually one by one whenever I report it again and again!

Hey Trx, same thing we’ve run into. The Pricing Plan to Program link works fine for the purchase, but nothing cleans up automatically when a plan lapses or gets cancelled, so Wix just leaves it for you to catch manually.

What actually stops the manual sweeps: a small Velo automation that listens for the plan status change (Wix’s Pricing Plans backend fires an event when a plan is cancelled or expires) and removes that member from the Program the moment it happens, instead of waiting on Wix to sync it. Once that’s wired up it runs itself, no more checking participants against subscriptions by hand.

Happy to point you to the exact event/module if useful. If this helped, please mark it as Solved.

Hi Ecom_swift_LLC, thanks for the reply.

This is insane, this glitch must have been around for at least a year and Wix does not seem to want to fix it?

I use Wix Editor not Wix Studio. Would the Velo automation work there as well?

What I can do now as a workaround: set a normal wix automation for each plan and connect a ‘remove customer from a specific program after expiry’ action (it lets only add one, so I have to create many) But this would delete the entire program history for the customer, which I don’t want - in case they want to repurchase.

And I don’t think that this should be the solution. Wix needs to fix this.

Hi Trx, fair pushback, you’re right there’s no clean built-in fix for this.

Velo itself isn’t Studio only, it’s the same engine on classic Wix Editor sites, so the backend event listener works exactly the same there. No difference.

On the history question: that’s the real issue with any approach that calls the standard remove-participant action, whether that’s the native automation or a Velo call wrapping the same API, it drops their progress either way. I don’t know of an Online Programs endpoint that revokes plan based access while keeping the progress record intact. If Wix has one it isn’t in the public Programs API docs I’ve seen. So right now your honest options are living with the extra per-plan automations to keep history, or accepting the history loss for a simpler setup. This does sound like a real gap worth raising with Wix support directly, not something you’re missing on your end.

Ecom_swift_LLC, Pricing Plans don’t remove participants from linked Online Programs when the plan expire, they only ‘pause’ access. (I mean, they should, If they worked properly) so that is why they history remains for the customers. I’ve reported it several times to Wix and now I’ve learnt that other people have done it as well multiple times. But we are all familiar with how Wix tend to neglect such issues especially with the Pricing Plans app. I don’t think it would be such a difficult job to fix a basic feature like this if they actually cared. This feature should be the backbone of any subscription package for any trustworthy site.

Good questions. Velo isn’t Studio-specific, it’s the same dev platform on classic Wix Editor too, you just need Dev Mode turned on. Once it’s on, the same backend events (including the Pricing Plans status-change event) and the Online Programs API are available, so the automation I described works the same way there.

On the “one action per automation” limitation, you’re right that the built-in Automations UI only lets you pick one program per rule, so with several plans you’d end up with a rule per plan. A Velo event handler sidesteps that: one listener on the plan status event, then an if/else (or a lookup object mapping planId to programId) inside the code so all your plans are handled in a single script instead of duplicated automations.

On the history question, I don’t have a confirmed answer either way, whether removing a participant via Velo’s removeParticipant call wipes their progress the same way the built-in automation action does, since it’s likely the same underlying removal under the hood. I wouldn’t assume it’s safer just because it’s custom code. Worth testing on one non-critical participant first, or opening a ticket with Wix support and asking directly whether there’s any way to revoke plan-based access without clearing program progress. Agreed this really should be native behavior rather than something every site has to script around.

The distinction between plan-based access and manually added participants is easy to miss. Checking the participant list against the active pricing plans sounds like a good first step, especially if some members were added directly to the program.