You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

使用secure3d Mastercard通过Coinbase API下单后订单丢失的正确流程咨询

正确使用Coinbase API结合Secure3D完成下单的流程

嘿,咱们先理清楚你遇到的问题——用户完成3D验证后跳回Coinbase却找不到订单,大概率是验证后的回调环节没处理好,导致订单状态没同步更新,或者初始流程有遗漏。下面是经过实践验证的完整流程,你可以逐一对照检查:

1. 创建带Secure3D触发的初始订单

调用Coinbase创建订单的API时,要确保请求参数里正确填写你的Secure3D Mastercard支付信息。成功创建后,Coinbase的响应里会返回secure3d_verification对象,里面包含redirect_url(用户要跳转的3D验证页面)和verification_id(验证唯一标识)。

划重点:这一步一定要把订单IDverification_id存好,后续回调和状态查询都离不开它们。

2. 引导用户完成3D验证

把用户重定向到secure3d_verification.redirect_url,让用户在银行的页面完成3D验证(比如输入验证码、指纹验证等)。

3. 处理验证回调(最关键的一步!)

用户完成验证后,Coinbase会自动把用户重定向回你创建订单时指定的return_url,同时会在URL参数里带上验证相关的参数(比如verification_id、验证成功状态success,以及关联的订单ID)。

  • 你必须在这个回调接口里,主动调用Coinbase的API查询订单状态,或者调用专门的3D验证结果查询接口,确认验证是否成功。
  • 只有当验证成功后,Coinbase才会把订单状态更新为“待确认”或“已支付”;如果验证失败,订单会被标记为无效。

很多人踩坑就在这儿:直接让用户跳去Coinbase的确认页,却没先通过API同步验证结果和订单状态,导致Coinbase那边的订单还是“待验证”状态,自然就会显示找不到订单。

4. 引导用户到正确的订单页面

确认验证成功且订单状态更新后,再引导用户访问Coinbase的订单详情页(用你保存的订单ID拼接正确的页面URL),而不是直接用验证后的跳转链接(那个链接通常是临时的,不对应最终的订单状态)。

常见问题排查方向

  • 检查创建订单时的return_url是否配置正确,确保Coinbase能正常回调到你的服务。
  • 确认你在回调环节没有丢失verification_id和订单ID的关联,导致后续查询不到对应订单。
  • 查看Coinbase API的日志,看看验证完成后有没有返回订单状态更新的错误(比如支付失败、验证超时等)。

内容的提问来源于stack exchange,提问作者Reinhard Höll

火山引擎 最新活动