For et sånn prosjekt ville jeg droppet brukerinnloggingen og heller laget en integrasjon mot paypal for betaling. Ved gjennomført betaling sendes en midlertidig lenke til sluttbruker på e-post.
Da kan du ha en database som eksempelvis ser sånn ut:
Products: Id, Name, Price, FileUrl
Orders: Id, Hash, ProductId, CustomerMail, OrderStatus, ExpiryDate
Bruk ordretabellen som en "proxy". Hvert kjøp genererer en lenke som presenterer et produkt forutsatt at datoen for ordren ikke har gått ut.
Ressurser:
Paypal Payments API
Stackoverflow har tidligere fått et lignende spørsmål om nedlastbart innhold. Bruk det som inspirasjon