You don't have to do this. You don't need tons of complexity. You can make any system infinitely complex, but this is a choice. A billing system with -- and I quote -- "160000 combinations" is too complicated for customer support to understand, too complicated to explain to consumers, and will inevitably result in people getting billed incorrectly.
Do you need to operate a B2C business this way? You really don't. It's OK if your billing system is slightly suboptimal. The overwhelming majority of businesses are held back by the quality of their product and by their distribution. Billing just needs to be simple and functional.