出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了

出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了

上一篇介绍了怎么申请 PayPal 个人卖家账户,出海收款指南:PayPal 支持个人账户申请了,半小时搞定

这篇接着讲怎么把 PayPal 接入到自己的网站里。

我用的是 Next.js,整个流程走下来,核心代码不复杂,但踩了几个坑,这里一起记录。

一、获取 API 凭据

登录 PayPal 开发者后台 https://developer.paypal.com/,左上角可以切换 Sandbox(测试)和 Live(生产)环境。

图片[1]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

 

先在 Sandbox 环境下测试,点击 “Apps & Credentials”,然后 “Create App”,App Name 可以填自己项目名称,Type 选 Merchant

图片[2]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

图片[3]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

创建完成后会看到 Client ID 和 Secret,这两个值很重要。

图片[4]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

 

把它们加到项目的 .env.local 文件里:

PAYPAL_CLIENT_ID=你的ClientID
PAYPAL_CLIENT_SECRET=你的Secret
PAYPAL_MODE=sandbox

测试没问题后,切到 Live 环境重新创建一个 App,拿到生产环境的凭据,把 PAYPAL_MODE 改成 live 就行。

图片[5]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

 

二、集成方式选择

PayPal 提供了好几种接入方式,根据实际的业务需求可以选择不同的方案。

方式一:PayPal.Me 链接

最简单的方式,在 PayPal 后台开启 PayPal.Me 功能,会得到一个专属链接(比如 paypal.me/YourName)。把链接发给买家,对方打开后输入金额就能付款。适合社交媒体交易、朋友转账这种场景,不需要写任何代码。

地址:https://www.paypal.com/paypalme/my/settings

图片[6]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

图片[7]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

 

图片[8]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

 

方式二:支付按钮 / 付款链接(No-Code)

在 PayPal 后台可以创建付款链接和二维码,适合还没有网站的情况。也可以生成一个”立即购买”按钮的 HTML 代码,复制粘贴到网页上就能用。适合简单的静态网站,比如个人博客卖电子书、小工具网站收费下载。不需要开发能力,但定制性比较差。

地址:https://www.paypal.com/ncp/links/create

图片[9]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

如果你卖的是固定价格的服务,用这里的付款链接更合适;如果是接受打赏或者金额不确定的情况,用 PayPal.Me。

方式三:JavaScript SDK

在网页上嵌入 PayPal 的 JS SDK,页面上会显示 PayPal 按钮,用户点击后弹出支付窗口,就在当前页面不跳转。这种方式集成比较快,PayPal 官方说 15 分钟就能跑通。适合前端为主的项目,不需要太多后端逻辑。

JS SDK 的入口在开发者文档:https://developer.paypal.com/docs/checkout/standard/integrate/

方式四:REST API(Orders API)

完全通过后端调用 PayPal 的 API,自己控制整个支付流程。灵活度最高,但需要写后端代码。适合有自己订单系统、需要和业务逻辑深度集成的项目。

我的网站是 Next.js 项目,已经有一套订单系统,需要在支付成功后触发自动处理、发邮件等后续流程,所以选了第四种方式。

大概的逻辑是这样的:

用户在我的网站上点击 PayPal 支付 → 后端调用 PayPal API 创建订单,拿到一个跳转链接 → 用户被重定向到 PayPal 页面完成支付 → PayPal 把用户重定向回我的网站 → 后端调用 API 确认支付(Capture)→ 更新订单状态,触发后续业务逻辑。

图片[10]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

这里用的是 Return URL 同步回调模式,没有用 Webhook。对于目前的项目量级来说够用了,实现起来也简单。

Webhook 更可靠一些,但需要做签名验证,配置稍微麻烦,等业务量上来了再考虑。

三、测试环境怎么测

Sandbox 环境下用测试账号测试支付流程。

在开发者后台点击 Sandbox > Accounts,会看到 PayPal 自动生成的两个测试账号,一个 Personal(买家),一个 Business(卖家)。

图片[11]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

点击 Personal 账号右边的 “…” > View/Edit Account,就能看到测试账号的邮箱和密码。

图片[12]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

图片[13]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

支付的时候用这个测试账号登录就行,不会真的扣钱。

图片[14]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

图片[15]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

如果想测试信用卡支付,可以试试这些测试卡号(我自己没有去试)

  • Visa: 4032039668297305
  • Mastercard: 5425233430109903
  • CVV 随便填 3 位,过期日期填未来的日期
  • 账单地址要填美国地址,填中国地址会报错

四、踩过的坑

坑 1:测试前要先退出卖家账户

在 Sandbox 环境测试支付时,如果浏览器里还登着卖家账号,去付款页面会报错,提示”您当前是商家账号”之类的。因为 PayPal 不允许自己付款给自己。

测试前记得先退出,或者用无痕模式打开支付页面,然后操作付款。

坑 2:中国买家不能付款给中国卖家

这个是 PayPal 的政策限制。如果你的 PayPal 账户注册地是中国,国内买家用借记卡或信用卡付款时会看到这个提示:”很抱歉,账单地址在中国的买家不能使用PayPal付款给注册地在中国的卖家。”

图片[16]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

解决办法要么是用香港或美国的 PayPal 账户收款,要么引导国内用户走其他支付方式(比如 Stripe 支持的支付宝/微信)。

图片[17]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

五、最后一些补充

建议一个网站接入多种收款方式,提升付款率。

图片[18]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

Guest Checkout:PayPal 支持访客支付,用户不需要注册 PayPal 账号,直接填信用卡信息就能付款。在支付页面点”使用借记卡或信用卡付款”就行。

图片[18]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

图片[20]-出海收款实战:花了半天时间,终于把 PayPal 集成到网站里了-寻找资源网

 

关于 PayPal 的汇率、提现、转账损耗这些,涉及的东西还挺多的,如果感兴趣的话后面再单独聊聊。


收款搞定了,出海的“血脉”就算通了。
后面怎么获流、怎么定价、怎么持续出单,也是一场场的硬仗。
从去年 8 月到现在,出海圈有几百个兄弟了,大家一起信息共享,步子能迈得稳得多。
来自:彭少
原创:彭少
© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容