There's quite a bit on it, but it's quite a bit to setup!
Basic process:
1. Me (your buyer) pays for software. Your site then saves my order info inlcuding a unquie Order Number (plus username/password/email adress etc) to a database (eg mySQL or XML) on your server.
2. Your site then directs me to Paypal based on the info you send to Paypal (amount, description etc) but importantly it includes the Order Number from above.
3. When payment is received by Paypal it is setup to send an IPN. Your site will host an IPN listener which waits for this and runs a script upon receiving it. The IPN contans all the Paypal info, again inlcudng the Order Number.
4. Once it has received it, it runs a script you would create. It would do soemthing like get the Order Number from the IPN, look up the saved info for this order from the database and then, for example, email me (the user), my user name and password.
5. Ideallly there would also be some fraud checking where it gets the amount paid from the IPN and checks it against your database saved info to make sure the correct amount has been paid. Hackers can easily capture the info you are sending to paypal, then for example changing it to 1p. Paypal then sends the IPN and you give away your product. Checking the amount paid against what should have been paid is wise.
Google paypal IPN listeners for tutorials
If all that sounds too much, why not use something like
this