I'm writing a system that will bill people a certain recurring amount per month/quarter/year. During that period, the customer may earn credits against his next bill.
The approach I'm considering is to alter the customer's billing amount before the next billing cycle, then adjust it back up after the cycle.
The problem I'm anticipating is that I know (from personal experience) that PayPal doesn't allow you to adjust a recurring billing amount by more than 20 or 25% (I forget which). I haven't managed to get a clear answer from the developer forums on Auth.NET (my question here - nobody has answered in over 2 days), so I'm hoping one of the nice developers here on SO will have some experience dealing with PayPal and/or Auth.NET, and can give me some pointers as to what the best approach is to deal with this.
Also, what should I do if the customer upgrades his account to a package that's more than the allowed increase percentage? Should I kill his old profile and make him fill in his card/PayPal details again? Or is there a way of doing this that obviates the need to make him pull out his credit card again?