You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何创建关联订阅计划且携带自定义参数的PayPal subscription button

实现带自定义参数的PayPal订阅按钮的方法

目前有两种常用的实现方案,你可以根据你当前的按钮生成方式选择:

方案1:JS SDK动态渲染按钮(更推荐)

这是灵活性最高的方案,你可以根据当前访问用户的信息动态生成自定义参数:

  • 在按钮的createSubscription回调中添加custom_id字段,传入你需要的自定义内容,示例代码如下:
paypal.Buttons({
  createSubscription: function(data, actions) {
    return actions.subscription.create({
      'plan_id': '你的订阅计划ID',
      'custom_id': 'CustomerId=1234' // 此处填写你要透传的自定义参数,最长支持127字符
    });
  },
  onApprove: function(data, actions) {
    // 订阅支付成功后可以直接拿到该参数,做后续会员开通逻辑
    console.log('订阅成功,对应用户标识:', data.custom_id);
  }
}).render('#paypal-button-container');
  • 后续PayPal推送的订阅相关webhook通知中,也会携带该custom_id字段,你解析后即可匹配对应用户完成注册。

方案2:固定嵌入按钮追加参数

如果你使用的是PayPal后台生成的静态嵌入按钮,直接在表单中新增隐藏的custom字段即可:

<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
  <input type="hidden" name="cmd" value="_s-xclick">
  <input type="hidden" name="hosted_button_id" value="你后台生成的按钮ID">
  <!-- 新增自定义参数字段,value替换为你要传的内容 -->
  <input type="hidden" name="custom" value="CustomerId=1234">
  <input type="image" src="https://www.paypalobjects.com/zh_XC/i/btn/btn_subscribe_LG.gif" border="0" name="submit" alt="PayPal支付">
  <img alt="" border="0" src="https://www.paypal.com/zh_XC/i/scr/pixel.gif" width="1" height="1">
</form>

注意事项

  • 自定义参数总长度不要超过127字符,超出部分会被自动截断
  • 如需传多个参数,你可以自行拼接成字符串(比如用&分隔,或者压缩后的JSON字符串),接收后再解析拆分即可
  • 优先选择JS SDK方案,不需要提前生成多个不同参数的固定按钮,可根据登录用户动态赋值,适配性更强

内容的提问来源于stack exchange,提问作者user1343837

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 17:36:03