The only thing I would change is to allow someone to purchase with her billing address and mail it to the gift address.
Connect with Facebook to get one click access to Trustpilot. It's easier.