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

如何在常规PayPal支付中添加Gift Aid复选框及完成沙箱测试

将Gift Aid复选框嵌入常规PayPal支付流程实现方案

你已经完成Donate SDK的独立部署,要把Gift Aid选项以复选框形式加到常规支付流里,不需要额外加载独立捐赠SDK,直接基于现有常规PayPal JS SDK调整即可,操作步骤如下:

  • 加载SDK时在参数里追加enable-funding=donate,确保捐赠相关接口权限正常启用。
  • 在PayPal支付按钮的上方位置,插入自定义复选框DOM,文案按规则写清Gift Aid适用说明(即英国税务居民捐赠可享受25%税务减免,捐赠人需确认自己缴纳的税额足够覆盖对应减免额),样式可自定义适配自身页面风格。
  • 定义简单状态变量存储复选框勾选结果,比如let giftAidChecked = false,给复选框绑定change事件实时更新这个变量的值。
  • 在createOrder回调构造订单参数时,把Gift Aid勾选状态传到指定字段即可,参考代码:
createOrder: (data, actions) => {
  return actions.order.create({
    purchase_units: [
      {
        amount: {
          currency_code: "GBP",
          value: "实际捐赠金额"
        }
      }
    ],
    payment_source: {
      paypal: {
        attributes: {
          gift_aid: {
            opted_in: giftAidChecked
          }
        }
      }
    }
  })
}
  • 必须满足的前置条件:结算货币必须为英镑GBP,收款PayPal账户必须是英国注册的慈善类账户,普通商户账户传递该字段不会被识别。
沙箱环境测试方法
  • 先在PayPal开发者后台准备两个沙箱测试账号:一个是归属地为英国的慈善类商家沙箱号,提前在沙箱账户设置中打开Gift Aid功能开关;另一个是归属地为英国的个人沙箱买家号,用来模拟捐赠人付款操作。
  • 前端加载SDK时把环境参数设为sandbox,client-id替换为上述沙箱商家号的对应id。
  • 按以下场景逐一验证:
    • 勾选Gift Aid复选框走完整支付流程,支付完成后登录沙箱商家后台查看对应交易详情,能看到Gift Aid opted-in标记即代表参数传递成功
    • 不勾选复选框完成支付,确认交易详情中无Gift Aid相关标记
    • 测试中途取消支付、返回页面切换复选框状态后再发起支付的场景,确认传参与实际勾选状态一致
  • 沙箱环境不会生成真实税务申报数据,返回的Gift Aid相关字段均为模拟值,只要接口不报错、后台能识别到传递的勾选状态,就说明接入逻辑正常。

提醒:Gift Aid是英国慈善捐赠专属功能,非捐赠类普通商品交易不要传递该字段,否则会被PayPal风控规则拦截。

内容的提问来源于stack exchange,提问作者Faizan Haidar Khan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 12:54:15