商起点开放平台 API 文档
商起点开放平台为第三方 App 开发者提供商户经营管理能力的 RESTful API。通过接入本平台,您的 App 可以实现商户管理、商品管理、订单处理、会员卡、优惠券、预约、支付等完整的商业闭环功能。
基础信息
- Base URL:
https://{domain}/open-api - 数据格式: JSON
- 字符编码: UTF-8
- 版本: v1.0
- 接口总数: ~146 个
接入准备
- 在商起点运营后台注册开发者账号
- 创建应用,获取
AppKey和AppSecret - 配置 IP 白名单(可选)
- 申请所需的 API 权限模块
接口总览
| 模块 | 接口数量 | 权限模块 |
|---|---|---|
| 商户数据 | 13 | merchant |
| 商品数据 | 15 | product |
| 订单数据 | 15 | order |
| 会员卡数据 | 14 | member_card |
| 优惠券 | 21 | coupon |
| 抵金券 | 9 | cash_voucher |
| 客户管理 | 9 | customer |
| 可预订资源 | 11 | resource |
| 预约数据 | 10 | booking |
| 支付(收银台) | 2 | payment |
| 提现 | 5 | withdraw |
| B2B转账 | 2 | transfer |
| 固定收款码 | 3 | — |
| 数据统计 | 7 | statistics |
| 实名认证 | 4 | real_name_auth |
| 支付宝授权 | 4 | alipay_auth |
| 风控模型 | 2 | risk |
鉴权机制
所有 API 请求必须携带以下 HTTP 请求头:
| 请求头 | 说明 | 示例 |
|---|---|---|
X-App-Key | 应用标识 | app_abc123 |
X-Timestamp | 当前时间戳(秒级) | 1713254400 |
X-Nonce | 随机字符串(防重放) | a1b2c3d4e5 |
X-Sign | HMAC-SHA256 签名 | Base64编码的签名 |
签名算法
签名原文 = AppKey + Timestamp + Nonce + RequestBody
X-Sign = Base64( HMAC-SHA256( AppSecret, 签名原文 ) )⚠️ 安全策略
- 时间戳有效窗口:±5 分钟
- Nonce 防重放:同一 Nonce 5 分钟内不可重复使用
- IP 白名单:如已配置,仅允许白名单内 IP 访问
- 限流:按应用配置的 QPS 上限进行限流
通用说明
统一响应格式
{
"code": 0,
"msg": "success",
"data": { ... }
}code = 0 表示成功,非 0 表示失败。分页接口返回 data.list 和 data.total。
分页参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageNo | Integer | 否 | 页码,默认 1 |
| pageSize | Integer | 否 | 每页条数,默认 10 |
权限类型
| 类型 | 说明 |
|---|---|
| READ | 只读权限 |
| WRITE | 读写权限 |
| FULL | 完全权限(含删除) |
用户标识
externalUserId— 您的 App 中的用户唯一标识appUserId— 商起点平台内部用户 ID(兼容旧版,建议使用 externalUserId)
商户数据
权限模块:merchant · 13 个接口
5.1 查询商户列表
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageNo | Integer | 否 | 页码 |
| pageSize | Integer | 否 | 每页条数 |
| merchantId | Long | 否 | 指定商户ID |
权限:merchant:read
5.2 查询商户详情
权限:merchant:read
5.3 查询门店列表
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageNo | Integer | 否 | 页码 |
| pageSize | Integer | 否 | 每页条数 |
| merchantId | Long | 否 | 商户ID |
权限:merchant:read
5.4 查询门店详情
权限:merchant:read
5.5 查询附近门店
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| longitude | Double | 是 | 经度 |
| latitude | Double | 是 | 纬度 |
| radius | Integer | 否 | 搜索半径(米) |
权限:merchant:read
5.6 查询门店营业时间
权限:merchant:read
5.7 商户注册(入驻)
权限:merchant:write
5.8 提交商户认证
权限:merchant:write
5.9 查询认证状态
权限:merchant:read
5.10 更新商户信息
权限:merchant:write
5.11 创建门店
权限:merchant:write
5.12 更新门店
权限:merchant:write
5.13 删除门店
权限:merchant:write
商品数据
权限模块:product · 15 个接口
6.1 查询商品列表
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageNo | Integer | 否 | 页码 |
| pageSize | Integer | 否 | 每页条数 |
| merchantId | Long | 否 | 商户ID |
| categoryId | Long | 否 | 分类ID |
| status | Integer | 否 | 状态(0=上架, 1=下架) |
权限:product:read
6.2 查询商品详情
权限:product:read
6.3 搜索商品
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| keyword | String | 否 | 搜索关键词 |
| merchantId | Long | 否 | 商户ID |
| categoryId | Long | 否 | 分类ID |
| minPrice | Integer | 否 | 最低价格(分) |
| maxPrice | Integer | 否 | 最高价格(分) |
| sortField | String | 否 | 排序字段 |
| sortOrder | String | 否 | 排序方向(asc/desc) |
权限:product:read
6.4 查询商品分类列表
权限:product:read
6.5 创建商品
权限:product:write
6.6 更新商品
权限:product:write
6.7 删除商品
权限:product:full
6.8 商品上架/下架
{ "status": 0 } // 0=上架, 1=下架权限:product:write
6.9 创建商品分类
权限:product:write
6.10 更新商品分类
权限:product:write
6.11 删除商品分类
权限:product:full
6.12 库存入库
权限:product:write
6.13 库存出库
权限:product:write
6.14 查询库存变动日志
权限:product:read
6.15 查询商品统计
权限:product:read
订单数据
权限模块:order · 15 个接口
7.1 查询订单列表
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageNo | Integer | 否 | 页码 |
| pageSize | Integer | 否 | 每页条数 |
| merchantId | Long | 否 | 商户ID |
| externalUserId | String | 否 | 用户标识 |
| status | Integer | 否 | 订单状态 |
权限:order:read
7.2 查询订单详情
权限:order:read
7.3 查询订单状态变更历史
权限:order:read
7.4 查询订单统计
权限:order:read
7.5 查询退款详情
权限:order:read
7.6 创建订单
{
"merchantId": 1,
"storeId": 1,
"externalUserId": "user_10001",
"orderType": 1,
"couponId": null,
"voucherIds": [],
"remark": "备注",
"items": [
{ "productId": 1, "quantity": 2, "price": 1000 }
]
}权限:order:write
7.7 取消订单
权限:order:write
7.8 确认收货
权限:order:write
7.9 核销订单
权限:order:write
7.10 申请退款
{
"refundAmount": 1000,
"reason": "退款原因"
}权限:order:write
7.11 订单评价
{
"content": "评价内容",
"rating": 5
}权限:order:write
7.12 订单支付
{
"channelCode": "wx_pub",
"userIp": "127.0.0.1",
"returnUrl": "https://your-app.com/return",
"channelExtras": {}
}权限:order:write
7.13 更新配送状态
{
"deliveryStatus": 1,
"deliveryNo": "SF1234567890"
}权限:order:write
7.14 确认预约订单
权限:order:write
7.15 变更预约订单
权限:order:write
会员卡数据
权限模块:member_card · 14 个接口
8.1 查询会员卡模板列表
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageNo | Integer | 否 | 页码 |
| pageSize | Integer | 否 | 每页条数 |
| merchantId | Long | 否 | 商户ID |
权限:member_card:read
8.2 查询会员卡模板详情
权限:member_card:read
8.3 创建会员卡购买单
{
"merchantId": 1,
"templateId": 1,
"externalUserId": "user_10001",
"phone": "13800138000",
"paymentMode": 0
}说明:paymentMode = 0(全款购卡)时,如用户未进件,可通过 phone 自动注册。
权限:member_card:write
8.4 创建会员卡购买收银台
{
"returnUrl": "https://your-app.com/return",
"expireMinutes": 30
}权限:member_card:write
8.5 查询会员卡购买单
权限:member_card:read
8.6 查询会员卡列表
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageNo | Integer | 否 | 页码 |
| pageSize | Integer | 否 | 每页条数 |
| merchantId | Long | 否 | 商户ID |
权限:member_card:read
8.7 查询会员卡详情
权限:member_card:read
8.8 会员卡充值
{
"amount": 10000,
"tierId": 1
}权限:member_card:write
8.9 生成会员卡核销二维码
返回:核销二维码信息(含 qrCodeUrl、requestNo)
权限:member_card:write
8.10 查询会员卡核销记录
权限:member_card:read
8.11 确认会员卡核销
{
"approved": true,
"remark": "确认核销"
}权限:member_card:write
8.12 查询会员卡消费记录
权限:member_card:read
8.13 查询会员卡统计
权限:member_card:read
8.14 申请会员卡退款
{
"cardNo": "MC20240001",
"externalUserId": "user_10001",
"refundAmount": 5000,
"refundReason": "退款原因",
"evidenceUrls": ["https://..."]
}权限:member_card:write
优惠券
权限模块:coupon · 21 个接口
9.1 查询优惠券列表
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageNo | Integer | 否 | 页码 |
| pageSize | Integer | 否 | 每页条数 |
| merchantId | Long | 否 | 商户ID |
权限:coupon:read
9.2 查询优惠券详情
权限:coupon:read
9.3 查询用户优惠券
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| externalUserId | String | 是 | App端用户标识 |
| merchantId | Long | 否 | 商户ID |
| pageNo | Integer | 否 | 页码 |
| pageSize | Integer | 否 | 每页条数 |
权限:coupon:read
9.4 查询优惠券模板列表
权限:coupon:read
9.5 查询可领取优惠券
权限:coupon:read
9.6 创建优惠券购买单
{
"merchantId": 1,
"templateId": 1,
"externalUserId": "user_10001",
"bizNo": "BIZ001",
"storeId": 1
}权限:coupon:write
9.7 创建优惠券购买收银台
{
"returnUrl": "https://your-app.com/return",
"expireMinutes": 30
}权限:coupon:write
9.8 查询优惠券购买单
权限:coupon:read
9.9 领取优惠券
{
"merchantId": 1,
"templateId": 1,
"externalUserId": "user_10001",
"storeId": 1
}权限:coupon:write
9.10 购买优惠券
权限:coupon:write
9.11 验证优惠券
权限:coupon:read
9.12 核销优惠券
{
"merchantId": 1,
"storeId": 1,
"remark": "核销备注"
}权限:coupon:write
9.13 退款优惠券购买单
权限:coupon:write
9.14 生成优惠券核销二维码
权限:coupon:write
9.15 查询优惠券核销记录
权限:coupon:read
9.16 创建优惠券模板
权限:coupon:write
9.17 更新优惠券模板
权限:coupon:write
9.18 发布优惠券模板
权限:coupon:write
9.19 暂停优惠券模板
权限:coupon:write
9.20 恢复优惠券模板
权限:coupon:write
9.21 批量发放优惠券
{
"merchantId": 1,
"externalUserIds": ["user_001", "user_002"]
}权限:coupon:write
抵金券
权限模块:cash_voucher · 9 个接口
10.1 购买抵金券
权限:cash_voucher:write
10.2 创建抵金券购买收银台
权限:cash_voucher:write
10.3 查询抵金券购买单
权限:cash_voucher:read
10.4 查询抵金券购买折扣配置
权限:cash_voucher:read
10.5 退款抵金券
权限:cash_voucher:write
10.6 生成抵金券核销二维码
权限:cash_voucher:write
10.7 赠送抵金券
权限:cash_voucher:write
10.8 撤销赠送
权限:cash_voucher:write
10.9 查询抵金券核销记录
权限:cash_voucher:read
客户管理
权限模块:customer · 9 个接口
11.1 客户进件建档
{
"externalUserId": "user_10001",
"realName": "张三",
"phone": "13800138000",
"idCardNumber": "110101199001011234",
"nickname": "小张",
"avatarUrl": "https://..."
}说明:客户进件是使用会员卡、优惠券等交易功能的前提。
权限:customer:write
11.2 查询客户列表
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| merchantId | Long | 否 | 商户ID |
| pageNo | Integer | 否 | 页码 |
| pageSize | Integer | 否 | 每页条数 |
权限:customer:read
11.3 查询客户详情
权限:customer:read
11.4 按手机号换取平台用户ID
权限:customer:read
11.5 查询客户消费记录
权限:customer:read
11.6 查询客户标签
权限:customer:read
11.7 添加客户标签
权限:customer:write
11.8 移除客户标签
权限:customer:write
11.9 查询客户统计
权限:customer:read
可预订资源
权限模块:resource · 11 个接口
12.1 查询资源列表
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| merchantId | Long | 否 | 商户ID |
| pageNo | Integer | 否 | 页码 |
| pageSize | Integer | 否 | 每页条数 |
权限:resource:read
12.2 查询资源详情
权限:resource:read
12.3 查询资源可用性
权限:resource:read
12.4 批量查询资源状态
权限:resource:read
12.5 查询资源统计
权限:resource:read
12.6 创建资源
权限:resource:write
12.7 更新资源
权限:resource:write
12.8 删除资源
权限:resource:full
12.9 更新资源状态
权限:resource:write
12.10 设置资源价格
权限:resource:write
12.11 设置资源排班
权限:resource:write
预约数据
权限模块:booking · 10 个接口
13.1 查询可用预约时间段
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| merchantId | Long | 是 | 商户ID |
| resourceId | Long | 否 | 资源ID |
| date | String | 否 | 日期(yyyy-MM-dd) |
权限:booking:read
13.2 查询预约列表
权限:booking:read
13.3 查询预约详情
权限:booking:read
13.4 查询预约统计
权限:booking:read
13.5 创建预约订单
权限:booking:write
13.6 变更预约
权限:booking:write
13.7 取消预约
权限:booking:write
13.8 确认预约
权限:booking:write
13.9 开始服务
权限:booking:write
13.10 完成服务
权限:booking:write
支付(收银台)
权限模块:payment · 2 个接口
14.1 创建收银台会话
{
"merchantId": 1,
"outTradeNo": "YOUR_ORDER_NO_001",
"subject": "商品购买",
"body": "商品描述",
"totalAmount": 10000,
"expireMinutes": 30,
"returnUrl": "https://your-app.com/return",
"attach": "自定义附加数据"
}{
"code": 0,
"data": {
"tradeNo": "123456789",
"cashierUrl": "https://cashier.example.com/pay?token=xxx"
}
}说明
totalAmount单位为分outTradeNo为您系统中的订单号,需保证唯一- 用户访问
cashierUrl完成支付 - 支付结果通过事件回调通知
权限:payment:write
14.2 查询支付结果
{
"code": 0,
"data": {
"tradeNo": "123456789",
"outTradeNo": "YOUR_ORDER_NO_001",
"tradeStatus": "SUCCESS",
"totalAmount": 10000,
"payTime": "2026-04-16T10:30:00",
"attach": "自定义附加数据"
}
}| 交易状态 | 说明 |
|---|---|
| WAIT_BUYER_PAY | 待支付 |
| SUCCESS | 支付成功 |
| REFUND | 已退款 |
| CLOSED | 已关闭 |
权限:payment:read
提现
权限模块:withdraw · 5 个接口
15.1 绑定提现账户
{
"externalUserId": "user_10001",
"accountType": 1,
"accountName": "张三",
"cardNo": "6222021234567890",
"bankName": "中国工商银行",
"bankBranch": "北京朝阳支行"
}权限:withdraw:write
15.2 解绑提现账户
权限:withdraw:write
15.3 查询用户提现账户列表
权限:withdraw:read
15.4 创建提现
权限:withdraw:write
15.5 查询提现状态
权限:withdraw:read
B2B转账
权限模块:transfer · 2 个接口
16.1 创建B2B转账
说明:开发者将分账资金转到 App 用户的账户
权限:transfer:write
16.2 查询B2B转账状态
权限:transfer:read
固定收款码
3 个接口
17.1 创建固定收款码
{
"merchantId": 1,
"storeId": 1,
"subject": "门店收款",
"defaultAmount": 0
}17.2 删除固定收款码
17.3 查询固定收款码列表
数据统计
权限模块:statistics · 7 个接口
18.1 查询经营概览
权限:statistics:read
18.2 查询销售报表
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| merchantId | Long | 是 | 商户ID |
| startDate | String | 否 | 开始日期 |
| endDate | String | 否 | 结束日期 |
| granularity | String | 否 | 粒度(day/week/month) |
权限:statistics:read
18.3 查询客户分析
权限:statistics:read
18.4 查询渠道分析
权限:statistics:read
18.5 查询预约分析
权限:statistics:read
18.6 创建报表导出任务
权限:statistics:read
18.7 查询导出任务状态
权限:statistics:read
实名认证
权限模块:real_name_auth · 4 个接口
19.1 提交身份证 OCR 识别
{
"idCardFrontUrl": "https://oss.example.com/front.jpg",
"idCardBackUrl": "https://oss.example.com/back.jpg"
}权限:real_name_auth:write
19.2 获取人脸核身 SDK 参数
权限:real_name_auth:write
19.3 查询人脸核身结果
权限:real_name_auth:read
19.4 查询认证状态
权限:real_name_auth:read
支付宝授权绑定
权限模块:alipay_auth · 4 个接口
20.1 获取支付宝授权配置
返回:支付宝 AppId 等配置信息
权限:alipay_auth:read
20.2 通过授权码绑定支付宝账号
{
"externalUserId": "user_10001",
"authCode": "支付宝授权码"
}权限:alipay_auth:write
20.3 查询用户支付宝绑定状态
权限:alipay_auth:read
20.4 解绑支付宝账号
{
"externalUserId": "user_10001"
}权限:alipay_auth:write
风控模型
权限模块:risk · 2 个接口
21.1 获取可调用的风控模型产品列表
权限:risk:read
21.2 执行风控模型产品
{
"merchantId": 1,
"externalUserId": "user_10001",
"creditAmount": 10000,
"input": {},
"timeout": 5000
}权限:risk:write
错误码
通用错误码
| HTTP 状态码 | 说明 |
|---|---|
| 401 | 认证失败(AppKey无效 / 签名错误 / 时间戳过期 / Nonce重复) |
| 403 | 权限不足(应用已禁用 / IP不在白名单) |
| 429 | 请求频率超限 |
业务错误码
| code | 说明 |
|---|---|
| 0 | 成功 |
| 非0 | 失败,具体错误信息见 msg 字段 |
常见业务错误:用户不存在、商户合作关系不存在、资源不存在、余额不足、订单状态不允许当前操作