无法找到 NAB Transact HPP 测试 URL
明确结论
https://transact.nab.com.au/test/hpp/payment 是支付请求的提交端点,不是可以直接在浏览器中打开的普通测试页面。在地址栏访问该 URL 时,浏览器发送的是 GET 请求。此时出现错误、空白页或无法访问,并不代表这个 URL 已经失效。
正确的做法是使用 NAB Transact 提供的测试商户凭据,根据对应的 HPP 集成文档,通过 HTML 表单向该地址发送 POST 请求。如果格式正确的 POST 请求仍然失败,不要自行尝试其他域名。测试端点或账户配置可能已经调整,需要联系 NAB Transact 支持团队或开户机构,获取适用于当前账户的 HPP 测试地址和最新版集成文档。
正确的测试方式
提交测试请求前,请先确认:
- 测试商户账户已经开通 Hosted Payment Page。
- 当前使用的是测试环境凭据,而非生产环境凭据。
- 请求方法是
POST。 - 必填字段、字段名称和签名算法与账户所用版本的文档一致。
- 返回地址是 NAB Transact 接受的 URL,并且能从测试环境访问。
- 本机和服务器支持当前要求的 TLS 版本及证书链。
可以按照下面的结构创建一个最小化提交页面:
<form
id="nab-hpp-form"
method="post"
action="https://transact.nab.com.au/test/hpp/payment"
>
<!--
在此放入 NAB Transact 为当前 HPP 版本规定的字段,
例如商户标识、订单号、金额、返回地址和签名等。
字段名必须以账户对应的官方文档为准。
-->
<button type="submit">进入测试支付页面</button>
</form>
也可以用 curl 检查该端点是否接受 POST 请求:
curl --verbose \
--request POST \
'https://transact.nab.com.au/test/hpp/payment' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'FIELD_NAME=FIELD_VALUE'
其中的 FIELD_NAME 和 FIELD_VALUE 只是占位符,不能直接用于交易。即使端点本身可用,只要缺少必填字段或签名不正确,仍然会返回错误页面。
如何判断问题出在哪里
如果直接打开 URL 时失败,但通过表单提交后可以进入支付页面,说明端点正常,只是直接访问时使用了错误的请求方法。
如果表单提交后返回业务错误,可以依次检查:
- 测试商户号是否正确;
- 金额单位是否符合文档要求;
- 订单号格式是否有效;
- 签名字段的顺序、编码和密钥是否正确;
- 是否将测试凭据与生产 URL 混用;
- 当前商户账户是否已经启用 HPP 功能。
如果遇到 DNS、TLS、连接超时或 HTTP 404、410 等错误,请保存完整的响应信息,并联系 NAB Transact 支持团队确认端点状态。提交工单时,建议附上:
- 商户号,但不要提交密码、密钥或完整卡号;
- 使用的 URL 和请求时间;
- HTTP 状态码;
- 响应正文或错误截图;
- 请求方式;
- 集成文档的名称和发布日期。
获取当前有效地址
支付网关地址与具体的账户和产品配置有关,搜索引擎或旧版 PDF 中记录的地址未必适用于当前账户。可以通过以下途径获取准确信息:
- 查看 NAB Transact 商户后台中的开发或集成资料。
- 查找开户邮件、测试账户开通通知和 HPP 配置邮件。
- 联系 NAB Transact 技术支持,索取当前的 HPP 测试端点、生产端点以及与之匹配的接口文档。
- 确认账户使用的是经典 NAB Transact HPP,还是已经迁移到其他支付产品。
在获得官方确认之前,不要将网上找到的相似地址直接用于生产,也不要把 /test/ 简单替换为 /live/。支付端点、签名规则和商户权限需要相互匹配,否则即使页面可以打开,交易仍可能失败。
备注:内容仅供参考。
