How to Buy & Join a Program from Website

Hi all,
What is the best strategy to let the students join a program from the website by paying some amount?

I am thinking of creating new items when new programs are added
and list items in the website , then let the website users to add it to the cart then checkout the cart using paypal.

is there any better way to do this? Please share your thoughts.
Thanks in advance

That is the way to go. You should also set the Item Group to Services

thanks @netchampfaris
We were also thinking about the same
But I am afraid that , it will affect any other part of the system.
What if we need to sell some books also.

Yes it is possible.
Please go through these videos to get some idea.