PAYATHON 2026

AliPay sandbox environment 的测试 API URL 是什么?

支付阿杰

明确结论

支付宝开放平台常用的沙箱网关是:

https://openapi.alipaydev.com/gateway.do

正式环境网关是:

https://openapi.alipay.com/gateway.do

这个沙箱地址只适用于已经接入支付宝开放平台沙箱的 API。你提到的 Cross-border shopping / Customs 接口未必提供公共沙箱,不能直接把正式 URL 的域名替换成 alipaydev.com。是否有测试环境,要看对应跨境产品的签约权限和支付宝提供的联调资料。

接入步骤

  1. 在支付宝开放平台创建应用,进入沙箱环境。
  2. 获取沙箱应用的 app_id。
  3. 配置应用公钥,妥善保存对应的应用私钥和支付宝沙箱公钥。
  4. 将 SDK 或服务端程序的网关设置为:
https://openapi.alipaydev.com/gateway.do
  1. 使用沙箱买家账号和沙箱资金测试支付流程。
  2. 上线时一并更换网关、app_id、密钥和账号,不要混用沙箱与生产配置。

Java 示例

支付宝开放平台 SDK 的典型配置如下:

String gatewayUrl = "https://openapi.alipaydev.com/gateway.do";

AlipayClient alipayClient = new DefaultAlipayClient(
    gatewayUrl,
    appId,
    merchantPrivateKey,
    "json",
    "UTF-8",
    alipayPublicKey,
    "RSA2"
);

生产环境需要改为:

String gatewayUrl = "https://openapi.alipay.com/gateway.do";

可以通过环境变量区分两套配置:

ALIPAY_GATEWAY=https://openapi.alipaydev.com/gateway.do
ALIPAY_APP_ID=沙箱应用ID
ALIPAY_PRIVATE_KEY=沙箱应用私钥
ALIPAY_PUBLIC_KEY=支付宝沙箱公钥

HTTP 请求示意

支付宝网关通常根据请求参数中的 method 判断具体 API,并不是每个 API 都有单独的 URL:

curl -X POST 'https://openapi.alipaydev.com/gateway.do' \
  --data-urlencode 'app_id=你的沙箱应用ID' \
  --data-urlencode 'method=alipay.trade.page.pay' \
  --data-urlencode 'format=JSON' \
  --data-urlencode 'charset=UTF-8' \
  --data-urlencode 'sign_type=RSA2' \
  --data-urlencode 'timestamp=2026-08-31 12:00:00' \
  --data-urlencode 'version=1.0' \
  --data-urlencode 'biz_content={"out_trade_no":"TEST_10001","total_amount":"0.01","subject":"Sandbox test"}' \
  --data-urlencode 'sign=按支付宝规则生成的签名'

这条命令仅用于展示请求结构。sign 必须使用沙箱应用私钥,并按照支付宝规定的参数排序和签名规则生成。

关于 Cross-border / Customs API

跨境支付、报关等接口可能有单独的产品权限,也可能使用旧版协议或专用联调环境。下载包中的示例地址并不能证明该产品支持开放平台的公共沙箱。

接入这类接口前,需要确认:

  • 商户签约的具体跨境产品名称;
  • 接口使用 openapi 还是旧版 mapi 协议;
  • 该接口是否已在沙箱应用的产品列表中开放;
  • 是否需要支付宝或服务商提供专用测试商户号、测试账号和网关;
  • 报关机构、海关渠道及异步通知是否支持端到端测试。

如果沙箱控制台中找不到对应 API,应联系支付宝技术支持或签约渠道申请联调环境,不要自行猜测 mapi.alipaydev.com 之类的地址。

注意事项

  • 沙箱和生产环境分别使用独立的 app_id、密钥、支付宝公钥和账号。
  • 回调地址 notify_url 必须能被支付宝服务器访问,本机 localhost 通常无法使用。
  • 验签时要使用支付宝公钥,不能使用商户自己的应用公钥。
  • 沙箱支付成功只能说明基本请求、签名和回调流程可用,不能说明跨境报关链路也已通过验证。
  • 旧文档中的接口可能已经迁移或停止开放。实际可用的 API 和产品权限,应以当前应用控制台显示的内容为准。

备注:内容仅供参考。