What you need is a job to run to calculate the parcels each day, week, month, whatever time period you need. This job needs to run say once a day and find all accounts that owe parcels and decrease the amount that is owed. Sorry I don't quite understand your parcels and charging system but it's pretty obviousness you need a job to run every x time frame, do a calculation and save those changes to the database. Ruby and rails has no default built in scheduling of jobs to be run at specific time frames but all operating systems have a job scheduler. in linux the most common OS ruby on rails apps are run uses cron to schedule and run jobs. So its a natural fit to schedule your job to do that calculations. The next questions is what should it execute or run. Rails has rake tasks. These tasks are the same ones you use to migrate the database, build a default app etc. You can write your own tasks. Here is one of many tutorials on rake tasks
http://jasonseifer.com/2010/04/06/rake-tutorial . So to solve your problems I'd personally write a rake task that could be run once a day that found all accounts that needed to be charged parcels, do the calculation and make any database changes and use a cron task to run that rake task each day at a specific time. I'd probably also write a simple shell script to monitor the first cron job and rake task to make sure everything is working as it should and notify me via an e-mail if something is wrong, say the task didn't run or encountered an error. I'd than setup a second cron job to run a bit after the first one to run the shell script. Basically a simple monitoring routine so if something goes wrong I'd get an e-mail letting me know.
Bob