Custom license fields are just extra data that is sent along & signed along with the other activation data. That is, the customer can activate the key and the license fields are sent along no matter what is contained in the fields. So even if you have a "trial_expires" license field, and the date has long since passed, the use will still be able to activate the product key. However, your app will actually check the license field "trial_expires" and see the date has passed. From there you can do whatever you want: let the user extend their trial, or prompt them to buy your app, etc.