我需要请 Waffo 给我开一个 sandbox 吗?
不需要。sandbox 是自助的,会自动为您创建。当您 注册并提交业务信息后,会自动为您的账户开通一个默认 sandbox, 无需任何进一步请求,也无需 Waffo 员工参与。 没有需要填写的申请表单。 您接下来做的是可选的细化:设置向导让您告诉 Waffo 您希望 sandbox 呈现哪些产品、定价模式、市场和支付方式, 以便 sandbox 反映您实际正在构建的集成。哪些 URL 是 sandbox,哪些是生产?
它们是不同主机名上的独立环境。Portal 中没有任何东西 可以在两者间切换——您登录的是其中之一。
您当前登录环境的 API 地址也显示在
商户 Portal → Integration,所以您始终可以在
Portal 内部确认,而不是靠文档。
如果您使用 Waffo SDK,请设置
Environment.SANDBOX 或 Environment.PRODUCTION,
而不是手动编辑 URL。
我的防火墙或 CSP 需要放行哪些域名?
对于您自己的页面和网络策略,上面的域名就是面向客户的 完整集合。实践中:
两点值得从一开始就纳入的注意事项:
- **放行主机名,不是 IP。**上线检查清单建议 DNS TTL 为 60 秒,并明确警告不要固定 Waffo 的 IP 地址;它们 不稳定,也不公开。
- Sandbox 和生产的主机名不同,所以针对一个环境编写的策略 会静默地拦截另一个。请按环境参数化主机, 而不是硬编码。
我的 sandbox 和生产是同一个商户 ID 吗?
不是——sandbox 有自己的商户 ID,您在 sandbox 环境中时, 您的用户账户挂在该 sandbox 商户 ID 下。 您永远不需要猜自己在看哪一个。商户 Portal → Integration 在凭证表格上方显示您当前登录环境的商户 ID, 以及该环境的 API 地址。 sandbox Portal 会话还带有一个常驻横幅,说明您 在 sandbox 中,且所有数据都是测试数据。 对您集成的影响:sandbox 凭证只能操作 sandbox 数据,生产凭证只能操作生产数据。用一个环境的 API key 认证、 却请求另一个环境主机的请求,会在凭证检查环节失败,而不是在您的业务逻辑 ——确切的错误码见 认证与签名 FAQ。sandbox 设置向导到底改变什么?
共六步,每个选项塑造的是您的 sandbox 长什么样,而不是 它被允许做什么:
第 3 步和第 4 步共同驱动第 5 步:候选支付方式列表
由您选择的产品、定价策略和市场推导得出。如果
您期待的某种方式在第 5 步没有出现,原因几乎总是两步之前
的市场或定价选择,而不是缺少权限。
之后我能修改 sandbox 配置吗?编辑是追加还是替换?
可以修改,且编辑替换整个已选集合——不是 追加。重新提交时,您发送的选择成为完整 配置:您遗漏的任何内容都不再是其中一部分。 实际影响:编辑前,先打开当前配置,从已选内容出发, 而不是只发送您心里想的增量。只发送”新增的那个方式” 会移除其他所有内容。我按了”Clear all”或”Reset”,能撤销吗?
可以——在您保存之前,两者都不会触及已保存的配置。
所以
Reset 就是 Clear all 的撤销,不保存直接离开页面
同样不会改动已保存的配置。两个操作都会先要求确认,
因为在未保存的编辑中,它们会破坏您进行中的
选择。
同一向导中有两个相关行为,比按钮更让人意外:更改
产品或定价策略会清空下方的支付方式和币种选择,
因为之前的选择在新选项下可能不再有效;没有任何已启用方式
的市场会从您的市场列表中移除,而不是作为空市场保留。
我的 sandbox 状态一直卡在 PROCESSING,每个状态是什么意思?
配置经历三个状态,只有最后一个表示 sandbox 对您可用:
因为是异步应用,短暂的
PROCESSING 是正常的,
向导的最后一步会轮询直到您的密钥存在,而不是让您
刷新。如果没有进展,配置记录会带有一条 Portal 展示出来的错误
信息,该失败也会在 Waffo 侧触发告警
——所以有用的做法是携您的 sandbox 商户 ID 联系集成支持,
而不是反复重新提交。
我的 sandbox 密钥从哪里来?我需要提交公钥吗?
Waffo 为您生成 sandbox 密钥对。向导最后一步和 商户 Portal → Integration 显示您的 sandbox API key、公钥和 私钥,您可以立即开始签名。 这与生产环境有意不同:
由此得出两条规则,均在
上线检查清单中:
- **绝不要把 sandbox 密钥材料带入生产。**生成一对新的 生产密钥。私钥曾在浏览器中显示过的密钥不是 生产机密。
- **主机和凭证一起切换。**它们是一组;只改一个 不改另一个会产生看起来像代码 bug 的签名失败。
sandbox 里的费率、结算周期、提现阈值和限额是我真实的商务条款吗?
不是。sandbox 配置从默认值开通,以便流程能端到端跑通; 它不是您商务协议的副本,您在 sandbox 中看到的任何数字 都不应被理解为报价或将在生产中适用的数值。 请把 sandbox 的金额、周期和阈值当作测试机制的脚手架—— 字段有值、计算会跑、状态会流转——并在上线后 对照您的生产配置确认实际数值。sandbox 连接真实的支付通道吗?
不连接。sandbox 不连接真实支付通道,也没有真实资金 流动。sandbox 收银台页面不提供真实的支付方式选择, 而是给您模拟控件,让您直接决定结果。 模拟流程对所有支付方式都相同。 这是关于 sandbox 结果最需要内化的一点: sandbox 证明的是您的集成正确处理了每种结果。它 不能证明某种具体支付方式对真实终端用户的表现。 能复现什么、不能复现什么,列在 Sandbox 模拟限制 FAQ。在 sandbox 启用某支付方式会在生产也启用吗?
不会,两个方向都不同步。sandbox 配置和生产 配置是独立的:sandbox 设置向导只存在于 sandbox Portal,从生产环境完全无法访问,您对生产配置 所做的更改也不会流回 sandbox。 所以能用某种方式交易的 sandbox 说明您的代码路径 可行——它不是权限。生产可用性取决于您的 协议,为生产启用某方式是单独的步骤;见 支付方式开通。我的 sandbox 交易会出现在真实的结算、账单或对账文件里吗?
不会。sandbox 是拥有自己数据的独立环境;sandbox 活动 只产生 sandbox 侧记录,sandbox 导出写入 sandbox 范围的位置。您在 sandbox 中做的任何事都不会进入生产 结算批次、生产对账单或生产对账文件。 这种隔离的另一面也值得规划:sandbox 结算 记录是为了测试您的文件解析和报表而存在的,它们携带的是 由默认值推导的 sandbox 金额,而不是来自您的协议。我能在 sandbox 里用真实客户的邮箱和手机号吗?
不要。验收标准已经要求参数值看起来真实 而不是test 占位符,推荐的客户
邮箱形式是每个测试用户唯一的 userId@examples.com 风格地址——
它同时满足两项要求,且永远不会指向真实收件箱。
参数要求见
集成验收标准。
这件事重要的两个理由,超出礼貌层面:sandbox 流程确实会产生
通知,当您需要证明某条通知已产生时,一个您不控制的地址
无法检查。请使用您拥有的地址。
凭证或配置变更多久生效?
不同层面,不同窗口——两者都不是即时的:
所以凭证变更后立即进行的测试可能合理地在旧配置上
失败。如果在您轮换或激活某项后请求立刻失败,请等过上述窗口,
用完全相同的请求重试,再去调试您的签名代码。
我团队里谁能看到 sandbox 凭证?
Integration 页面——API key、Waffo 公钥,以及 sandbox 中 生成的私钥——需要 Dev 或 Admin 角色。该页面上的生产密钥 材料以显示/隐藏控件遮蔽,并提供无需取消遮蔽即可 复制的操作;请使用复制操作,而不是在共享屏幕或 录制的通话中显示数值。 由于 sandbox 私钥材料是设计上就会显示的,请把 sandbox 凭证当作团队共享的测试材料,把生产凭证当作 有不同处理标准的机密。它们不是同一类东西。准备好测试结果而不是访问了?请继续阅读 Sandbox 模拟限制 FAQ了解 能复现什么,以及 Sandbox 测试 FAQ了解模拟器 操作演练。