Your post is pretty confusing. It sounds like you are struggling with the idea of putting simple one-time cost items (like a book or something) in the same shopping cart as recurring charges (like a subscription or payment plan for expensive stuff). The concept of an order is a pretty fundamental one and you should probably create a table for ORDERS. An order has things like an order date, total amount quoted, payment method, shipping address, etc.
You should also be able to assign items to an order. I'm imagining a table for SIMPLE_PRODUCTS which just go in your cart, have a one-time cost, and are simple. You can connect them to a particular order with another table SIMPLE_PRODUCTS_ORDER_ASSOC which just has a product ID, an order ID, and a quantity. If your products are customizable (like an engraved charm bracelet or something) then you'll need additional information in this table.
I'm also imagining something like RECURRING_COST_PRODUCTS which are different. This might be something like 'Yearly support subscription'.
If you want recurring invoices, you will probably need to set up a cron job to check the db every so often to send out recurring invoices.
I don't really know what you're after so you'll need to be clearer.