Is there a way to initiate a payment request in bitcoin?
You can now use the Bitcoin payment protocol to do this.

Here is an easy to use implementation from Bitpay.

There are already a few wallets that support this (including the reference client).  More will be released soon.

See:


BIP 70
BIP 71
BIP 72
BIP 73