There are 2 methods of sending a name from one owner to another owner, a 'push' and a 'transfer'.
PUSH - a push is when you are sending the name to another person at the same registrar where the name is currently registered. For example, if your name is currently at Godaddy and the buyer also wants it in their Godaddy account, you perform a push, from your GD account to their GD account.
A push is usually instant, taking a few seconds/minutes to show up in the other person's account. Since it is not a change of registrar, you can push a name to someone else immediately after you reg the name, you don't need to wait the 60-day ICANN period.
Usually for a push, you'll need the other person's username at the registar, but this varies. Sometimes they ask for username + email, or some other criteria. Check your registrar's info to see what info they require for pushes.
The push is initiated in the account of the CURRENT domain owner, not the buyer.
TRANSFER - a transfer is when you are sending the name to another person at a DIFFERENT registrar (or transferring it to your own account at a different registrar). For example, if your domain is currently at Godaddy and you have sold it to a person who wants to keep it at Namecheap, you must perform a transfer, to get it from Godaddy to Namecheap.
After any change of registrant, you cannot transfer a name for 60 days, per ICANN rules. So if you just regged the name or just bought it from someone else, you must wait 60 days before doing a transfer out from your registrar. As mentioned, you can still push the name to another user in the SAME registrar, without waiting that 60 days. So if the buyer doesn't have an account at your current registrar but they want the name right away, ask them to set up an account, then push the name. If they can wait a week or 2, then you can do a transfer.
A transfer can take anywhere from a couple days to a couple weeks, depending on the process of each registrar. Some are smooth and fast, others are excruciatingly troublesome and slow.
Unlike a push, a transfer is initiated by the BUYER. In their registrar's account, they initiate the transfer. The seller must unlock the domain if it is locked, or take off any other security settings that might keep it from being transferred. Then the seller must also supply the buyer with the domain's EPP code. When you are in the domain management area for the domain you are selling/transferring, you will see a little button somewhere that tells you how to get the EPP code for that domain. You need to give this - but no other information - to the buyer, they need to input the EPP code into their new registrar to allow the transfer. Don't give the buyer any passwords or anything, just the EPP code.
There's a short primer, hope it's helpful
Be sure to use the right terminology for what you are doing here. If you say 'transfer' when you mean 'push', or vice versa, wrong things will happen.
push = to same registrar. Instant. Initiated by current domain owner.
transfer = to different registrar. Takes a few days or weeks. Initiated by the person with the new registrar that the name's going to.