Is it possible to provide logins based on purchases? There shall be an online shop with drupal commerce. It is required that a visitor can buy a digital product, i.e. a ticket with a barcode that he can print out. The visitor shall not be able to create an account.

The visitor must provide his email when buying a ticket. When the visitor finishes the payment process a pdf (a ticket with a barcode) and a unique id are generated (an id for that purchase if you will). A visitor can buy multiple tickets, but everything that is bought in one process has the same purchase id.

Is it possible to let that user "login" with his email and the generated id, given an overview of all the tickets the user bought related to that purchase id?

Background of this is: a user shall be able to see the bought tickets to be able to print them again. But one email address can be used several times, not meaning its everytime the same user.

Example:

Visitor foo@bar.com makes a purchase with 2 tickets, t1 and t2, id abc is generated.

The visitor can then "login" using the credentials foo@bar.com and abc "as password", seeing tickets t1 and t2.

Two days later, another visitor with the same email address makes another purchase, buying a ticket t3 and generating the id def. Hours later, he wants to print the ticket again, he can login using the mail foo@bar.com and the "password" def, showing ticket t3.

If he used password abc instead, he would be shown tickets t1 and t2.
YOu don't need a real login, just an access to a certain node. For this, you can use the Node autorize link module:


  Generates link for view, edit, or delete content without login


So, when someone pruchases something you must create a node tieh the data tue user can view. Add the view authorize link to the purchase email notification and the customer will have access to the node with data just following the emailed link.