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

沙箱环境下Amazon Pay Dotnet SDK报OrderReferenceId无效

报错核心原因排查
  • 环境配置不匹配问题
    • 确认前端支付组件的运行环境、站点区域和后端SDK配置完全一致:沙箱、生产环境的OrderReferenceId完全不通用,北美、欧洲、日本等不同站点的ID也跨域不生效。如果前端加载的是生产环境的支付按钮生成ID,哪怕用沙箱测试账号完成交互,后端调用沙箱接口时也会判定ID无效;反过来前端配置沙箱模式但后端SDK连接生产端点,同样会触发该报错。
    • 排查沙箱初始化标记:前端加载Amazon Pay组件时,必须显式开启沙箱测试模式,未开启时生成的ID默认归属生产环境,沙箱接口无法识别。
  • 请求参数不匹配问题
    • 校验WithAccessToken传入的令牌和当前AmazonOrderReferenceId属于同一次前端支付会话:不同会话的访问令牌和OrderReferenceId是强绑定关系,混用不同会话的参数时,系统会因为校验不到ID的归属关系,直接抛出无效错误。
    • 确认WithMerchantId传入的卖家ID和OrderReferenceId的归属卖家完全一致:如果卖家ID和ID所属的卖家主体不匹配,哪怕ID格式正确、字符完整,也会触发无效判定。
  • 数据传递异常问题
    • 排查后端接收amznOrdRefId的全链路,确认没有出现字符串截断、特殊字符转义错误的问题:前端回调返回的ID是固定格式的长字符串,如果通过URL传参时因为长度限制、编码错误截断了末尾字符,传入接口的ID和实际生成的ID不一致,就会触发报错。
一次性支付流程的补全实现要求
  • 前端侧:完成支付按钮初始化后,在onOrderReferenceCreate回调里拿到完整ID的同时,同步把当前会话的访问令牌一起传递给后端,不要拆分传递不同会话的参数。
  • 后端侧:初始化Dotnet SDK时,明确指定和前端一致的沙箱标识、对应站点区域;发起GetOrderReferenceDetails请求时,确保所有参数(访问令牌、OrderReferenceId、MerchantId、MWS授权令牌)和前端会话的配置完全匹配,不要硬编码其他会话的历史参数。

内容的提问来源于stack exchange,提问作者ramires.cabral

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.01 07:27:00