如何通过PayPal付款按钮在收款后获取买家的邮箱地址
你现在使用的是PayPal托管按钮(cmd值为_s-xclick),所有配置参数存储在PayPal后台,直接在表单内新增隐藏变量不会生效,这是你之前尝试操作无效的核心原因。对应两种使用场景的解决方案如下:
方案1:继续使用当前托管按钮
- 登录PayPal商家后台,找到ID为
YC5HJC37YASFG的对应按钮,进入编辑页面 - 在高级设置板块配置两个核心参数:
- 通知URL(
notify_url,即IPN回调地址) - 付款成功返回地址(
return)
- 通知URL(
- 开启*付款数据传输(PDT)*功能
- 配置完成后,PayPal会在付款完成后主动向你的
notify_url地址推送交易数据,其中payer_email字段就是买家的付款邮箱,你可以直接在回调逻辑中读取该字段值。异步IPN回调不受用户操作影响,数据可靠性更高。
方案2:改用非托管按钮(和你之前测试可用的逻辑一致)
你之前使用的cmd值为_xclick的是非托管按钮,支持直接在表单内自定义参数,只要保留现有配置的notify_url参数,在对应的回调文件(你示例中的notify.php)中做如下处理即可:
- 先完成PayPal回调签名验证,确认请求来源合法
- 直接读取POST参数中的
payer_email字段,即可获取买家邮箱
注意:非托管按钮所有交易参数都暴露在前端代码中,上线前要做好参数校验,防止恶意用户篡改金额等核心数据。
内容的提问来源于stack exchange,提问作者Babar Ali
相关产品推荐
相关产品推荐

