crm.md 8.24 KB

劲霸零售通与 CRM 对接文档

  • ticket 通讯密钥 ---详见沟通邮件说明---
  • 劲霸零售通接口 服务器 https://k-boxing.vchangyi.com/
  • CRM 服务器 **

更新历史

v1.5.0

  • 2017-09-26 绑定接口(CrmBind)同时允许处理解绑和绑定(提供 salesnumber 参数)动作

v1.4.0

  • 2017-08-10 员工信息获取接口返回更多的信息字段

v1.3.1

  • /Contact/Open/User/CrmBind 绑定关系通知接口
    • 返回参数,只保留 useridsalesnumber
  • /Contact/Open/User/Detail 员工信息获取接口
    • 返回参数,只保留 useridmobilestorecode
  • 统一字段名称 salesnumber导购编号
  • 人员删除回调接口
    • 导购编号 参数变更为 salesnumber

v1.2.0

  • /Contact/Open/User/CrmBind 绑定关系通知接口
    • 请求参数,新增 requester 参数,该值固定为:crm
    • 请求参数,更改 numbersalesnumber
    • 返回参数,移除 requester ,实际是书写错误,本版移除
  • /Contact/Open/User/Detail 员工信息获取接口
    • 请求方式,原是 GET 实际是书写错误,已修复为 POST
    • 返回参数,新增 salesnumber 店员编号
    • 返回参数,新增 storecode 门店编号
    • 返回参数,新增 storename 门店名称
  • 附录内容变更
    • 新增对于请求参数 timestamp 的说明,不能与实际服务器时间偏差超过 300秒
    • 新增对于公共请求参数的说明

零售通提供接口

绑定、解绑关系通知接口

接口地址

https://k-boxing.vchangyi.com/A5AA220A0A69039F1E4115437BDC6FE7/Contact/Open/User/CrmBind POST

请求参数

参数 必填 类型 说明
userid String 企业微信 userid
salesnumber String 导购编号,如果不提供该参数则会解绑指定人员的导购编号
timestamp Int (公共签名参数)Unix 时间戳(秒)
noncestr String (公共签名参数)随机字符串,长度小于 32 位
signature String (公共签名参数)参数签名,参见:附录1
requester String (公共签名参数)请求者标识符,参见:附录2

返回参数

参数 类型 说明
userid String 企业微信 userid
salesnumber String 导购编号

返回结果预览

{
    "errcode":"0",
    "errmsg":"ok",
    "errsdkcode": "",
    "requestId": "",
    "timestamp": 1498563409798,
    "result":{
        "userid":"WAGYI3241246343646736FASDADSFY"
    }
}

员工信息获取接口

接口地址

https://k-boxing.vchangyi.com/A5AA220A0A69039F1E4115437BDC6FE7/Contact/Open/User/Detail POST

请求参数

参数 必填 类型 说明
userid String 企业微信 userid
timestamp Int (公共签名参数)Unix 时间戳(秒),有效期为 300 秒
noncestr String (公共签名参数)随机字符串,长度小于 32 位
signature String (公共签名参数)参数签名,参见:附录1
requester String (公共签名参数)请求者标识符,参见:附录2

返回参数

参数 类型 说明
userid String 企业微信 userid
mobile String 手机号码
storecode String 门店(所在组织)编号
storename String 组织名称
salesnumber String 导购编号
storename String 组织名称
email String 邮箱
name String 姓名
gender Number 性别, 0: 未知, 1:男; 2:女
weixin String 微信号
job String 岗位
role String 角色
telphoneField String 座机
accountOA String OA帐号
accountCRM String CRM帐号
accountDRP String DRP 帐号
accountCM String CM 帐号
accountOrderMeeting String 订货会帐号
birthday String 生日
joinDate String 入职日期

返回结果预览

{
    "errcode": 0,
    "errmsg": "ok",
    "errsdkcode": "",
    "requestId": "",
    "timestamp": 1502365116986,
    "result": {
        "userid": "ASDFASFADS2545243525d.....",
        "mobile": "13571313754",
        "storecode": "K610001",
        "username": "张三",
        "salesnumber": "",
        "storename": "东风街店",
        "email": "",
        "gender": 2,
        "weixin": "",
        "job": "导购",
        "role": "终端导购",
        "telphoneField": "",
        "accountOA": "",
        "accountCRM": "",
        "accountDRP": "",
        "accountCM": "",
        "accountOrderMeeting": "",
        "birthday": "",
        "joinDate": ""
    }
}

CRM 提供接口

人员删除回调接口

导购通 删除员工操作时,会请求该接口通知 CRM 进行自身的业务操作。

接口地址

………………………………………………………… POST

请求参数

参数 必填 类型 说明
userid String 企业微信 userid
salesnumber String 导购编号
timestamp Int (公共签名参数)Unix 时间戳(秒)
noncestr String (公共签名参数)随机字符串,长度小于 32 位
signature String (公共签名参数)参数签名,参见:附录1

返回参数

无具体返回结果

返回结果预览

{
    "errcode":"0",
    "errmsg":"ok",
    "result":{
    }
}

附录

1. 权限签名算法

  • 约定通讯票据:ticket = XXXXX;
  • 签名生成规则:对所有待签名参数按照字段名的 ASCII 码从小到大排序(字典序)后,使用 URL 键值对的格式 (即 key1=value1&key2=value2…)拼接成字符串 string1。这里需要注意的是所有参数名均为小写字符。对 string1 做 sha1 加密,字段名和字段值都采用原始值,不进行URL 转义。即 signature=sha1(string1) ;
  • 接口数据传输:将所有字段后附加签名参数;

举例说明

假设参数如下:

ticket=ABDEFGHIJK
number=100001
mobile=13812345678
timestamp=1497859368
noncestr=bfdc3f35f39b27b43b2225e606c7959f
  1. 对所有参数进行从小到大字典排序,拼接成字符串 string1

mobile=13812345678&noncestr=bfdc3f35f39b27b43b2225e606c7959f&number=100001&ticket=ABDEFGHIJK&timestamp=1497859368

  1. 对 string1 进行 sha1 签名,得到 signature

d9931eaeda0e977a72f23c0aba6cd5dcc469189b

注意事项

  1. 千万不要将双方约定的通讯票据 ticket 做为参数进行传输,票据 ticket 只做为签名加密来使用

  2. 传输参数中的时间戳 timestamp 是有时效性的,目前约定有效期是 300 秒

2. 关于请求者标识

  • 为了区分不同的请求者,这里定义请求者参数:requester=crm

3. 公共请求参数说明

  • timestamp 请求的 Unix 时间戳,该值不能与标准时间偏差超过 300 秒,否则会认为是签名超时
  • noncestr 随机字符串,小于 32位 的字符串,可以是:a-z0-9
  • requester 请求者标识符,此处固定填写为 crm
  • signature 请求参数签名值,具体算法见 附录1