错误码

错误响应的格式、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处理方式
业务错误,例如资源不存在、当前资源状态不允许操作400500按 message 说明处理,不要原样重试
参数校验失败400404按 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 的业务错误说明。

排查建议

  1. 先看 HTTP 状态码,再看响应体中的 message。
  2. 收到 401 时,重新获取 Token。
  3. 收到 400 时,对照通用约定检查请求头、Idempotency-Key 和数据格式。
  4. 记录 traceId,需要联系技术支持时一并提供。

本页目录