错误码
错误响应的格式、HTTP 状态码与响应体 code 的对应关系,以及处理方式。
判断请求是否成功
请以 HTTP 状态码判断请求是否成功。错误响应体中的 code 不一定与 HTTP 状态码相同。
成功响应:
{
"code": 200,
"message": "OK",
"traceId": "trace-uuid-string",
"data": {}
}错误响应:
{
"code": 500,
"message": "Payment intent not found: pi_MNOL0POUV8IDPXCD",
"traceId": "trace-uuid-string"
}HTTP 状态码与响应体 code
| 场景 | HTTP 状态码 | 响应体 code | 处理方式 |
|---|---|---|---|
| 业务错误,例如资源不存在、当前资源状态不允许操作 | 400 | 500 | 按 message 说明处理,不要原样重试 |
| 参数校验失败 | 400 | 404 | 按 message 修正请求参数 |
| 未授权或 Token 无效 | 401 | — | 重新获取 Access Token |
| 服务内部错误 | 500 | — | 联系 Stabo 技术支持,并提供 traceId |
message 说明具体原因。联系技术支持时,请提供响应中的 traceId。
获取 Token 时的错误
缺少 X-Tenant-ID 或 X-Tenant-Type 时,Token 接口返回 invalid_client。详见鉴权。
各产品的错误说明
各产品的状态和原因枚举见产品指南的附录。例如 Checkout 的状态附录。On-Ramp 的业务错误按响应体中的 data.errorCode 区分,见 On-Ramp 的业务错误说明。
排查建议
- 先看 HTTP 状态码,再看响应体中的
message。 - 收到 401 时,重新获取 Token。
- 收到 400 时,对照通用约定检查请求头、
Idempotency-Key和数据格式。 - 记录
traceId,需要联系技术支持时一并提供。