BIP-70
Payment Protocol.
Lets shops send a wallet a signed payment request, so you see who you are paying instead of a bare address.
Copying a long address from a web page is error-prone, and an attacker could swap it. With this protocol, the wallet can show the shop's verified name, the customer gets proof of payment for disputes, and the wallet can pass on a refund address automatically.
Read BIP-70 in full on GitHubAll BIPs