鉴权方式
所有接口都需要携带身份凭证。EasyAPI 支持两种鉴权方式:服务器之间调用使用 密钥模式(appKey / appSecret),前端、H5 或嵌入卡片等不便暴露密钥的场景使用 访问令牌模式(accessToken)。
密钥模式
| 参数 |
类型 |
必填 |
说明 |
| appKey |
string |
必填 |
服务密钥 Key |
| appSecret |
string |
必填 |
服务密钥 Secret |
| taxNumber |
string |
必填 |
企业纳税人识别号,指定本次操作的企业;必须是该密钥已关联的企业 |
- 登录 发票控制台,进入「服务认证」页面创建密钥;不填写
appKey / appSecret 时系统自动生成,也可以手动填写以便多家企业共用同一组密钥。
GET 接口把密钥放在 Query String,POST / PUT 接口放在 JSON 请求体中。
- 密钥等同于企业开票权限,请只保存在服务端,不要写入前端代码或移动端 App。
bash
# GET 请求示例
curl "https://fapiao-api.easyapi.com/invoice/ORDER20260101/query?appKey=你的appKey&appSecret=你的appSecret&taxNumber=91320211MA1WML8X6T"
json
// POST 请求体示例
{
"appKey": "你的appKey",
"appSecret": "你的appSecret",
"taxNumber": "91320211MA1WML8X6T",
"outOrderNo": "ORDER20260101",
"...": "其他业务参数"
}
访问令牌模式
| 参数 |
类型 |
必填 |
说明 |
| accessToken |
string |
必填 |
访问令牌,通过 获取访问令牌 接口用密钥换取 |
| taxNumber |
string |
必填 |
企业纳税人识别号;会校验令牌是否属于该企业 |
- 令牌与
username(用户标识)绑定,有效期 2 小时;过期后再次调用获取接口会返回新的令牌。
- 使用令牌调用接口时,
username 自动取令牌绑定的用户标识,无需再传。
- 传了
accessToken 就不需要再传 appKey / appSecret。
bash
curl "https://fapiao-api.easyapi.com/invoice/ORDER20260101/query?accessToken=令牌&taxNumber=91320211MA1WML8X6T"
多企业(平台型客户)
一组密钥可以关联多家企业,每次调用都通过 taxNumber 指定本次操作的企业:
taxNumber 必须是该密钥已关联的企业,否则返回 非法操作税号。
- 服务端对未传
taxNumber 的旧请求仍按密钥的默认企业处理,但新接入请务必传入,避免多企业场景下开错企业。
- 平台型客户可以通过 企业注册接口 用自己的密钥为下游企业开通服务,新注册的企业自动沿用调用方这组密钥。
鉴权错误
| HTTP 状态 |
code |
message |
说明 |
| 400 |
-1 |
密钥不能为空 |
未传 appKey / appSecret / accessToken |
| 400 |
-1 |
appKey或appSecret参数不能为空 |
密钥不完整 |
| 400 |
-7 |
认证失败 |
appKey / appSecret 不正确,或对应企业已停用 |
| 400 |
-1 |
非法操作税号 |
taxNumber 不属于该密钥关联的企业 |
| 400 |
-1 |
accessToken非法参数 |
令牌不存在 |
| 400 |
-1 |
accessToken已过期 |
令牌超过 2 小时,请重新获取 |
| 400 |
-1 |
accessToken不属于该税号xxx |
令牌与 taxNumber 不匹配 |
| 400 |
-1 |
xxx服务已到期,请直接续费或联系客服13656171020 |
企业服务到期 |