You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

PayPal支付集成问题:结账时无法修改国家设置

解决PayPal结账时国家信息无法修改的问题

嘿,我一眼就发现问题所在了——你代码里的address_override参数设成1啦!这个参数的作用就是强制锁定你预设的地址信息,不让用户在PayPal结账页面修改任何地址字段,包括国家信息。

要解决这个问题,只需要做一个小改动:

  • <input type="hidden" name="address_override" value="1">改成<input type="hidden" name="address_override" value="0">,或者直接删掉这个隐藏字段(因为它的默认值就是0)。

修改后的完整代码如下:

<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
  <input type="hidden" name="cmd" value="_s-xclick">
  <div class="form-group">
    <input type="hidden" name="address_override" value="0"> <!-- 这里改为0 -->
    <input type="hidden" name="address1" value="Shipping Address">
    <input type="hidden" name="address2" value="Building name and office number">
    <input type="hidden" name="city" value="Tokyo">
    <input type="hidden" name="zip" value="2024">
    <input type="hidden" name="country" value="JP">
  </div>
</form>

再给你补充点细节:

  • address_override=0时,PayPal会把你预设的地址(包括JP这个国家)作为默认值展示在结账页面,用户可以自由修改所有地址相关内容,包括切换国家。
  • 如果完全不需要预设地址,直接删掉address_override和所有地址字段就行,用户会看到PayPal默认的地址填写界面。

这样调整后,用户就能正常修改国家信息啦!

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

火山引擎 最新活动