本沙盒是一个 Antom(Alipay+)兼容的模拟收单环境。把你对接 Antom 的代码网关指向本沙盒、用你的 sandbox API Key,即可联调收银台、回调、多钱包、各类失败场景;调通后把网关换回真 Antom + 真凭据,代码直接复用。沙盒全程模拟,不扣真钱。
Base URL: https://jiandtc.space/api/sandbox/v1
自检 Key 是否可用:
curl -H "X-API-Key: <你的KEY>" https://jiandtc.space/api/sandbox/v1/ping
# → {"ok":true,"scopes":["sandbox:test"],"industry":"game"}
每个请求带请求头 X-API-Key: <你的KEY>。沙盒 Key 仅能访问 /api/sandbox/v1/*,不能访问生产接口。
curl -X POST https://jiandtc.space/api/sandbox/v1/payments/create \
-H "X-API-Key: <KEY>" -H "Content-Type: application/json" \
-d '{
"paymentRequestId": "your_unique_id_001",
"order": { "referenceOrderId": "role#8821",
"orderAmount": { "currency": "MYR", "value": "990" } },
"paymentMethod": { "paymentMethodType": "TNG" },
"paymentNotifyUrl": "https://你的服务器/antom/callback"
}'
# → { "result":{"resultStatus":"S"}, "paymentRequestId":"...", "paymentId":"...",
# "paymentSessionData":"...", "normalUrl":"https://jiandtc.space/sandbox/cashier/..." }
钱包 paymentMethodType:TNG / BOOST(MYR)、ALIPAY_CN(CNY)、ALIPAY_HK(HKD)。约 2 秒后我们向你的 paymentNotifyUrl 发送签名结果通知(见第 5 节)。
curl -X POST .../payments/inquiry -H "X-API-Key: <KEY>" \
-d '{"paymentRequestId":"your_unique_id_001"}'
# → {"result":{...},"paymentStatus":"SUCCESS|PROCESSING|FAIL"}
curl -X POST .../refunds -H "X-API-Key: <KEY>" \
-d '{"paymentId":"<上一笔 paymentId>","refundAmount":{"currency":"MYR","value":"990"}}'
# 1) 签约拿 accessToken
curl -X POST .../agreements/sign -H "X-API-Key: <KEY>" -d '{"agreementRequestId":"sub_001"}'
# → {"accessToken":"sbxtoken_..."}
# 2) 用 accessToken 扣款(续费 = 用同一 token 再调一次)
curl -X POST .../payments/auto-debit -H "X-API-Key: <KEY>" \
-d '{"accessToken":"sbxtoken_...","paymentAmount":{"currency":"MYR","value":"1990"},
"paymentNotifyUrl":"https://你的服务器/antom/callback"}'
返回该行业的测试场景清单(每个场景含端点、示例参数、magic value、预期结果)。
用金额尾数主动触发各种结果,测你的系统对失败的处理:
| 金额 value 尾数 | 结果 | 回调行为 |
|---|---|---|
| 正常(如 990) | SUCCESS 成功 | ~2s 后成功通知 |
…11(如 911) | DECLINED 拒付 | 失败通知 PAYMENT_FAILED |
…22(如 922) | TIMEOUT 超时 | 不发回调 → 用 inquiry 自查 |
…33(如 933) | WEBHOOK_FAIL | 第1次坏签名(你应拒绝)+ 重试发正确(你应接受且幂等) |
…44(如 944) | INSUFFICIENT_BALANCE | 失败通知 INSUFFICIENT_BALANCE |
支付结果由我们 POST 到你的 paymentNotifyUrl,通知体为 Antom 形态:
{ "notifyType":"PAYMENT_RESULT",
"result":{"resultStatus":"S","resultCode":"SUCCESS"},
"paymentRequestId":"your_unique_id_001", "paymentId":"sbxpay_...",
"paymentAmount":{"currency":"MYR","value":"990"} }
请求头带签名(与 Antom 一致):
client-id: CUBE_SANDBOX
request-time: 2026-06-03T15:00:00.000+08:00
signature: algorithm=RSA256,keyVersion=1,signature=<urlencoded base64>
验签(SHA256withRSA):签名串 = "POST " + 你的回调path + "\n" + client-id + "." + request-time + "." + body,用沙盒公钥验。沙盒公钥:/assets/sandbox_webhook_public_key.pem
client-id 从请求头动态读取即可。https://jiandtc.space/api/sandbox/v1 → 真 Antom https://open-sea-global.alipay.com本服务为支付对接测试环境技术服务,非真实收单,不持有客户资金。详见《跨境支付沙盒服务协议》。