Beh è alquanto semplice...
Sfruttando un database MySql , elenchi tutti i prodotti con rispettivo download.
Lo script controlla che ciò esista e, crea una sorta di log con pagamento "in attesa".
In quel momento si prosegue utilizzando la paypal.class e, l'acquirente paga ciò che deve e riceve il download.
Sul mio sito ciò l'ho già fatto e, posso assicurarti che è molto semplice.