第三方店铺同步接口文档.md 8.6 KB

第三方店铺同步接口文档

版本:V1.0
更新日期:2026-07-11
说明:第三方(如省药监平台)将药店入驻信息同步到我方系统,自动创建/更新用户及入驻记录


1. 概述

本接口用于第三方系统向我方同步药店入驻信息。按手机号自动匹配用户,用户不存在则自动创建,并同步入驻信息到 t_business_license

项目 说明
接口名称 第三方店铺信息同步
请求方式 POST
接口路径 /api/sync_shop_resource/report_user
鉴权 无鉴权(白名单路径,对第三方开放)
Content-Type application/json

2. 请求参数

所有参数通过 JSON Body 传递,字段名使用 snake_case 格式。

2.1 必填字段

参数名 类型 必填 说明
phone String 手机号码(用于识别客户唯一身份)

2.2 用户/药店信息字段(全部可选)

参数名 类型 必填 说明 映射我方字段
contact_name String 联系人名称 nickname, contact_person
contact_phone String 联系电话 contact_phone
contact_shop String 店铺名称 pharmacy_name, store_name
contact_province String 省份 province
contact_city String 城市 city
contact_area String 地区 district
contact_addr String 详细地址 pharmacy_address, store_address

2.3 店铺类型

参数名 类型 必填 说明 映射值
shop_type String 店铺类型 1→SINGLE 单店 / 2→CHAIN 连锁 / 3→CLINIC 诊所、社康

2.4 证照图片字段(全部可选)

参数名 类型 必填 说明 映射我方字段
business_license_image String 营业执照图片URL license_image_url
drug_business_license_image String 药品经营许可证图片URL drug_license_url
two_medical_device_registration String 二类医疗器械备案图片URL medical_device_class2_url
three_medical_device_business_license String 三类医疗器械经营许可图片URL medical_device_class3_url

2.5 审核与操作字段

参数名 类型 必填 说明
status String 审核状态:0=审核中 / 1=审核成功 / 2=审核失败(不传默认0
remarks String 备注信息(如拒绝原因等)
operator_userid String 操作人用户ID(默认0
user_type String 用户类型:1=客户端用户 / 2=后台用户
app_id String 小程序APPID

3. 请求示例

{
  "phone": "13800138000",
  "contact_name": "张老三",
  "contact_shop": "好店铺",
  "shop_type": "1",
  "contact_province": "广东省",
  "contact_city": "深圳市",
  "contact_area": "龙华新区",
  "contact_addr": "上芬街道",
  "contact_phone": "18219207546",
  "business_license_image": "https://kailin-saas.oss-cn-shenzhen.aliyuncs.com/uploads/process/2026/07/ch8K4VULklSVWYEYolVPTxvURA7fJlDsnzpHRZno.png",
  "drug_business_license_image": "https://kailin-saas.oss-cn-shenzhen.aliyuncs.com/uploads/process/2026/07/ch8K4VULklSVWYEYolVPTxvURA7fJlDsnzpHRZno.png",
  "two_medical_device_registration": "https://kailin-saas.oss-cn-shenzhen.aliyuncs.com/uploads/process/2026/07/ch8K4VULklSVWYEYolVPTxvURA7fJlDsnzpHRZno.png",
  "three_medical_device_business_license": "https://kailin-saas.oss-cn-shenzhen.aliyuncs.com/uploads/process/2026/07/ch8K4VULklSVWYEYolVPTxvURA7fJlDsnzpHRZno.png",
  "status": "0",
  "remarks": "资料不全,缺少药品经营许可证",
  "operator_userid": "0",
  "user_type": "1",
  "app_id": "wx246605ec671bf08d"
}

4. 响应

4.1 通用响应格式

{
  "code": "success",
  "msg": "同步成功",
  "data": {
    "user_id": "1234567890123456789",
    "new_user": false
  }
}

4.2 响应字段

字段 类型 说明
code String "success" 成功 / "error" 失败
msg String 提示信息
data.user_id String 我方系统中的用户ID
data.new_user Boolean 是否为新创建的用户

4.3 错误响应

{
  "code": "error",
  "msg": "手机号不能为空"
}

5. 业务逻辑

5.1 用户处理

场景 行为
手机号不存在 自动创建新用户(PLUS 会员),昵称用 contactName
手机号已存在 更新非空的用户信息字段

5.2 入驻信息处理

💡 核心原则:以第三方传入的最新数据为准,非空字段直接覆盖本地记录。

场景 行为
无入驻记录 创建新记录,写入全部证照和店铺信息
已有入驻记录(非 APPROVED) 以第三方传入字段覆盖本地,同时更新审核状态
已有入驻记录(已 APPROVED) 以第三方传入字段覆盖本地,重置为 PENDING 待重新审核;奖励标记保留,不重复发放

5.3 审核状态

status 值 我方状态 说明
0 或不传 PENDING 待运营审核
1 APPROVED 审核通过,首次通过赠送 30 天 PRO 高级会员
2 REJECTED 审核失败

💡 已 APPROVED 的记录再次同步时,更新入驻字段并重置为 PENDING 待重新审核;奖励仅首次发放,不会重复。

5.4 shopType 映射

第三方值 我方 terminalType
"1" SINGLE(单店)
"2" CHAIN(连锁)
"3" CLINIC(诊所、社康)
其他 原值透传

6. 字段映射表

6.1 用户信息(t_users)

第三方字段 我方字段 说明
phone phone 手机号(唯一标识)
contact_name nickname 用户昵称
contact_shop pharmacy_name 药店名称
contact_province province
contact_city city
contact_area district
contact_addr pharmacy_address 详细地址
contact_phone contact_phone 联系电话

6.2 入驻信息(t_business_license)

第三方字段 我方字段 说明
contact_shop store_name 店铺名称
shop_type terminal_type 终端类型(1→SINGLE / 2→CHAIN / 3→CLINIC)
contact_province province
contact_city city
contact_area district
contact_addr store_address 详细地址
contact_name contact_person 联系人
contact_phone contact_phone 联系电话
business_license_image license_image_url 营业执照图片URL
drug_business_license_image drug_license_url 药品经营许可证图片URL
two_medical_device_registration medical_device_class2_url 二类医疗器械备案图片URL
three_medical_device_business_license medical_device_class3_url 三类医疗器械备案图片URL
status review_status 审核状态(0→PENDING / 1→APPROVED / 2→REJECTED)
remarks remark 备注(如拒绝原因等)

💡 入驻记录保存时,自动补充以下字段:

  • sync_source ← 固定为 MINIAPP_SYNC
  • show_verified_badge ← 首次审核通过时设为 true
  • credit_code ← 本次不自动填入(第三方可通过 /external/sync 接口传入 businessLicenseNo 补充)

7. 注意事项

# 说明
1 本接口无鉴权,直接对第三方开放,路径已加入白名单
2 请求参数通过 JSON Body 传递,字段名使用 snake_case 格式
3 手机号未注册时自动创建用户,初始化 PLUS 会员
4 不返回 Token,仅返回同步确认(user_id + new_user)
5 如需返回 Token,请调用登录接口 /api/auth/external/miniapp-token
6 建议第三方在店铺信息变更时主动调用本接口更新
7 状态字段为字符串类型("0"/"1"/"2"),内部自动转为 Integer

8. 变更记录

版本 日期 变更内容
V1.1 2026-07-15 新增 remarks 字段,支持双向传递拒绝原因等备注信息
V1.0 2026-07-11 初始版本,支持第三方通过 Query 参数同步店铺信息