I am building a site where a user will be displayed in a marketplace, if they pay a monthly fee they will be able to choose to be in more categories and be first in the search results, when they stop paying i want their settings(categories) to go back to what they where when they were a non paying user.

How would i achieve this, i am thinking that when a user signs up (in this example users name is gary) gary must fill in his categories and save them which will be stored under gary normal categories, then when he is a paid user he will be directed to update his categories he then saves the new categories and they will be saved under gary paid categories. When his paid month runs out it will be changed back to gathering info from gary normal categories. They will also be able to change these settings when they want.

this is possible right, i have a freelancer telling me it will be very difficult and it will cost more time and money when he has already accepted this i haven't adding it in. i an finding it hard to explain how this can be done to him in coding terms.

maybe if the user is free they have a value of 1 and if they are paid it gets changed to 2 for a month until the month is over then it will go back to 1, in this case the code will look and determine
if value == 1 { use gary normal categories}
if value == 2 { use gary paid categories }

is there an easier way or am i missing something here that makes it hard? i don't want to hear that the freelancer shouldn't complain and that he should be able to do this i just want to know how to explain it. he is obviously thinking i don't know anything about coding and wants me to think its hard and will cost more if i prove it isn't out of the ordinary he will just do it.

can you guys help me explain this thanks.