schm-poscrm-papi
schm-poscrm-papi 中文文档
基础说明
本接口以资生堂POSCRM接口为基础,作为代理接口。
本接口省去资生堂POSCRM的鉴权步骤,调用时可直接使用明文参数调用。
本接口独有鉴权信息为header中带的client_id和client_secret,并作为调用方身份标识。
每个接口有独立的调用权限,如需使用请预先向管理员申请接口权限。
本文档详细描述了第三方系统开发者接入SCHM-POSCRM所需的接口开发规范。
本接口规范包括通用规范和业务规范。通用规范描述了所有接口必须遵守的公共部分,业务规范根据具体的业务交互内容描述了各个实际业务接口所需要的详细数据内容。
1. 接口通用规范
1.1 接口地址前缀
UAT地址(测试环境): https://schm-api-test.shiseido.cn
PROD地址(生产环境): https://schm-api.shiseido.cn
1.2 接口调用方式
接口统一使用HTTPS协议请求。实际请求地址如下:
[UAT地址 or PROD地址]/schm-poscrm-papi/{version}/{INTERFACE_URL}
其中,version参数目前统一传v2,INTERFACE_URL填入下方接口说明中的接口地址
举例,会员身份验证,其测试环境请求地址即为:https://schm-api-test.shiseido.cn/schm-poscrm-papi/v2/member/verify
1.3 权限说明
访问所有接口,都须在header中设置key为client_id和client_secret的参数。不同的接口调用方使用不同的参数。您需要向管理员申请认证信息。
例如:
client_id: fa98****3452
client_secret: 108b****41f2
接口会根据client_id进行鉴别权限。会分别对接口地址以及参数中的ownerId进行鉴权。
- 请求地址鉴权:接口会通过clinet_id校验是否可以使用该接口。
- ownerId鉴权:每个接口都会传一个参数:ownerId,这个参数含义为品牌ID。接口会通过client_id校验是否可以操作这个品牌。
1.4 业务参数说明
接口目前仅支持JSON格式。调用接口时,业务参数以POST形式提交。
建议在调用接口时添加如下header设置:
Content-Type=application/json
1.5 返回结果说明
接口返回结果会以明文形式直接返回。
接口返回结果的格式为JSON格式。
目录
- 2.1 会员身份验证
- 2.2 申请入会
- 2.3 会员绑定
- 2.4 修改会员资料
- 2.5 查询会员信息
- 2.6 注销会员
- 2.7 查询会员积分
- 2.8 查询会员当期积分履历
- 2.9 调整会员积分
- 2.10 兑换礼品后进行积分扣除
- 2.11 查询会员消费履历
- 2.12 查询会员等级信息
- 2.13 天猫会员绑定/解绑
- 2.14 接收天猫订单
- 2.15 查询会员购买里程信息(NARS)
- 2.16 查询会员可兑礼情况(NARS)
- 2.17 答谢活动礼品预约 (NARS)
- 2.18 答谢活动礼品兑换领取 (NARS)
- 2.19 更新会员隐私政策确认状态
- 2.20 第三方平台ID(如SFCCID)绑定
- 2.21 更新会员所属店铺及所属BC信息
- 2.22 更新会员标签
- 2.23 查询会员礼品及券
- 2.24 查询促销活动编号
- 2.25 批量添加活动对象
- 2.26 核销会员礼品申请或积分兑换预约
- 2.27 预约答谢活动礼品
- 2.28 申请领取试用礼品
- 2.29 取消领取试用申请
- 2.30 会员服务券预
- 2.31 核销会员的券码
- 2.32 批量查询会员券信息
- 2.33 会员券基本信息批量修改
- 2.34 批量发行券
- 2.35 会员设备绑定/解绑
- 2.36 查询会员绑定设备
- 2.37 查询设备订单信息
- 2.38 开具电子发票
- 2.39 门店库存查询接口
- 2.40 门店库存增减接口
- 2.41 店铺线上正向订单接入(下单)
- 2.42 店铺线上逆向订单接入(退货)
- 2.43 获取问卷基础信息
- 2.44 上传问卷结果信息
- 2.45 获取问卷调查结果
- 2.46 上传肌肤测试报告
- 2.47 查询肌肤测试报告
- 2.48 更新肌肤测试报告图片
- 2.49 上传肌肤测试信息
- 2.50 获取最近一次肌肤测试结果链接
- 2.51 店铺POS实时下单接口(正向)
- 2.52 数电发票-开票申请
- 2.53 数电发票-发票红冲
2. 接口说明
2.1 会员身份验证
接口地址: /member/verify
接口说明: 根据手机号/邮箱/WechatOpenId/WechatUnionId/会员卡号/天猫昵称/EC帐号验证是否CRM会员
接口名称: EC_MemberVerify
请求方式: HTTP POST 提交
2.1.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
所属店铺 | StoreId | N | varchar(10) | 空 |
用户ID | UserId | Y | varchar(200) | 支持:手机号/邮箱/WechatOpenId/WechatUnionId/天猫昵称/EC帐号/SFCCID |
用户ID类型 | UserIdType | Y | varchar(1) | 0:手机号 1:邮箱 3:WechatOpenId 4:WechatUnionId 5:TmallNick 6:EC帐号,10:SFCCID |
密码 | MemberPassword | N | varchar(32) | EC调用时传递密码验证密码正确性。 |
2.1.2 参数示例
{
"OwnerId": "78",
"UserId": "136XXXX1111",
"UserIdType": "0",
"MemberPassword": "xxxxxx"
}
2.1.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:系统错误 -2:找不到会员 -7:会员已被删除;-11:会员已冻结 -21:品牌错误;-22:密码错误;-90:该会员已天猫注册,但未完善信息 -9998:该会员未确认隐私政策。 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
会员编号 | MemberNo | String | 只要找到会员编号就返回。 |
2.1.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberNo": "M7800000128"
}
2.2 申请入会
接口地址: /member/register
接口说明: 提交必要的信息注册会员。建议在开发阶段,注册会员成功后,再调用“查询会员信息接口”获取并验证注册的信息。
接口名称: EC_MemberRegist
请求方式: HTTP POST 提交
2.2.1 参数说明
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者(品牌) | OwnerId | Y | varchar(4) | |
所属店铺 | StoreId | N | varchar(10) | EC商城:固定为EC商城的店铺编号 其他:可以为空 注意:该店铺编号并不是接口申请表中提供 的 URL 参数中的 STOREID,而是实际的店铺编号。 |
会员姓名 | Name | Y | varchar(50) | |
会员性别 | Sex | Y | varchar(1) | 性别 1:男;2:女; |
会员生日(年月日) | BirthDay | Y | varchar(8) | YYYYMMDD 如会员注册无该项请填写:19000101 |
移动电话 | Mobile | Y | varchar(50) | |
固定电话 | Telephone | N | varchar(50) | |
结婚状况 | MaritalStatus | Y | varchar(2) | 01:已婚 02:未婚 03:未知(默认值) 04:离异 如会员注册无该项目请填写:03 |
子女个数 | ChildrenNumber | N | int | EFFECTIM专用 |
住址 | Address | N | varchar(255) | |
邮编 | Zip | N | varchar(10) | 不超过10位。 |
N | varchar(200) | |||
是否愿意邮件接收信息 | IsGetInfoByEmail | Y | varchar(1) | 0:否(默认值);1:是 如会员注册无该项目请填写:0 |
会员是否愿意通过短信 接收营销活动信息 | IsGetInfoBySMS | N | varchar(1) | 0:否(默认值);1:是 |
备注 | Memo | N | nvarchar(200) | |
会员密码 | MemberPassword | N | varchar(32) | sha1加密. |
EC 商城帐号 | WebsiteAccount | N | varchar(50) | |
会员注册渠道 | RegisteType | Y | varchar(2) | 请使用80以及80之后的值: 80:Campaign(H5 活动页上的注册会员) 81:小红书 82:抖音 90:线下活动 91:派样机 83:喵街 84:百货线上 85:支付宝小程序 另: 40:官网(EC 官网专用) 60:会员中心(会员中心小程序专用) |
会员地址省代码 | Province | N | varchar(5) | |
会员地址市代码 | City | N | varchar(5) | |
对于官微公众号 OpenId | WechatOpenId | N | varchar(50) | 微信注册必须填写 |
微信用户 UnionId | WechatUnionId | N | varchar(50) | 小程序调用必须填写 |
对于官微公众号关注日期 | WechatAttentionDate | N | DateTime | 格式:yyyy-MM-ddTHH:mm:ss |
推荐人手机号 | ReferrerMobile | N | varchar(11) | |
注册来源活动标签 | RegisteCampaingTag | N | varchar(50) | 用于备注某次活动的注册会员,便于在 CRM 后台查询出通过活动注册的会员。具体是否需要传值以及传值的内容咨询品牌方。 |
隐私条款确认状态 | CheckPolicyStatus | N | int | 0:会员未同意隐私授权(默认值) 3:会员同意隐私授权。 |
天猫昵称 | N | varchar(50) | 仅针对天猫对接时使用,目前暂停使用。 | |
注册日期 | N | DateTime | 仅回传历史数据使用,目前暂停使用。 格式:yyyy-MM-ddTHH:mm:ss | |
称谓 | Salutation | N | nvarchar(100) |
2.2.2 参数示例
{
"OwnerId": "78",
"StoreId": "80100006",
"Name": "张三",
"Sex": "1",
"BirthDay": "19870625",
"Mobile": "19827382762",
"Telephone": "19827382762",
"MaritalStatus": "03",
"ChildrenNumber": 2,
"Address": "黄河路1号",
"Zip": "200001",
"Email": "aaa@bbb.com",
"RegisteType": "80",
"IsGetInfoByEmail": "1",
"Memo": "备注信息XXXXXXXXXXXX",
"Password": "123456",
"RegisteCampaingTag": "H5"
}
2.2.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:系统错误 -4:手机号码已经被注册 -19:邮件地址已经被注册 -21:品牌错误;-28:手机号码已经被注册,可直接在线上登录使用 -29:手机号码已经被注册,但需绑定才能线上使用 -47: 性别参数错误 -48: 结婚状况参数错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
会员编号 | MemberNo | String | 错误时返回空。 |
2.2.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberNo": "M7800000128"
}
2.3 会员绑定
接口地址: /member/bind
接口说明: 通过手机号或会员编号与公众号微信openid或UnionId进行绑定
接口名称: EC_MemberBind
请求方式: HTTP POST 提交
2.3.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
所属店铺 | StoreId | N | varchar(10) | 空 |
会员姓名 | Name | N | varchar(50) | 同 注册页面。增加会员验证按钮通道。该字段可以不提供或者传递空字符串。 |
会员生日(年月日) | Birthday | N | varchar(8) | 格式:YYYYMMDD,该字段可以不提供或者传递空字符串。 |
移动电话/会员编号/会 员卡号 | Mobile | Y | varchar(50) | 查找会员的依据 |
N | varchar(200) | 需要绑定的Email | ||
会员密码 | Password | N | varchar(32) | 需要绑定的会员密码 |
对于官微公众号 OpenId | WechatOpenId | N | varchar(50) | 需要绑定的官微公众号的OpenId,微信/小程序调用必须填写 |
微信用户 UnionId | WechatUnionId | N | varchar(50) | 需要绑定的微信UnionID微信/小程序调用必须填写 |
公众号关注日期 | WechatAttentionDate | N | DateTime | 格式:yyyy-MM-ddTHH:mm:ss |
EC 商城帐号 | WebsiteAccount | N | varchar(50) | 需要绑定的EC商城帐号 |
2.3.2 参数示例
{
"OwnerId": "78",
"BirthDay": "19870625",
"Mobile": "19827382762",
"Email": "aaa@bbb.com",
"Password": "XXXX"
}
2.3.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:系统错误 -2:找不到会员 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
会员编号 | MemberNo | String | 错误时返回空。 |
2.3.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberNo": "M7800000128"
}
2.4 修改会员资料
接口地址: /member/update
接口说明: 修改会员资料
接口名称: EC_MemberEdit
请求方式: HTTP POST 提交
2.4.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
所属店铺 | StoreId | N | varchar(10) | 如果传递空则所属店不做更新。 |
会员编号 | MemberNo | Y | varchar(13) | 来自于CRM的会员编号 |
会员姓名 | Name | Y | varchar(50) | |
会员性别 | Sex | Y | Varchar(1) | 性别 1:男;2:女; |
会员生日(年月日) | BirthDay | Y | varchar(8) | 格式:YYYYMMDD,为空时不更新,只有原数据为空或1900年1月1日才会更新,否则不会 更新,忽略本字段传的任何值。 |
移动电话 | Mobile | Y | varchar(50) | |
固定电话 | Telephone | N | varchar(50) | 不提供该接口字段则不更新,否则即使是空字符串也会更新 |
结婚状况 | MaritalStatus | Y | varchar(2) | 01:已婚 02:未婚 03:未知(默认值) 04:离异 如会员注册无该项目请填写:03 |
子女个数 | ChildrenNumber | N | int | EFFECTIM专用 |
住址 | Address | N | varchar(255) | 不提供该接口字段则不更新,否则即使是空字符串也会更新 |
邮编 | Zip | N | varchar(10) | 不提供该接口字段则不更新,否则即使是空字符串也会更新 |
N | varchar(200) | 为空时不更新(即无法清除EMAIL,只能修改) | ||
是否愿意邮件接收信息 | IsGetInfoByEmail | N | Varchar(1) | 0: 否;1:是 为空时不更新 |
是否愿意短信接收信息 | IsGetInfoBySMS | N | Varchar(1) | 0: 否;1:是 为空时不更新 |
备注 | Memo | N | nvarchar(200) | 不提供该接口字段则不更新,否则即使是空字符串也会更新。注意:更新备注可能会导致品 牌用户填写的备注被更新 |
会员密码 | MemberPassword | N | varchar(32) | sha1加密 |
EC 商城帐号 | WebsiteAccount | N | varchar(50) | 为空时不更新 |
会员地址省代码 | Province | N | varchar(5) | 为空时不更新 |
会员地址市代码 | City | N | varchar(5) | 为空时不更新 |
称谓 | Salutation | N | nvarchar(100) |
2.4.2 参数示例
{
"OwnerId": "78",
"StoreId": "80100006",
"MemberNo": "M7800000128",
"Name": "张三",
"Sex": "1",
"BirthDay": "19870625",
"Mobile": "19827382762",
"Telephone": "19827382762",
"MaritalStatus": "03",
"ChildrenNumber": "2",
"Address": "黄河路1号",
"Zip": "200001",
"Email": "aaa@bbb.com",
"IsGetInfoByEmail": "1",
"Memo": "备注信息XXXXXXXXXXXX",
"Password": "xxxx"
}
2.4.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功;-1:系统错误;-2:找不到会员;-7:会员已被删除;-8:会员已被别人修改;-21:品牌错误;-47: 性别参数错误;-48: 结婚状况参数错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
会员编号 | MemberNo | String | 错误时返回空。 |
2.4.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberNo": "M7800000128"
}
2.5 查询会员信息
接口地址: /member/query
接口说明: 通过会员号/手机号/邮箱/WechatOpenId/WechatUnionId/会员卡号/天猫昵称/EC 帐号查询会员信息
接口名称: EC_MemberInfoQuery
请求方式: HTTP POST 提交
2.5.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
所属店铺 | StoreId | N | varchar(10) | 空 |
会员标识信息 | MemberNo | Y | varchar(200) | 支持:会员号/手机号/邮箱 /WechatOpenId/WechatUnionId/天猫昵称/EC帐号/SFCCID |
会员标识信息 类型 | MemberNoType | N | varchar(1) | 0:手机号 1:邮箱 3:WechatOpenId 4:WechatUnionId 5:TmallNick 6:EC帐号 7:会员编号 10:SFCCID 空:会员编号 |
是否需要返回 积分 | IsReturnPoint | N | Varchar(1) | 1:需要返回积分信息(会有少量性能影响,如果不 需要积分建议不要返回) 其他:不返回积分信息。 |
是否需要返回 未生效积分 | IsReturnPendingPoin t | N | Varchar(1) | 1:需要返回未生效积分信息(会有少量性能影响, 如果不需要该信息建议不要返回) 其他:不返回未生效积分信息。 |
是否需要返回 会员标签信息 | IsReturnTags | N | Varchar(1) | 1:返回会员标签信息 其他:不返回会员标签信息(默认不返回),如果不 需要会员标签则不建议传该参数 |
异常会员状态 | AbnormalStatus | N | varchar(10) | 10:正常 20:确认异常 30:疑似异常 |
2.5.2 参数示例
{
"OwnerId": "10",
"StoreId": "",
"MemberNo": "YZ008028",
"IsReturnPoint": "1",
"IsReturnTags": "1"
}
2.5.3 返回结果说明
描述 | key | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:系统错误 -2:找不到会员 -21:品牌错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
会员基本信息对象 | MemberInfo | ||
所有者 | OwnerId | string | |
所属店铺 | StoreId | string | |
所属店铺名称 | StoreName | string | |
会员编号 | MemberNo | string | |
会员姓名 | MemberName | string | |
会员性别 | Gender | enum('1', '2') | 1::男;2:女; |
会员生日(年月日) | Birthday | string | YYYYMMDD |
年龄 | Age | Int | |
移动电话 | Mobile | string | |
固定电话 | Telephone | string | |
会员卡号 | CardNo | string | |
结婚状况 | MaritalStatus | enum('01', '02', '03', '04') | 01:已婚 02:未婚 03:未知 04:离异 |
子女个数 | ChildrenNumber | int | EFFECTIM专用 |
住址 | Address | string | |
邮编 | Zip | string | |
string | |||
是否愿意邮件接收 信息 | IsGetInfoByEmail | enum(‘0’, ‘1’) | 0:否;1:是 |
是否愿意短信 | IsGetInfoBySMS | enum(‘0’, ‘1’) | 0:否;1:是 |
备注 | Memo | string | |
会员状态 | Status | enum(‘10’, ‘80’, ‘99’) | 10:正常 80:冻结 99:已删除 |
会员等级 | MemberType | string | |
会员等级名称 | MemberTypeName | string | |
EC 帐号 | WebsiteAccount | string | |
会员注册渠道 | RegisteType | string | 10:微信 20:店铺 30:总部 40:EC 商城 50:天猫 60:微信小程序 70:京东 80:Campaign 81:小红书;82:抖音 90:线下活动 91:派样机 |
会员注册渠道名称 | RegisteTypeName | string | |
会员地址省代码 | Province | string | |
会员地址市代码 | City | string | |
会员地址省名称 | ProvinceName | string | |
会员地址市名称 | CityName | string | |
微信 OpenId | WechatOpenId | string | |
微信 UnionId | WechatUnionId | string | |
会员有效积分 | Point | Int | |
天猫昵称 | TmallNick | string | |
会员注册时间 | RegisteDateTime | DateTime | 会员提交注册资料成功注册到 CRM 系统的时间 格式:yyyy-MM-ddTHH:mm:ss |
首次购买时间 | FirstSaleDateTime | DateTime | 即会员入会时间,该时间为营业日期 格式:yyyy-MM-ddTHH:mm:ss |
所属服务 BC | ServiceEmployeeNo | string | |
所属服务 BC 名称 | ServiceEmployeeName | string | |
会员未生效积分 | PendingPoint | Int | |
SFCCID | OtherPlatformId | string | 第三方平台用户ID |
称谓 | Salutation | nvarchar(100) | |
异常会员状态 | AbnormalStatus | varchar(10) | 10:正常 20:确认异常 30:疑似异常 |
会员标签对象集合 | Tags | ||
标签编号 | TagId | string | |
标签名称 | TagName | string |
2.5.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberInfo": {
"OwnerId": "10",
"StoreId": "00300023",
"MemberNo": "YZ008028",
"MemberName": "杨利芬",
"Gender": "2",
"Birthday": "19901201",
"Mobile": "13599999999",
"Telephone": "",
"MaritalStatus": "03",
"ChildrenNumber": "2",
"Address": "",
"Zip": "",
"Email": "",
"IsGetInfoByEmail": "0",
"Memo": "",
"Status": "10",
"MemberType": "4",
"RegisteType": "20",
"Province": "001",
"City": "001",
"Point": "17200",
"TmallNick": "",
"RegisteDateTime": "2014-12-28T00:00:00",
"FirstSaleDateTime": "2014-12-28T00:00:00"
},
"Tags": [{
"TagId": "xxxxxx",
"TagName": "xxxxxx"
}, {
"TagId": "xxxxxx",
"TagName": "xxxxxx"
}]
}
2.6 注销会员
接口地址: /member/cancelation
接口说明: 会员注销接口,只有CRM系统开启了注销功能才能成功调用。注销后,会员信息全部更改为“已注销”,手机号等信息全部更改为注销专用的无意义的数字
接口名称: CancelMember
请求方式: HTTP POST 提交
2.6.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
会员编号 | MemberNo | Y | varchar(10) | |
注销方式 | CancelType | Y | varchar(10) | 40:外部接口注销 |
注销备注 | CancelMemo | N | varchar(100) |
2.6.2 参数示例
{
"OwnerId": "10",
"MemberNo": "M1000978773",
"CancelType": "40",
"CancelMemo": "Test"
}
2.6.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | string | 空:处理成功 -1:系统错误 -21:品牌错误 |
返回消息 | Message | string | 错误消息文本。仅错误时有返回内容 |
2.6.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.7 查询会员积分
接口地址: /point/query
接口说明: 根据会员号/手机号/邮箱/WechatOpenId/WechatUnionId/会员卡号/天猫昵称/EC 帐号查询会员当前可用积分和会员状态
接口名称: EC_MemberPointQuery
请求方式: HTTP POST 提交
2.7.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
所属店铺 | StoreId | N | varchar(10) | 空 |
会员标识信息 | MemberNo | Y | varchar(200) | 支持:会员号/手机号/邮箱/WechatOpenId/WechatUnionId/天猫昵称/EC帐号 |
会员标识信息类型 | MemberNoType | N | varchar(1) | 0:手机号 1:邮箱 3:WechatOpenId 4:WechatUnionId 5:TmallNick 6:EC 帐号 7:会员编号 空:会员编号 |
2.7.2 参数示例
{
"OwnerId": "78",
"MemberNo": "M7800000128"
}
2.7.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:系统错误 -2:找不到会员 -21:品牌错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
会员信息对象 | CurrentPointInfo | ||
所有者 | OwnerId | varchar(4) | 错误时返回空。 |
会员编号 | MemberNo | varchar(13) | 错误时返回空。 |
当前积分 | Point | int | |
会员状态 | Status | enum('10', '80', '99') | 10:正常 80:冻结 99:已删除 |
2.7.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"CurrentPointInfo": {
"OwnerId": "78",
"MemberNo": "M7800000128",
"Point": "120",
"Status": "10"
}
}
2.8 查询会员当期积分履历
接口地址: /point/history
接口说明: 获取会员在当前积分期间的积分履历
接口名称: EC_MemberPointHistoryQuery
请求方式: HTTP POST 提交
2.8.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
所属店铺 | StoreId | N | varchar(10) | |
会员编号 | MemberNo | Y | varchar(13) |
2.8.2 参数示例
{
"OwnerId": "16",
"StoreId": "32300000",
"MemberNo": "M1600000XX"
}
2.8.3 返回结果说明
- Result
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | varchar(6) | 空:处理成功 -1:系统错误 -2:找不到会员 -21:品牌错误 |
返回消息 | Message | nvarchar(255) | 错误消息文本。仅错误时有返回内容。 |
- 会员积分账期信息: PointHisHead
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
会员积分账期信息 | PointHisHead | ||
所有者 | OwnerId | varchar(4) | 错误时返回空。 |
会员编号 | MemberNo | varchar(13) | 错误时返回空。 |
会员状态 | Status | varchar(2) | 10:正常 80:冻结 99:已删除 |
积分期开始日期 | BeginDate | String | YYYYMMDD |
积分期结束日期 | EndDate | String | YYYYMMDD |
- 积分变动明细: GoodsDetail
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
积分变动明细集合 | GoodsDetailArray | ||
交易日期和时间 | SaleDateTime | String | YYYYMMDDHHMMSS |
店铺 ID | StoreId | varchar(10) | |
店铺名称 | StoreName | nvarchar(60) | |
商品编号 | GoodsCode | varchar(8) | |
商品名称 | GoodsName | nvarchar(100) | |
销售数量 | SaleQty | int | |
实际销售金额 | AfterSalesAmount | decimal(12,4) | 优惠后的金额 |
增加积分 | AddPoint | int | 购买商品所获积分 |
积分是否生效 | PointIsActive | Int | 当前积分是否生效 1:积分已生效;0或空:积分未生效 *天猫订单在确认收货后生效,预售交易在 全部提货完成后生效。 |
积分调整原因代 码 | AdjustReason | varchar(2) | |
积分调整原因名 称 | AdjustReasonDesc | nvarchar(50) | |
积分活动代码 | ScoreActivityId | varchar(13) | |
积分活动名称 | ActivityName | nvarchar(50) |
2.8.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"PointHisHead": {
"OwnerId": "16",
"MemberNo": "XXX",
"Status": "10",
"BeginDate": "20140101",
"EndDate": "20141231"
},
"GoodsDetailArray": [{
"SaleDateTime": "20150102142356",
"StoreId": "00300091",
"StoreName": "东方商厦有限公司(GL)",
"GoodsCode": "11114",
"GoodsName": "资生堂新漾美肌 精华润肤乳",
"SaleQty": "",
"AfterSalesAmount": "",
"AddPoint": "300",
"PointIsActive": "",
"AdjustReason": "",
"AdjustReasonDesc": "",
"ScoreActivityId": "",
"ActivityName": ""
}, ""]
}
2.9 调整会员积分
接口地址: /point/update
接口说明: 对会员积分进行调整
接口名称: EC_ScoreAdjust
请求方式: HTTP POST 提交
2.9.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
会员编号 | MemberNo | N | varchar(13) | 会员编号和公众号OpenId必须填写一个,如果两个都提供,将优先使用会员编号。 |
公众号 OpenId | WechatOpenId | N | varchar(50) | 会员编号和公众号OpenId必须填写一个,如果两个都提供,将优先使用会员编号。 |
要调整的积分期数 | PeriodType | Y | Varchar(1) | 1:本期;2:上期 |
需要调整的积分 | AdjustPoint | Y | int | 04:抽奖扣减 根据实际接口场景可确定其他值,需要与用户确认。 |
调整原因 | AdjustReason | Y | varchar(2) | |
调整说明 | Memo | N | varchar(200) | |
调用请求 Id | RequestId | N | varchar(20) | 唯一标识一次积分调整,3天内重复调用会拒绝。 |
商品编号 | ItemCode | N | varchar(8) | 积分调整时指定的商品编号,如果不为空,会根据品牌规则是否校验该商品编号。 |
2.9.2 参数示例
{
"OwnerId": "10",
"PeriodType": "1",
"AdjustPoint": 4,
"AdjustReason": "Test"
}
2.9.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功-1:系统错误-2:找不到会员 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
会员编号 | MemberNo | String | 错误时返回空。 |
该期剩余积分 | Point | int |
2.9.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberNo": "M7800000128",
"Point": ""
}
2.10 兑换礼品后进行积分扣除
接口地址: /point/add
接口说明: 在 EC 商城进行礼品兑换后直接调用本接口进行积分扣除。注意:本接口不是简单的积分调整扣减接口,是EC进行礼品兑换后将礼品信息和扣除的积分传递给CRM进行存储并扣减积分。兑换礼品的活动编号必须先在CRM创建。使用积分和 获取积分的交易明细不能混在同一个订单编号即小票号中。除非有特殊需求,否则不建议使用本接口,建议使用“礼品兑换接口”。
接口名称: EC_MemberPointAdd
请求方式: HTTP POST 提交
2.10.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
所属店铺 | StoreId | Y | varchar(10) | EC店铺编号 |
会员编号 | MemberNo | Y | varchar(13) | 来自于CRM |
POS 机号 | PosId | Y | int | 可设固定值,CRM约定 |
小票号 | BillNo | Y | int | 同一店铺同一POS机号下不重复 |
扣除总积分 | AddPointSum | Y | int | 兑换礼品所需扣除的总积分(负值) |
交易时间 | SaleDateTime | Y | Varchar(14) | YYYYMMDDHHmmss,兑换时间 |
交易明细数组 | SalesDetailArray | |||
商品序号 | LineNo | Y | int | 商品在小票中出现的序号 |
商品编号 | GoodsCode | Y | varchar(8) | 兑换礼品的商品编号 |
数量 | SaleQty | Y | int | |
扣除积分 | AddPoint | Y | int | 请填写负值:扣除的积分 × -1 |
应用的积分活动编号 | ScoreActivityId | Y | varchar(20) |
2.10.2 参数示例
{
"OwnerId": "78",
"StoreId": "21700001",
"MemberNo": "M7800000128",
"PosId": 1,
"BillNo": 1123456789,
"AddPointSum": -200,
"SaleDateTime": "20140909144323",
"SalesDetailArray": [{
"LineNo": 1,
"GoodsCode": "88888888",
"SaleQty": 1,
"AddPoint": -200,
"ScoreActivityId": ""
}]
}
2.10.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:系统错误 -2:找不到会员 -7:会员已被删除 -11:会员已冻结 -12:会员帐户信息不存在 -13:会员帐户积分不足 -21:品牌错误 -23:所输店铺不存在 -24:请传入商品编号 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
会员编号 | MemberNo | String | 错误时返回空。 |
2.10.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberNo": "M7800000128"
}
2.11 查询会员消费履历
接口地址: /sales/history
接口说明: 获取会员消费履历,仅包含购买或退货
接口名称: EC_GetMemberSalesHis
请求方式: HTTP POST 提交
2.11.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
会员编号 | MemberNo | Y | varchar(13) | |
开始日 | DateFrom | Y | datetime | 格式:yyyy-MM-dd |
结束日 | DateTo | Y | datetime | 格式:yyyy-MM-dd |
2.11.2 参数示例
{
"OwnerId": "10",
"MemberNo": "10",
"DateFrom": "2020-01-01",
"DateTo": "2022-01-01"
}
2.11.3 返回结果说明
- Result
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 0或空:成功 其他:失败。 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
- 消费记录: SalesArray
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
消费集合 | SalesArray | ||
会员编号 | MemberNo | varchar(13) | |
交易时间 | SaleDateTime | datetime | 格式:yyyy-MM-ddTHH:mm:ss |
商品代码 | GoodsCode | varchar(10) | |
商品名称 | GoodsName | nvarchar(100) | |
标准销售金额 | SalesAmount | decimal(12,4) | |
销售数量 | SaleQty | int | |
小票号 | BillNo | int | |
店铺编号 | StoreId | varchar(10) | |
店铺名称 | StoreName | nvarchar(60) | |
增加积分 | AddPoint | int | |
销售类型 | SalesType | varchar(2) | S:销售 R:退货; |
销售类型名 | SalesTypeName | varchar(20) | |
积分是否生效 | PointIsActive | Int | 当前积分是否生效 1:积分已生效 0或空:积分未生效 *天猫订单在确认收货后生效,预售 交易在全部提货完成后生效。 |
2.11.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"SalesArray": [{
"MemberNo": "",
"SaleDateTime": "",
"GoodsName": "",
"SalesAmount": "",
"SaleQty": "",
"BillNo": "",
"StoreId": "",
"StoreName": "",
"AddPoint": "",
"SalesType": "",
"SalesTypeName": "",
"PointIsActive": ""
}]
}
2.12 查询会员等级信息
接口地址: /rank/query
接口说明: 获取会员等级信息(返回 10 天之内发生过的会员升降级信息的所有会员升降级履 历)
接口名称: EC_MemberRankChgQuery
请求方式: HTTP POST 提交
2.12.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) |
2.12.2 参数示例
{
"OwnerId": "78"
}
2.12.3 返回结果说明
- Result
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:系统错误 -21:品牌错误 -25:没有相关信息 |
返回消息 | Message | String | 错误消息文本。仅错误时有 返回内容。 |
所有者 | OwnerId | varchar(4) |
- 会员等级集合:MemberRankArry
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
会员等级集合 | MemberRankArry | ||
会员编号 | MemberNo | varchar(13) | |
会员类型 | MemberType | varchar(2) | |
上一种会员类型 | PrevMemberType | varchar(2) | |
开始时间,含时分秒 | BeginDateTime | String | YYYYMMDDHHMMSS |
结束时间,含时分秒 | EndDateTime | String | YYYYMMDDHHMMSS |
状态 | Status | varchar(1) | 1:有效(当前类型); 0:失效(已经升级或降级) |
2.12.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"OwnerId": "78",
"MemberRankArry": [{
"MemberNo": "M7800000128",
"MemberType": "02",
"PrevMemberType": "02",
"BeginDateTime": "20141201000000",
"EndDateTime": ">20151130000000",
"Status": "1"
}]
}
2.13 天猫会员绑定/解绑
接口地址: /tmall/bind
接口说明: 通过手机号或会员编号与淘宝昵称进行绑定或解绑
接口名称: TM_MemberBind
请求方式: HTTP POST 提交
2.13.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
卖家昵称 | seller_name | N | String | |
加密后的手机号码 | mix_mobile | N | String | 加密手机号与明文手机号至少必填一个 |
明文手机号 | mobile | N | String | 仅仅部分商家使用加密手机号与明文手机号至少必填一个 |
不加密的淘宝昵称 | 77ember_nick | Y | String | |
绑定类型 | type | Y | String | 1:绑定; 2:解绑 |
混淆的淘宝昵称 | mix_nick | N | String |
2.13.2 参数示例
{
"seller_name": "anessa 安热沙官方旗舰店",
"mobile": "1730xxxx397",
"type": "1",
"member_nick": "quexxxxqin"
}
2.13.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功-1:系统错误-2:找不到会员 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
会员编号 | MemberNo | String | 错误时返回空。 |
2.13.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberNo": "M7800000128"
}
2.14 接收天猫订单
接口地址: /tmall/order
接口说明: 接收天猫订单数据
接口名称: PUSH_ORDERS
请求方式: HTTP POST 提交
2.14.1 参数说明
CRM 接口字段名称 | 淘宝接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
tid | tid | Y | String (Long) | 交易编号 (父订单的交易编号) |
shippingType | shipping_type | String | 创建交易时的物流方式(交易完成前,物流方式有可能改变,但系统里的这个字段一直不变)。可选值: free:卖家包邮 post:平邮 express:快递 ems:EMS, virtual:虚拟发货 25:次日必达 26:预约配送 | |
Snapshot | snapshot | String | 交易快照详细信息 | |
snapshotUrl | snapshot_url | String | 订单快照 URL | |
status | status | Y | String | 交易状态。可选值: RADE_NO_CREATE_PAY:没有创建支付宝交易 WAIT_BUYER_PAY:等待买家付款 SELLER_CONSIGNED_PART:卖家部分发货 WAIT_SELLER_SEND_GOODS:等待卖家发货,即:买家已付款 WAIT_BUYER_CONFIRM_GOODS:等待买家确认收货,即卖家已发货 TRADE_BUYER_SIGNED:买家已签收,货到付款专用 TRADE_FINISHED:交易成功 TRADE_CLOSED:付款以后用户退款成功,交易自动关闭 TRADE_CLOSED_BY_TAOBAO:付款以前,卖家或买家主动关闭交易 PAY_PENDING:国际信用卡支付付款确认中 WAIT_PRE_AUTH_CONFIRM:0元购 合约中 当状态为WAIT_BUYER_CONFIRM_GOODS时,CRM开始进行销售交易导入处理。如果TP直接送订单给 CRM,请保持天猫订单原始状态。 |
stepPaidFee | step_paid_fee | String | 分阶段付款的已付金额(万人团订单已付金额) | |
stepTradeStatus | step_trade_status | String | 分阶段付款的订单状态(例如万人团订单等),目前有三返回状态: FRONT_NOPAID_FINAL_NOPAID:定金未付尾款未付 FRONT_PAID_FINAL_NOPAID:定金已 付尾款未付 FRONT_PAID_FINAL_PAID:定金和尾款都付 | |
timeoutActionTime | timeout_action_ti me | Date | 订单超时到期时间。格式:yyyy/MM/dd HH:mm:ss | |
title | title | String | 交易标题,以店铺名作为此标题的值。注:member.trades.get 接口返回的 Trade中的title 是商品名称 | |
totalFee | total_fee | Y | String | 商品金额(商品价格乘以数量的总金额)。精确到2位小数,单位:元。如:200.07,表示:200元7分 |
payment | payment | Y | string | 实付金额。精确到2位小数,单位:元。如:200.07,表示:200元7分 |
tradeFrom | trade_from | String | 交易内部来源。 WAP:手机 HITAO:嗨淘 TOP:TOP平台 TAOBAO:普通淘宝 JHS:聚划算 一笔订单可能同 时有以上多个标记,则以逗号分隔 | |
tradeMemo | trade_memo | String | 交易备注。 | |
tradeSource | trade_source | String | 交易外部来源: ownshop:商家官网 | |
type | type | String | 交易类型列表,同时查询多种交易类型可用逗号分隔。默认同时查询guarantee_trade,auto_delivery,ec,cod的4种交易类型的据,可选值: fixed:一口价 auction:拍卖 guarantee_trade:一口价、拍卖 auto_delivery:自动发货 independent_simple_trade:旺店入门版交易 independent_shop_trade:旺店标准版 交易 ec:直冲 cod:货到付款 fenxiao:分销 game_equipment:游戏装备 shopex_trade:ShopEX交易 netcn_trade:万网交易 external_trade:统一外部交易 o2o_offlinetrade:O2O交易 step:万人团 nopaid:无付款订单 pre_auth_type:预授权0元购机交易 | |
yfxFee | yfx_fee | String | 订单的运费险,单位为元 | |
yfxId | yfx_id | String | 运费险支付号 | |
yfxType | yfx_type | String | 运费险类型 | |
zeroPurchase | zero_purchase | Boolean | 在返回的 trade 对象上专门增加一个字段zero_purchase来区分,这个为true的就是0元购机预授权交易 | |
adjustFee | adjust_fee | string | 卖家手工调整金额,精确到2位小数,单位:元。如:200.07,表示:200元7分。来源于订单价格修改,如果有多笔子订单的时候,这个为0,单笔的话则跟[order].adjust_fee 一样 | |
alipayId | 80ember_id | Long | 买家的支付宝id号,在UIC中有记录,买家支付宝的唯一标示,不因为买家更换Email账号而改变。 | |
alipayNo | 80ember_no | String | 支付宝交易号,如:2009112081173831 | |
alipayPoint | 80ember_point | Long | 付款时使用的支付宝积分的额度,单位分,比如返回1,则为1分钱 | |
alipayUrl | 80ember_url | String | 创建交易接口成功后,返回的支付url | |
alipayWarnMsg | 80emberwarn msg | String | 淘宝下单成功了,但由于某种错误支付宝订单没有创建时返回的信息。Taobao.trade.add接口专用 | |
areaId | area_id | String | 区域 id,代表订单下单的区位码,区位码是通过省市区转换而来,通过区位码能精确到区内的划分,比如310012是杭州市西湖区华星路 | |
arriveCutTime | arrive_cut_time | String | 物流到货时效截单时间,格式HH:mm | |
arriveInterval | arrive_interval | Y | Long | 物流到货时效,单位天,不确定则填写0 |
asyncModified | async_modified | Date | 同步到卖家库的时间,taobao.trades.sold.incrementv.get接口返回此字段 | |
availableConfirmFee | available_confirm _fee | String | 交易中剩余的确认收货金额(这个金额会随着子订单 确认收货而不断减少,交易成功后会变为零)。精确到2位小数;单位:元。如:200.07,表示:200元7分 | |
buyerAlipayNo | buyer_alipay_no | String | 买家支付宝账号 | |
buyerArea | buyer_area | String | 买家下单的地区 | |
buyerCodFee | buyer_cod_fee | String | 买家货到付款服务费。精确到2位小数;单位:元。如:12.07,表示:12元7分 | |
buyerEmail | buyer_email | String | 买家邮件地址 | |
buyerFlag | buyer_flag | Long | 买家备注旗帜(与淘宝网上订单的买家备注旗帜对应,只有买家才能查看该字段)红、黄、绿、蓝、紫 分别对应 1、2、3、4、5 | |
buyerMemo | buyer_memo | String | 买家备注(与淘宝网上订单的买家备注对应,只有买 家才能查看该字段) | |
buyerMessage | buyer_message | String | 买家留言 | |
buyerNick | buyer_nick | Y | String | 买家昵称 |
buyerObtainPointFe e | buyer_obtain_poi nt_fee | Long | 买家获得积分,返点的积分。格式:100;单位:个。返点的积分要交易成功之后才能获得。 | |
buyerRate | buyer_rate | Boolean | 买家是否已评价。可选值:true(已评价),false(未评价)。如买家只评价未打分,此字段仍返回false | |
canRate | can_rate | Boolean | 买家可以通过此字段查询是否当前交易可以评论,can_rate=true可以评价,false则不能评价。 | |
codFee | cod_fee | String | 买家货到付款服务费。精确到2位小数;单位:元。 如:12.07,表示:12 元7分 | |
rxAuditStatus | rx_audit_status | String | 处方药未审核状态 | |
codStatus | cod_status | String | 货到付款物流状态。NEW_CREATED:初始状态 ACCEPTED_BY_COMPANY:接单成功 REJECTED_BY_COMPANY:接单失败 RECIEVE_TIMEOUT:接单超时 TAKEN_IN_SUCCESS:揽收成功 TAKEN_IN_FAILED:揽收失败 TAKEN_TIMEOUT:揽收超时 SIGN_IN:签收成功 REJECTED_BY_OTHER_SIDE:签收失败 WAITING_TO_BE_SENT:订单等待发送给物流公司 CANCELED:用户取消物流订单 | |
commissionFee | commission_fee | String | 交易佣金。精确到2位小数;单位:元。如:200.07,表 示:200元7分 | |
consignInterval | consign_interval | Long | 物流发货时效,单位小时 | |
consignTime | consign_time | N/Y | Date | 卖家发货时间。格式:yyyy/MM/dd HH:mm:ss TP OMS推送订单(非天猫订单原始接口)时:主订单状态为TRADE_CLOSED(付款以后用户退款成 功,交易自动关闭)或WAIT_BUYER_CONFIRM_GOODS(等待买家确认收货, 即:卖家已发货)时,填写最后一笔子订单发货时间, 否则为空(如果没有任何子订单发过货也传空)。 |
Created | created | Y | Date | 交易创建时间。格式:yyyy/MM/dd HH:mm:ss |
creditCardFee | credit_card_fee | String | 使用信用卡支付金额数 | |
discountFee | discount_fee | Y | String | 可以使用trade.promotion_details查询系统优惠系统优惠金额(如打折,VIP,满就送等),精确到2位小数,单位:元。如:200.07,表示:200元7分 |
endTime | end_time | N/Y | Date | 交易结束时间。交易成功时间(更新交易状态为成功的同时更新)/最后一笔子订单确认收货时间或者交易关闭时间。格式:yyyy/MM/dd HH:mm:ss,未结束时保留空。 |
eticketExt | eticket_ext | String | 电子凭证的垂直信息 | |
expressAgencyFee | express_agency_f ee | String | 快递代收款。精确到2位小数;单位:元。如:212.07,表示:212元7分 | |
hasBuyerMessage | has_buyer_messa ge | Boolean | 判断订单是否有买家留言,有买家留言返回true,否则返回false | |
hasPostFee | has_post_fee | Boolean | 是否包含邮费。与available_confirm_fee同时使用。可选值:true(包含),false(不包含) | |
hasYfx | has_yfx | Boolean | 订单中是否包含运费险订单,如果包含运费险订单返 回true,不包含运费险订单,返回false | |
iid | iid | String | 商品字符串编号(注意:iid近期即将废弃,请用num_iid参数) | |
invoiceName | invoice_name | String | 发票抬头 | |
invoiceType | invoice_type | String | 发票类型 | |
is3D | is_3D | Boolean | 是否 3D 交易 | |
isBrandSale | is_brand_sale | Boolean | 表示是否是品牌特卖(常规特卖,不包括特卖惠和特 实惠)订单,如果是返回 true,如果不是返回 false。 当此字段与 is_force_wlb均为true时,订单强制物流宝发货。 | |
isDaixiao | is_daixiao | Boolean | 表示订单交易是否含有对应的代销采购单。如果该订单中存在一个对应的代销采购单,那么该值为 true;反之,该值为false。 | |
isForceWlb | is_force_wlb | Boolean | 订单是否强制使用物流宝发货。当此字段与 is_brand_sale 均为true时,订单强制物流宝发货。此字段为false时,该订单根据流转规则设置可以使用物流宝或者常规方式发货 | |
isLgtype | is_lgtype | Boolean | 是否保障速递,如果为true,则为保障速递订单,使用线下联系发货接口发货,如果未 false,则该订单非保障速递,根据卖家设置的订单流转规则可使用物流 宝或者常规物流发货。 | |
isPartConsign | is_part_consign | Boolean | 是否是多次发货的订单如果卖家对订单进行多次发 货,则为true否则为false | |
isWt | is_wt | Boolean | 表示订单交易是否网厅订单。 如果该订单是网厅订单,那么该值为true;反之,该值为 false。 | |
lgAging | lg_aging | String | 次日达订单送达时间 | |
lgAgingType | lg_aging_type | String | 次日达,三日达等送达类型 | |
markDesc | mark_desc | String | 订单出现异常问题的时候,给予用户的描述,没有异常的时候,此值为空 | |
modified | modified | Y | Date | 交易修改时间(用户对订单的任何修改都会更新此字段)。格式:yyyy/MM/dd HH:mm:ss |
Num | num | Y | Long | 商品购买数量。取值范围:大于零的整数,对于一个 trade对应多个order的时候(一笔主订单,对应多笔子订单),num=0,num是一个跟商品关联的属性,一笔订单对应多比子订单的时候,主订单上的num无意义。 |
numIid | num_iid | Long | 商品数字ID | |
nutFeature | nut_feature | String | 卡易售垂直表信息,去除下单ip之后的结果 | |
o2o | o2o | String | 导购宝=crm | |
o2oDelivery | o2o_delivery | String | 导购宝提货方式,inshop:店内提货,online:线上发货 | |
o2oGuideId | o2o_guide_id | String | 导购员id | |
o2oGuideName | o2o_guide_name | String | 导购员名称 | |
o2oOutTradeId | o2o_out_trade_id | String | 外部订单号 | |
o2oShopId | o2o_shop_id | String | 导购员门店id | |
o2oShopName | o2o_shop_name | String | 导购门店名称 | |
realPointFee | real_point_fee | Long | 买家实际使用积分(扣除部分退款使用的积分),交易完成后生成(交易成功或关闭),交易未完成时该字段值为 0。格式:100;单位:个 | |
receivedPayment | received_paymen t | Y | String | 卖家实际收到的支付宝打款金额(由于子订单可以部 分确认收货,这个金额会随着子订单的确认收货而不 断增加,交易成功后等于买家实付款减去退款金额)。精确到2位小数;单位:元。如:200.07,表示:200元7分 |
receiverAddress | receiver_address | Y | String | 收货人的详细地址 |
receiverCity | receiver_city | Y | String | 收货人的所在城市注:因为国家对于城市和地区的划分的有:省直辖市和省直辖县级行政区(区级别的)划分的,淘宝这边根据这个差异保存在不同字段里面比如:广东广州: 广州属于一个直辖市是放在的receiver_city的字段里面;而河南济源:济源属于省直辖县级行政区划分,是区级别的,放在了receiver_district里面建议:程序依赖于城市字段做物流等判断的操作,最好加一个判断逻辑:如果返回值里面只有receiver_district参数,该参数作为城市收货人的详细地址 |
receiverDistrict | receiver_district | Y | String | 收货人的所在地区 |
receiverMobile | receiver_mobile | Y | String | 收货人的手机号码 |
receiverName | receiver_name | Y | String | 收货人的姓名 |
receiverPhone | receiver_phone | Y | String | 收货人的电话号码 |
receiverState | receiver_state | Y | String | 收货人的所在省份 |
receiverZip | receiver_zip | String | 收货人的邮编 | |
sellerAlipayNo | seller_alipay_no | String | 卖家支付宝账号 | |
sellerCanRate | seller_can_rate | Boolean | 卖家是否可以对订单进行评价 | |
sellerCodFee | seller_cod_fee | String | 卖家货到付款服务费。精确到2位小数;单位:元。如:12.07,表示:12元7分。卖家不承担服务费的订单:未发货的订单获取服务费为0,发货后就能获取到正确值。 | |
sellerEmail | seller_email | String | 卖家邮件地址 | |
sellerFlag | seller_flag | Long | 卖家备注旗帜(与淘宝网上订单的卖家备注旗帜对应,只有卖家才能查看该字段)红、黄、绿、蓝、紫 分别对应 1、2、3、4、5 | |
sellerMemo | seller_memo | String | 卖家备注(与淘宝网上订单的卖家备注对应,只有卖 家才能查看该字段) | |
sellerMobile | seller_mobile | String | 卖家手机 | |
sellerName | seller_name | String | 卖家姓名 | |
sellerNick | seller_nick | String | 卖家昵称 | |
sellerPhone | seller_phone | String | 卖家电话 | |
sellerRate | seller_rate | Boolean | 卖家是否已评价。可选值:true(已评价),false(未评价) | |
sendTime | send_time | String | 订单将在此时间前发出,主要用于预售订单 | |
pccAf | pcc_af | Long | 天猫点券卡实付款金额,单位分 | |
pointFee | point_fee | Long | 买家使用积分,下单时生成,且一直不变。格式:100; 单位:个 | |
postFee | post_fee | Y | String | 邮费。精确到2位小数;单位:元。如:200.07,表示:200元7分 |
payTime | pay_time | Y | Date | 付款时间。格式:yyyy/MM/dd HH:mm:ss。订单的付款时间即为物流订单的创建时间。 |
Orders | Orders | Order[] | Trade子对象,Order对象列表。 | |
adjustFee | adjust_fee | Y | String | 手工调整金额.格式为:1.01;单位:元;精确到小数点后两位. |
bindOid | bind_oid | Long | 捆绑的子订单号,表示该子订单要和捆绑的子订单一起发货,用于卖家子订单捆绑发货 | |
buyerNick | buyer_nick | Y | String | 买家昵称 |
buyerRate | buyer_rate | Boolean | 买家是否已评价。可选值:true(已评价),false(未评 价) | |
cid | cid | Long | 交易商品对应的类目ID | |
consignTime | consign_time | N/Y | String | 子订单发货时间,当卖家对订单进行了多次发货,子订单的发货时间和主订单的发货时间可能不一样了,那么就需要以子订单的时间为准。(没有进行多次发货的订单,主订单的发货时间和子订单的发货时间都 一样)对于TP OMS传送订单:按实际情况传送,有发货则传,没有发货传空。 |
discountFee | discount_fee | Y | String | 子订单级订单优惠金额。精确到2位小数;单位:元。如:200.07,表示:200元7分 |
divideOrderFee | divide_order_fee | Y | String | 分摊之后的实付金额 |
endTime | end_time | N/Y | Date | 子订单的交易结束时间说明:子订单有单独的结束时 间,与主订单的结束时间可能有所不同,在有退款发起的时候或者是主订单分阶段付款的时候,子订单的结束时间会早于主订单的结束时间,所以开放这个字段便于订单结束状态的判断子订单结束或关闭时填写,否则为空。 |
Iid | iid | String | 商品的字符串编号(注意:iid 近期即将废弃,请用num_iid参数) | |
invoiceNo | invoice_no | String | 子订单所在包裹的运单号 | |
isDaixiao | is_daixiao | Boolean | 表示订单交易是否含有对应的代销采购单。如果该订单中存在一个对应的代销采购单,那么该值为true;反之,该值为false。 | |
isOversold | is_oversold | String | 是否超卖 | |
isServiceOrder | is_service_order | Boolean | 是否是服务订单,是返回true,否返回false。 | |
isWww | is_www | Boolean | 子订单是否是www订单 | |
itemMealId | item_meal_id | Long | 套餐ID | |
itemMealName | item_meal_name | String | 套餐的值。如:M8原装电池:便携支架:M8专用座充:莫凡保护袋 | |
logisticsCompany | logistics_compan y | String | 子订单发货的快递公司名称 | |
modified | modified | Y | Date | 订单修改时间,目前只有taobao.trade.ordersku.update会返回此字段。 |
Num | num | Y | Long | 购买数量。取值范围:大于零的整数 |
numIid | num_iid | Long | 商品数字ID | |
oid | oid | Y | Long | 子订单编号 |
orderFrom | order_from | String | 子订单来源,如jhs(聚划算)、taobao(淘宝)、wap(无 线) | |
outerIid | outer_iid | Y | String | 商家外部编码(可与商家外部系统对接)。外部商家自 己定义的商品Item的id,可以通过taobao.items.custom.get获取商品的Item的信息即:SCH的产品编码或条形码。 |
outerSkuId | outer_sku_id | Y | String | 外部网店自己定义的Sku编号 |
partMjzDiscount | part_mjz_discoun t | Y | String | 优惠分摊 |
payment | Payment | Y | String | 子订单实付金额。精确到2位小数,单位:元。如:200.07,表示:200元7分。对于多子订单的交易,计算公式如下:payment = price * num + adjust_fee – discount_fee ;单子订单交易,payment 与主订单的payment一致,对于退款成功的子订单,由于主订单的优惠分摊金额,会造成该字段可能不为 0.00 元。建议使用退款前的实付金额减去退款单中的实际退款金额计算。 |
picPath | pic_path | String | 商品图片的绝对路径 | |
price | price | Y | String | 商品价格。精确到2位小数;单位:元。如:200.07,表示:200元7分 |
refundId | refund_id | Long | 最近退款ID | |
refundStatus | refund_status | Y | String | 退款状态。可选值: WAIT_SELLER_AGREE:买家已经申请退款,等待卖家同意 WAIT_BUYER_RETURN_GOODS:卖家已经同意退款,等待买家退货 WAIT_SELLER_CONFIRM_GOODS:买家已经退货,等待卖家确认收货 SELLER_REFUSE_BUYER:卖家拒绝退款 CLOSED:退款关闭 SUCCESS:退款成功 子订单退款状态为以下两种情形时,CRM自动产生退货交易:1. SUCCESS(退款成功)2. NO_REFUND并且payment=0 |
sellerNick | seller_nick | String | 卖家昵称 | |
sellerRate | seller_rate | Boolean | 卖家是否已评价。可选值:true(已评价),false(未评价) | |
sellerType | seller_type | String | 卖家类型,可选值为:B(商城商家),C(普通卖家) | |
shippingType | shipping_type | String | 子订单的运送方式(卖家对订单进行多次发货之后,一个主订单下的子订单的运送方式可能不同,用order.shipping_type来区分子订单的运送方式) | |
skuId | sku_id | String | 商品的最小库存单位Sku的id。可以通过taobao.item.sku.get获取详细的Sku信息 | |
skuPropertiesName | sku_properties_n ame | String | SKU的值。如:机身颜色:黑色;手机套餐:官方标配 | |
snapshot | snapshot | String | 订单快照详细信息 | |
snapshotUrl | snapshot_url | String | 订单快照 URL | |
status | status | Y | String | 订单状态(请关注此状态,如果为 TRADE_CLOSED_BY_TAOBAO 状态,则不要对此订单 进行发货,切记啊!)。可选值: TRADE_NO_CREATE_PAY:没有创建支付宝交易 WAIT_BUYER_PAY:等待买家付款 WAIT_SELLER_SEND_GOODS:等待卖家发货,即:买 家已付款 WAIT_BUYER_CONFIRM_GOODS:等待买家确认 收货,即:卖家已发货 TRADE_BUYER_SIGNED:买家已签收,货到付款专 用 TRADE_FINISHED:交易成功 TRADE_CLOSED:付款以后用户退款成功,交易自 动关闭 TRADE_CLOSED_BY_TAOBAO:付款以前,卖家或 买家主动关闭交易 PAY_PENDING:国际信用卡支付付款确认中) |
storeCode | store_code | String | 发货的仓库编码 | |
ticketExpdateKey | ticket_expdate_k ey | String | 门票有效期的key | |
ticketOuterId | ticket_outer_id | String | 对应门票有效期的外部id | |
timeoutActionTime | timeout_action_ti me | Date | 订单超时到期时间。格式:yyyy/MM/dd HH:mm:ss | |
title | title | Y | String | 商品标题 |
totalFee | total_fee | String | 应付金额(商品价格 * 商品数量 + 手工调整金额 – 子订单级订单优惠金额)。精确到2位小数;单位:元。如:200.07,表示:200元7分 | |
promotionDetails | promotion_details | PromotionDetail[] | Trade下的子对象,促销信息列表。 | |
discountFee | discount_fee | String | 优惠金额(免运费、限时打折时为空),单位:元 | |
giftItemId | gift_item_id | String | 赠品的宝贝id | |
giftItemName | gift_item_name | String | 满就送商品时,所送商品的名称 | |
giftItemNum | gift_item_num | String | 满就送礼物的礼物数量 | |
id | id | Long | 交易的主订单或子订单号 | |
promotionDesc | promotion_desc | String | 优惠活动的描述 | |
promotionId | promotion_id | String | 优惠 id,(由营销工具id、优惠活动 id 和优惠详情id组成,结构为:营销工具id-优惠活动id_优惠详情id,如 mjs-123024_211143) | |
promotionName | promotion_name | String | 优惠信息的名称 | |
serviceOrders | service_orders | ServiceOrder[] | Trade对象下的子对象,服务子订单列表。 | |
buyerNick | buyer_nick | String | 卖家昵称 | |
itemOid | item_oid | Long | 服务所属的交易订单号。如果服务为一年包换,则item_oid这笔订单享受改服务的保护 | |
num | num | Long | 购买数量,取值范围为大于0的整数 | |
oid | oid | Long | 虚拟服务子订单订单号 | |
payment | payment | String | 子订单实付金额。精确到2位小数,单位:元。 如:200.07,表示:200元7分。 | |
picPath | pic_path | String | 服务图片地址 | |
price | price | String | 服务价格,精确到小数点后两位:单位:元 | |
refundId | refund_id | Long | 最近退款的id | |
sellerNick | seller_nick | String | 卖家昵称 | |
serviceDetailUrl | service_detail_url | String | 服务详情的URL地址 | |
serviceId | service_id | Long | 服务数字id | |
title | title | String | 商品名称 | |
totalFee | total_fee | String | 服务子订单总费用 | |
serviceTags | service_tags | LogisticsTag[] | Trade对象下的子对象,物流标签列表。 | |
orderId | order_id | String | 主订单或子订单的订单号 | |
logisticServiceTagList | logistic_service_tag_list | LogisticServiceTag[] | serviceTag 下的子对象,某一订单下的服务标签列表。 | |
serviceTag | Service_tag | String | 物流服务下的标签属性,多个标签之间有“;“分隔 | |
serviceType | Service_type | String | 消费者选快递请直接判断service_tag是否包含companyCode。而不要判断service_type |
2.14.2 参数示例
[{
"buyerNick": "安 xxxxXXXXX",
"isPartConsign": false,
"isDaixiao": false,
"eticketExt": "",
"receivedPayment": "376.00",
"type": "fixed",
"receiverCity": "内江市",
"buyerFlag": 0,
"nutFeature": "",
"canRate": false,
"receiverPhone": "",
"creditCardFee": "375.75",
"hasYfx": false,
"price": "596.00",
"serviceOrders": [],
"payment": "376.00",
"sellerRate": false,
"hasPostFee": true,
"adjustFee": "0.00",
"pointFee": 0,
"receiverZip": "516500",
"is3D": false,
"isBrandSale": false,
"o2o": "",
"stepTradeStatus": "FRONT_NOPAID_FINAL_NOPAID",
"sendTime": "",
"yfxFee": "",
"receiverState": "四川省",
"orders": [{
"bindOid": 0,
"ticketExpdateKey": "",
"discountFee": "180.00",
"buyerNick": "",
"iid": "",
"numIid": 564754520430,
"buyerRate": false,
"isDaixiao": false,
"Num": 1,
"shippingType": "express",
"refundStatus": "WAIT_BUYER_RETURN_GOODS",
"oid": 406361923684924655,
"title": "ANESSA/安热沙王俊 xxxxxxx 防晒霜 60ml*2 户外军训",
"itemMealId": 0,
"isServiceOrder": false,
"consignTime": "2019-04-11 18:26:23",
"outerSkuId": "1033xxxx1900",
"price": "596.00",
"logisticsCompany": "芝麻开门",
"outerIid": "1033xxxx900",
"modified": "2019-04-11 18:26:23",
"divideOrderFee": "376.00",
"payment": "376.00",
"sellerRate": false,
"invoiceNo": "611062xxxxx25005",
"skuPropertiesName": "化妆品净含量:120ml",
"adjustFee": "0.00",
"skuId": "37389xxxx898",
"sellerNick": "",
"itemMealName": "",
"ticketOuterId": "",
"timeoutActionTime": "2019/04/11 18:26:23",
"isWww": false,
"picPath": "https://img.alicdn.com/bao/uploaded/i4/2582702075/O1CN01DJ9DxxxxxxxxxxxxxxxeFP_!!0-item_pic.jpg",
"totalFee": "416.00",
"snapshotUrl": "o:406361923xxxxxxxxxx655_1",
"partMjzDiscount": "40.00",
"orderFrom": "WAP,JHS,WAP",
"endTime": "2019-04-21 18:26:33",
"sellerType": "B",
"isOversold": false,
"refundId": 0,
"snapshot": "",
"cid": 50011982,
"status": "TRADE_FINISHED",
"storeCode": ""
}],
"o2oGuideId": "",
"snapshot": "",
"buyerMemo": "",
"realPointFee": 0,
"status": "TRADE_FINISHED",
"arriveInterval": 0,
"iid": "",
"yfxType": "",
"sellerName": "上海 xx 贸易发展有限公司",
"shippingType": "express",
"buyerArea": "移动",
"pccAf": 0,
"sellerAlipayNo": "***ssa@ilarge.cn",
"alipayWarnMsg": "",
"alipayNo": "2019041122001xxxxxxxx027955266",
"sellerFlag": 0,
"markDesc": "",
"receiverDistrict": "隆昌市",
"rxAuditStatus": "",
"stepPaidFee": "",
"o2oDelivery": "",
"yfxId": "",
"sellerNick": "anessa 安热沙官方旗舰店",
"serviceTags": [],
"tradeMemo": "",
"postFee": "0.00",
"receiverMobile": "159xxxx5625",
"buyerMessage": "",
"areaId": "",
"buyerObtainPointFee": 188,
"expressAgencyFee": "0.00",
"endTime": "2019/04/21 18:26:33",
"discountFee": "40.00",
"o2oOutTradeId": "",
"payTime": "2019-04-11 14:55:51",
"buyerEmail": "176xxxxx2@qq.com",
"numIid": 564754520430,
"buyerRate": false,
"Num": 1,
"tid": 406361923600000010101010,
"consignTime": "2019/04/11 18:26:23",
"sellerCodFee": "0.00",
"isWt": false,
"invoiceType": "",
"modified": "2019/04/21 18:26:33",
"tradeSource": "",
"o2oShopName": "",
"consignInterval": 0,
"isLgtype": false,
"Created": "2019/04/11 14:55:47",
"sellerPhone": "021-58xxx550",
"sellerEmail": "xxxxxx@ilarge.cn",
"picPath": "https://img.alicdn.com/bao/uploaded/i4/2582702075/xxxxxxxxxxxxxxxxxxxxFP_!!0item_pic.jpg",
"receiverAddress": "古湖街道跃进街 xxxxxxxxxxxx",
"codStatus": "NEW_CREATED",
"availableConfirmFee": "0.00",
"sellerMemo": "",
"invoiceName": "",
"buyerAlipayNo": "***229422@qq.com",
"alipayUrl": "",
"title": "ANESSA 安热沙官方旗舰店",
"zeroPurchase": false,
"arriveCutTime": "",
"codFee": "0.00",
"asyncModified": "",
"promotionDetails": [{
"giftItemId": "",
"promotionName": "聚划算",
"discountFee": "180.00",
"giftItemNum": "",
"id": 406361923684924655,
"promotionDesc": "聚划算:省 180.00 元",
"giftItemName": "",
"promotionId": "Tmall$saleJhs-3153345006_64404704774"
}, {
"giftItemId": "",
"promotionName": "防晒品类购物券",
"discountFee": "30.00",
"giftItemNum": "",
"id": 406361923684924655,
"promotionDesc": "防晒品类购物券:省 30.00 元",
"giftItemName": "",
"promotionId": "coupon2category-8102904414_63456072279-944937124984"
}, {
"giftItemId": "",
"promotionName": "直播优惠券",
"discountFee": "10.00",
"giftItemNum": "",
"id": 406361923684924655,
"promotionDesc": "直播优惠券:省 10.00 元",
"giftItemName": "",
"promotionId": "shopbonus-8174320787_64496096024-944978725031"
}],
"isForceWlb": false,
"commissionFee": "24.06",
"lgAgingType": "",
"receiverName": "胡 XX",
"lgAging": "",
"timeoutActionTime": "1997/12/04 00:00:01",
"alipayPoint": 0,
"o2oGuideName": "",
"sellerMobile": "139xxxx2723",
"buyerCodFee": "0.00",
"hasBuyerMessage": false,
"tradeFrom": "WAP,JHS,WAP",
"totalFee": "596.00",
"o2oShopId": "",
"snapshotUrl": "o:406361923xxxxx24655_1",
"sellerCanRate": false,
"alipayId": 0,
"promotion": ""
}]
2.14.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | varchar(6) | 空:处理成功 -1:系统错误 -21:品牌错误 |
返回消息 | Message | nvarchar(255) | 错误消息文本。仅错误时有返回内容。 |
2.14.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.15 查询会员购买里程信息(NARS)
接口地址: /mileage/info接口说明: 查询会员购买里程账户信息,仅限查询本期帐户信息。本接口仅限 NARS 品牌使用接口名称: EC_GetMemberMileageAccount请求方式: HTTP POST 提交
2.15.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
会员编号 | MemberNo | Y | varchar(13) |
2.15.2 参数示例
{
"OwnerId": "10",
"MemberNo": "YZ008028"
}
2.15.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | varchar(6) | 空或 0:处理成功-1:系统错误-21:品牌错误 |
返回消息 | Message | nvarchar(255) | 错误消息文本。仅错误时有返回内容。 |
会员里程账户集合 | MemberMileageAccountData | ||
所有者 | OwnerId | Y | |
会员编号 | MemberNo | Y | |
品类编码 | ExchangeRuleClassID | Y | |
购买数量 | TotalSaleQty | ||
退货扣减数量 | TotalRefundQty | ||
已兑换扣减数量 | TotalExchangedDeductQty | ||
失效数量 | TotalExpiredQty | ||
剩余可兑礼的有 效数量 | TotalValidQty |
2.15.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberMileageAccountData": [{
"OwnerId": "10",
"MemberNo": "YZ008028",
"ExchangeRuleClassID": "C1",
"TotalSaleQty": "6",
"TotalRefundQty": "0",
"TotalExchangedDeductQty": "5",
"TotalExpiredQty": "0",
"TotalValidQty": "1"
}, {
"OwnerId": "10",
"MemberNo": "YZ008028",
"ExchangeRuleClassID": "C2",
"TotalSaleQty": "5",
"TotalRefundQty": "0",
"TotalExchangedDeductQty": "4",
"TotalExpiredQty": "0",
"TotalValidQty": "1"
}, {
"OwnerId": "10",
"MemberNo": "YZ008028",
"ExchangeRuleClassID": "C3",
"TotalSaleQty": "1",
"TotalRefundQty": "0",
"TotalExchangedDeductQty": "0",
"TotalExpiredQty": "0",
"TotalValidQty": "1"
}]
}
2.16 查询会员可兑礼情况(NARS)
接口地址: /mileage/query接口说明: 根据已选择的预约礼品及数量,返回剩余和兑换规则可预约的礼品数量。如果仅仅是查询会员当前各兑礼规则最新的可兑礼情况,请不要传递参数 “PresentReserveApplyDetail”节点信息。接口名称: EC_GetMemberCanExchangeAccount请求方式: HTTP POST 提交
2.16.1 参数说明
- 头部信息: PresentReserveApply
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
会员编号 | MemberNo | Y | varchar(13) | |
活动编号 | ActivityId | N | varchar(13) | 如果传递了预约产品信息则必填。 |
- 模拟礼品预约申请集合:PresentReserveApplyDetail
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
兑礼规则类型编号 | ExchangeRuleTypeId | Y | varchar(10) | |
礼品编号 | PresentId | Y | varchar(10) | |
预约数量 | ReserveNum | Y | int |
2.16.2 参数示例
{
"PresentReserveApply": {
"OwnerId": "10",
"MemberNo": "YZ008029",
"ActivityId": "100841-0010"
},
"PresentReserveApplyDetail": [{
"PresentId": "10055",
"ReserveNum": 1,
"ExchangeRuleTypeId": "10"
}, {
"PresentId": "10055",
"ReserveNum": 1,
"ExchangeRuleTypeId": "10"
}]
}
2.16.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | varchar(6) | 空或 0:处理成功-1:系统错误-21:品牌错误 |
返回消息 | Message | nvarchar(255) | 错误消息文本。仅错误时有返回内容。 |
- 可兑换礼品账户集合:MemberCanExchangeResultList
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
兑礼规则类型编号 | ExchangeRuleTypeId | varchar(10) | |
可兑换数量 | CanExchangeQty | Int |
2.16.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberCanExchangeResultList": [{
"ExchangeRuleTypeId": "10",
"CanExchangeQty": "0"
}, {
"ExchangeRuleTypeId": "20",
"CanExchangeQty": "0"
}, {
"ExchangeRuleTypeId": "30",
"CanExchangeQty": "0"
}, {
"ExchangeRuleTypeId": "60",
"CanExchangeQty": "1"
}]
}
2.16.4 兑礼规则定义
10:脸部同品类满3件
20:眼部同品类满3件
30:唇部同品类满3件
40:面颊同品类满3件
50:指甲同品类满3件
60:跨品类满3件
70:全品类各满1件
2.17 答谢活动礼品预约 (NARS)
接口地址: /mileage/reserve接口说明: 答谢活动礼品预约申请处理接口名称: EC_NewPresentReserveApply请求方式: HTTP POST 提交
2.17.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者编号 | OwnerId | Y | Varchar(4) | |
会员编号 | MemberNo | Y | Varchar(15) | |
活动编号 | ActivityId | Y | Varchar(13) |
- 礼品预约申请集合:PresentReserveApplyDetail
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
礼品编号 | PresentId | Y | Varchar(10) | |
预约数量 | Qty | Y | Int | |
兑礼规则编号 | ExchangeRuleTypeId | Y | Varchar(8) |
2.17.2 参数示例
{
"PresentReserveApply": {
"OwnerId": "10",
"MemberNo": "M1000854113",
"ActivityId": "100841-0002"
},
"PresentReserveApplyDetail": [{
"PresentId": "10000C",
"Qty": 2,
"ExchangeRuleTypeId": "30"
}, {
"PresentId": "10000D",
"Qty": 2,
"ExchangeRuleTypeId": "40"
}]
}
2.17.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
错误代码 | ErrorCode | String | |
错误消息 | Message | String | |
礼品预约结果集合 | ReserveApplyList | ||
预约编号 | ReserveId | String | |
礼品编号 | PresentId | String | |
礼品名称 | PresentName | String | |
预约数量 | Qty | Int | |
兑换开始日期 | ExchangeBeginDate | DateTime | 只精确到日期,时分秒请忽略格式:yyyy-MM-ddTHH:mm:ss |
兑换截止日期 | ExchangeEndDate | DateTime | 只精确到日期,时分秒请忽略格式:yyyy-MM-ddTHH:mm:ss |
兑礼规则编号 | ExchangeRuleTypeId | String |
2.17.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"ReserveApplyList": [{
"ReserveId": "",
"PresentId": "",
"PresentName": "",
"Qty": "",
"ExchangeRuleTypeId": "",
"ExchangeBeginDate": "",
"ExchangeEndDate": ""
}, {
"ReserveId": "",
"PresentId": "",
"PresentName": "",
"Qty": "",
"ExchangeRuleTypeId": "",
"ExchangeBeginDate": "",
"ExchangeEndDate": ""
}]
}
2.18 答谢活动礼品兑换领取 (NARS)
接口地址: /mileage/exchnange接口说明: 答谢活动礼品预约成功后到店兑换领取时,调用本接口进行兑换领取处理接口名称: EC_NewPresentExchange请求方式: HTTP POST 提交
2.18.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
礼品在线兑换集合 | PresentExchangeItems | |||
兑换码/预约编号 | ReserveId | Y | varchar(20) |
2.18.2 参数示例
{
"OwnerId": "10",
"PresentExchangeItems": [{
"ReserveId": "8702001076263"
}, {
"ReserveId": "8702001076264"
}]
}
2.18.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | varchar(6) | 空或0:处理成功 -1:系统错误 -21:品牌错误 |
返回消息 | Message | nvarchar(255) | 错误消息文本。仅错误时有返回内容。 |
2.18.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.19 更新会员隐私政策确认状态
接口地址: /policy/update接口说明: 如果会员未确认过隐私政策,调用本接口更新为已确认,如果同时上传隐私政策确认签名文件则会将隐私政策确认状态更新为已上传确认签名文件接口名称: UpdatePolicyStatus请求方式: HTTP POST 提交
2.19.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
会员编号 | MemberNo | Y | varchar(50) | CRM 会员编号 |
签名照片文件格式/类型 | FileExtension | N | varchar(10) | 文件扩展名,不带“.” |
签名照片文件内容 | FileContent | N | text | 签名照片文件二进制转换为 BASE64,请压缩到 1M 以内 |
是否确认过隐私策略 | IsConsented | Y | int | 1:已确认。 其他:未确认。 (调用接口必须传1,否则返回错误) |
2.19.2 参数示例
{
"OwnerId": "10",
"MemberNo": "XXX",
"FileExtension": "JPG",
"FileContent": "XXXXXXX",
"IsConsented": 1
}
2.19.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:系统错误或 IsConsented 值错误。 -21:品牌错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
会员编号 | MemberNo | String | 如果成功,则返回对应的会员编号 |
2.19.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberNo": ""
}
2.20 第三方平台ID(如SFCCID)绑定
接口地址: /platform/bind接口说明: 将第三方平台的用户 ID 与会员编号进行绑定接口名称: OtherPlatfrom_MemberBind请求方式: HTTP POST 提交
2.20.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
会员编号 | MemberNo | Y | varchar(13) | |
第三方平台名称 | OtherPlatfromType | Y | varchar(10) | SFCC:SFCC 的用户 ID。 ALIPAY_UERID:支付宝用户 ID。 |
第三方平台用户 ID | OtherPlatfromId | Y | varchar(30) |
2.20.2 参数示例
{
"OwnerId": "10",
"MemberNo": "XXXXXXXX000001",
"OtherPlatfromType": "SFCC",
"OtherPlatfromId": "XXXXXXXXXXXXXXXXX001"
}
2.20.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功;-1:错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
2.20.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.21 更新会员所属店铺及所属BC信息
接口地址: /bcandstore/update接口说明: 通过调用本接口来更新会员所属店铺和所属 BC 信息接口名称: UpdateMemberBCAndStore请求方式: HTTP POST 提交
2.21.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
会员编号 | MemberNo | Y | varchar(13) | |
所属店铺 | StoreId | N | varchar(13) | 非潜在会员,不允许更新为空 如果不更新所属店铺,请传递原所属店铺。 |
所属 BC | ServiceEmployeeNo | N | varchar(13) | 如为空,不会更新成空,保持不变。 |
2.21.2 参数示例
{
"OwnerId": "10",
"MemberNo": "M1000450701",
"StoreId": "32310000",
"ServiceEmployeeNo": "00007674"
}
2.21.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 非空:失败 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
2.21.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.22 更新会员标签
接口地址: /tag/update接口说明: 通过调用本接口来更新会员标签接口名称: EditMemberTag请求方式: HTTP POST 提交
2.22.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | string | |
标签 Id | TagId | Y | string | |
操作类型 | Action | Y | string | Add:追加成员; Delete:删除成员; Clear:全部清空,无需传递会员信息 |
会员编号列表 | MemberList | N | List | Add 和 Delete 时必传,Clear 时不用传 |
2.22.2 参数示例
{
"OwnerId": "10",
"TagId": "50001",
"Action": "Add",
"MemberList": ["0011000300008", "M1000450701"]
}
2.22.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 非空:失败 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
2.22.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.23 查询会员礼品及券
接口地址: /gifts/detail接口说明: 查询会员礼品及券信息接口名称: EC_GetMemberGifts接口方式: HTTP POST 提交
2.23.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
会员编号 | MemberNo | varchar(13) | MemberNo 和 Id 字段必须提供一个。 | |
活动类型 | PAType | varchar(4) | 10:试用品活动(查询礼品信 息) 20:积分兑换活动(查询答谢 品信息) 30:优惠券活动(查询券信 息) 如果为空,则返回 10 和 20 数据 | |
开始日期 | BeginTime | datetime | 申请时间起始,当没有提供 Id 字段时必须提供,请只精确到日期,不要传时分秒 格式:yyyy-MM-dd | |
结束日期 | EndTime | datetime | 申请时间截止,当没有提供 Id 字段时必须提供,请只精确到日期,不要传时分秒 格式:yyyy-MM-dd | |
状态 | PAStatus | varchar(2) | 10:礼品或券申请成功 20:礼品已领取或券已核销 30:已过期 传递空则返回所有状态的数据。 | |
申请编号/预约编号/券码编号 | Id | varchar(20) | MemberNo 和 Id 字段必须 提供一个。 | |
领取礼品店铺 | TakeStoreId | varchar(10) | 仅针对活动类型 10 和 20 有 效。 |
2.23.2 参数示例
{
"OwnerId": "100010",
"MemberNo": "",
"PAType": "",
"BeginTime": "2020-01-01",
"EndTime": "2022-01-01",
"PAStatus": ""
}
2.23.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:状态输入错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
- 礼品兑换信息集合:HistoryApplyArray
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
礼品兑换信息集合: | HistoryApplyArray | ||
礼品兑换信息对象: | HistoryApply | ||
所有者 | OwnerID | varchar(4) | |
类型 | PAType | varchar(2) | 10:领取试用礼品; 20:答谢活动兑换的礼品; 30:券 |
申请编号 | ApplyId | varchar(30) | 类型 10:【申请礼品编号(领取码)】 类型 20:【预约礼品编号(领取码)】 类型 30:【发行券码时间】 |
申请时间 | ApplyDate | DateTime | 类型 10:【申请礼品时间】 类型 20:【预约礼品时间】 类型 30:【发行券码时间】 格式:yyyy-MM-ddTHH:mm:ss |
会员编号 | MemberNo | varchar(13) | |
会员姓名 | MemberName | Varchar(50) | |
手机号 | Mobile | Varchar(20) | 已进行掩码处理。 |
活动编号 | PAID | varchar(20) | 类型 10:【领取试用活动编号】 类型 20:【答谢活动编号】 类型 30:【发行券的活动编号(不限于领取试用活动、答谢 活动和优惠券活动)】 |
活动名称 | PAName | Varchar(50) | |
预约方式名称 | ReserveMethod | Varchar(20) | |
礼品编号 | GoodsCode | varchar(8) | 类型 10:【礼品编号】 类型 20:【礼品编号】 类型 30:【券编号(不是券码)】 |
礼品名称 | GoodsName | nvarchar(100) | 类型 10:【礼品名称】 类型 20:【礼品名称】 类型 30:【券名称】 |
礼品名称(英文) | GoodsName_EN | nvarchar(150) | 类型 10 和 20 有效。 |
兑换规则编码 | ExchangeRuleTypeId | varchar(10) | 仅活动类型 20 有效,仅针对购买里程兑换礼品有效,目前仅 NARS 品牌有效。 |
兑换规则名称 | ExchangeRuleTypeName | varchar(50) | 仅活动类型 20 有效,仅针对购买里程兑换礼品有效,目前仅 NARS 品牌有效。 |
礼品数量 | Qty | int | 类型 10 和 20 有效。 |
兑换积分 | ExchangeScore | int | 类型 20 有效。 |
礼品或券的原始状态 | GoodsStatus | varchar(2) | 1) 类型 10:值定义如下:20:申请成功;30:已领取;85:已过期; 2) 类型 20:值定义如下:20:预约成功;30:已兑换; 85:已过期 3) 类型 30:值定义如下: 10:未使用; 15:已预约;20:已使用;70:已冻结; 90:已过期 |
礼品领取有效期开始 | ExchangeBeginDate | datetime | 类型 10 和 20 有效。精确到日期,时分秒无效,请忽略时分秒。 格式:yyyy-MM-ddTHH:mm:ss |
礼品领取有效期结束 | ExchangeEndDate | datetime | 类型 10 和 20 有效。精确到日期,时分秒无效,请忽略时分秒。 格式:yyyy-MM-ddTHH:mm:ss |
实际领取礼品日期 | ExchangeDate | datetime | 类型 10 和 20 有效。 格式:yyyy-MM-ddTHH:mm:ss |
领取店铺编号 | ExchangeStoreId | varchar(10) | 类型 10 和 20 有效。 |
领取店铺名称 | ExchangeStoreName | varchar(50) | 类型 10 和 20 有效。 |
券的核销状态 | TicketStatus | varchar(2) | 10:未核销;20:已核销;30:已失效 |
券序列号 | TicketSerialNo | varchar(20) | 类型 30 有效。 |
券类型 | TicketType | varchar(2) | 类型 30 有效:【10:定额券;20:打折券;30:服务券;40:礼品券】 |
券使用有效期 | TicketBegYmd | DateTime | 类型 30 有效。精确到日期,时分秒无效,请忽略时分 秒。 格式:yyyy-MM-ddTHH:mm:ss |
券使用有效期 | TicketEndYmd | DateTime | 类型 30 有效。精确到日期,时分秒无效,请忽略时分 秒。 格式:yyyy-MM-ddTHH:mm:ss |
券核销时间 | SaleDateTime | datetime | 类型 30 有效。 格式:yyyy-MM-ddTHH:mm:ss |
是否配送到家 | IsExpress | Boolean | True:配送到家 False:非配送到家 只有 IsExpress=true 时,才会有以下信息 |
快递单号 | ExpressNo | varchar(20) | |
快递状态代码 | ExpressStatusCode | varchar(2) | |
快递公司代码 | ExpressCompanyCode | varchar(4) |
2.23.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"HistoryApplyArray": [{
"ApplyDate": "",
"GoodsCode": "",
"OwnerID": "",
"ApplyId": "",
"MemberNo": "",
"PAID": "",
"PAType": "",
"Qty": "",
"ExchangeScore": "",
"TicketSerialNo": "",
"GoodsStatus": "",
"TicketStatus": "",
"TicketType": "",
"GOODSNAME": "",
"GOODSNAME_EN": "",
"TicketBegYmd": "",
"TicketEndYmd": "",
"ExchangeStatus": "",
"ExchangeDate": "",
"ExchangeStoreId": "",
"ExchangeStoreName": "",
"ExchangeBeginDate": "",
"ExchangeEndDate": "",
"SaleDateTime": "",
"IsExpress": "",
"ExpressNo": "",
"ExpressStatusCode": ""
}]
}
2.24 查询促销活动编号
接口地址: /activity/query接口说明: 获取促销活动编号列表(第二天开始的所有活动)接口名称: EC_ScoreActivityQuery接口方式: HTTP POST 提交
2.24.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) |
2.24.2 参数示例
{
"OwnerId": ""
}
2.24.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:系统错误 -2:找不到会员 -21:品牌错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
所有者 | OwnerId | String | |
活动计数 | ActivityCount | int | 0:为没有活动,大于0为有活动。 |
- 活动明细: ActivityArray
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
活动编号 | ActivityId | varchar(13) | |
活动名称 | ActivityName | nvarchar(50) | 促销活动/积分活动 |
活动区分 | ActivityDistinction | varchar(2) | 00:促销活动 积分活动: 10:积分倍率活动; 20:增加积分活动; 30:推荐人增加积分活动 |
开始日期 | BeginDateTime | varchar(8) | YYYYMMDD |
结束日期 | EndDateTime | varchar(8) | YYYYMMDD |
状态 | Status | varchar(2) | 10:未申请; 20:待审核; 30:已审核; 99:删除 只输出已审核的数据 |
- 活动明细: ScoreValueArray
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
会员等级 | MemberType | varchar(2) | 会员等级 |
积分率或增加 积分 | ScoreValue | decimal(12,4) | 1. 当是积分倍率活动时(活动区分=“10”),存储倍率,如 1.5 倍。倍率是指基于基准积分率基础上的倍数。实际的积分率 = 基准积分率 * 积分倍率 2. 当是增加积分活动时(活动区分=“20”),存储增加的积分值; |
2.24.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"OwnerId": "",
"ActivityCount": "2",
"ActivityArray": [{
"ActivityId": "100452-015",
"ActivityName": "双11活动",
"ActivityDistinction": "10",
"BeginDateTime": "20141111",
"EndDateTime": "20141111",
"Status": "30",
"ScoreValueArray": [{
"MemberType": "1",
"ScoreValue": "1.5"
}, {
"MemberType": "2",
"ScoreValue": "2.0"
}]
}]
}
2.25 批量添加活动对象
接口地址: /activity/batchadd接口说明: 通过调用本接口可以对指定的活动对象批量添加活动成员接口名称: AddMemberToActivity接口方式: HTTP POST 提交
2.25.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
活动对象编号 | DMRecordId | Y | varchar(20) |
- 活动明细: MemberMstArray
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
会员编号 | MemberNo | Y | varchar(13) |
2.25.2 参数示例
{
"OwnerId": "10",
"DMRecordId": "38",
"MemberMstArray": [{
"MemberNo": "M1000450701"
}, {
"MemberNo": "M1000450702"
}]
}
2.25.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 非空:失败 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容 |
2.25.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.26 核销会员礼品申请或积分兑换预约
接口地址: /present/reserve接口说明: 核销会员的领取试用申请或积分兑换预约申请记录。核销后,领取试用申请状态为已领取,积分兑换预约状态为已兑换接口名称: PresentAndSampleTake接口方式: HTTP POST 提交
2.26.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
会员编号 | MemberNo | Y | varchar(13) | |
申请编号 | ApplyId | Y | varchar(20) | |
需要核销的申请类型 | PAType | Y | varchar(2) | 10: 领取试用申请 20 积分兑换预约申请 |
2.26.2 参数示例
{
"OwnerId": "78",
"MemberNo": "XXX",
"ApplyId": "XXXXXXXXXXXXXXXXXX",
"PAType": "10"
}
2.26.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 非空:失败 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
2.26.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.27 预约答谢活动礼品
接口地址: /present/exchange接口说明: 答谢活动做礼品预约申请接口名称: EC_PresentExchange接口方式: HTTP POST 提交
2.27.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
活动编号 | ActiveNo | Y | varchar(13) | |
会员编号 | MemberNo | Y | varchar(13) | |
领取店铺编号 | Store | N | varchar(13) | 如果传递了领取店铺,则领取店铺为该参数值;否则为会员所属店 |
商品集合 | GoodsArray | 兑换礼品 数组;注意,该节点需要有一个属性:count,表示礼品明细的行数,参见参数示例。 | ||
商品对象 | Good | |||
商品编号 | GoodCode | Y | varchar(50) | |
预约数量 | Qty | Y | int | |
配送到家 | OrderConsignee | 如果活动支持【配送到家】则可以填写配送信息 | ||
收件人姓名 | Name | varchar(20) | ||
收件人手机 | Mobile | varchar(15) | ||
收件人电话 | Telephone | varchar(20) | ||
省 | Area_State | varchar(20) | ||
市 | Area_City | varchar(20) | ||
区 | Area_District | varchar(20) | ||
详细地址 | Addr | varchar(200) |
2.27.2 参数示例
{
"ActiveNo": "",
"MemberNo": "",
"GoodsArray": [{
"GoodCode": "A001",
"Qty": 1
}, {
"GoodCode": "A002",
"Qty": 1
}],
"OwnerId": "",
"Store": "",
"OrderConsignee": {
"Name": "",
"Mobile": "",
"Telephone": "",
"Area_State": "",
"Area_City": "",
"Area_District": "",
"Addr": ""
}
}
2.27.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:系统错误 -14:礼品兑换预约失败 -2:找不到会员 -11:会员已冻结 -12:会员帐户信息不存在 -17:礼品明细库存信息不存在 -18:礼品库存不足 -13:会员帐户积分不足 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
会员编号 | MemberNo | varchar(13) | 错误时返回空。 |
对应期的剩余可 用积分值 | Score | int | |
预约编号 | ReserveId | varchar(30) | |
预约信息集合 | ReserveDetails | ||
预约信息 | ReserveDetail | ||
预约编号 | ReserveId | varchar(30) | |
礼品编号 | GoodsCode | varchar(10) | |
预约数量 | Qty | Int | |
券集合 | Tickets | 当兑换的产品为券产品时才有本节点 | |
券对象 | Ticket | 当兑换的产品为券产品时才有本节点 | |
券产品编号 | GoodCode | String | |
该券产品发行的 券码 | Ecode | string |
2.27.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberNo": "",
"Score": "",
"ReserveId": "",
"ReserveDetails": [{
"ReserveId": "",
"GoodsCode": "",
"Qty": ""
}, {
"ReserveId": "",
"GoodsCode": "",
"Qty": ""
}],
"Tickets": [{
"GoodCode": "",
"Ecode": ""
}, {
"GoodCode": "",
"Ecode": ""
}]
}
2.28 申请领取试用礼品
接口地址: /sample/apply接口说明: 会员进行领取试用活动的礼品进行申请接口名称: EC_SampleApply接口方式: HTTP POST 提交
2.28.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
活动编号 | ActiveNo | Y | varchar(13) | |
会员编号 | MemberNo | Y | varchar(13) | |
申请店铺编号 | ApplyStore | Y | varchar(10) | EC 调用传 EC 店号,其他调用传递 CRM 分配给调用方的 SYSCODE(不是“SYSCODE”字符串) |
领取店铺编号 | Store | N | varchar(10) | 1.对于扣减总部库存的活动请保持空; 2.限定会员所属店领取礼品的活动自动会设置为会员所属店铺,请保持空值调用; 3.以上情况之外,可以指定领取店铺,如果不指定,则自动会设置为会员所属店铺。 |
- 商品信息集合:GoodsArray
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
商品编号 | GoodCode | Y | varchar(8) | |
申请数量 | Qty | Y | int |
2.28.2 参数示例
{
"OwnerId": "",
"Store": "",
"ApplyStore": "",
"ActiveNo": "",
"MemberNo": "",
"GoodsArray": [{
"GoodCode": "",
"Qty": 0
}, {
"GoodCode": "",
"Qty": 0
}]
}
2.28.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:成功 -16:试用品领取申请失败 -9998:该会员未确认隐私政策。 |
返回消息 | Message | String | |
会员编号 | MemberNo | varchar(13) | |
申请编号 | ApplyId | varchar(30) |
2.28.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberNo": "",
"ApplyId": ""
}
2.29 取消领取试用申请
接口地址: /sample/cancel接口说明: 通过本接口对指定的领取试用申请进行取消,取消后会员可以再重新进行申请接口名称: CancelSampleApply接口方式: HTTP POST 提交
2.29.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
申请编号 | ApplyId | Y | varchar(13) | 申请编号 |
2.29.2 参数示例
{
"OwnerId": "10",
"ApplyId": "9106009076212"
}
2.29.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功;非空:失败 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
2.29.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.30 会员服务券预
接口地址: /coupon/reserve接口说明: 会员服务券预约申请,可以支持在已预约的基础上再做预约更新接口名称: MemberTicketReserve接口方式: HTTP POST
2.30.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
所属店铺 | StoreId | N | varchar(10) | |
会员编号/手机号 | MemberNo | Y | varchar(50) | |
服务券序列号 | CouponSerialNo | Y | varchar(20) | |
预约操作类型 | ReserveType | Y | int | 1:预约; 2:取消预约 如果是2以下信息不用传。 |
预约使用本券的店铺编号 | ApplyStoreId | N | varchar(10) | |
预约使用本券的开始时间 | ApplyDateTime | N | Datetime | 格式:yyyy-MM- ddTHH:mm:ss |
预约使用本券的结束时间 | ApplyEndDateTime | N | Datetime | 格式:yyyy-MM- ddTHH:mm:ss |
预约备注信息 | ApplyMemo | N | nvarchar(200) | |
预约服务 BC | ApplyServiceEmployeeNo | N | varchar(20) | (2020-01-01 0:00 正式发布) |
2.30.2 参数示例
{
"OwnerId": "78",
"StoreId": "32300000",
"MemberNo": "XXXX",
"CouponSerialNo": "1000000000000001",
"ReserveType": 1,
"ApplyStoreId": "32300000",
"ApplyDateTime": "2017-12-31T10:00:00",
"ApplyMemo": ""
}
2.30.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:系统错误 -2:找不到会员 -21:品牌错误 -31:券未到使用期限 -32:券已过期 -33:券已被使用 -34:券已被冻结 -35:券已被取消 -36:券不允许在该店铺使用 -37:券不存在于该会员帐户中 -38:券不存在 -9998:该会员未确认隐私政策 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
2.30.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.31 核销会员的券码
接口地址: /coupon/consume接口说明: 核销会员券接口名称: EC_CouponConsume接口方式: HTTP POST 提交
2.31.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
所属店铺 | StoreId | N | varchar(10) | |
会员编号 | MemberNo | Y | varchar(50) | |
核销的券序列号 | CouponSerialNo | Y | varchar(20) | |
核销类型 | ConsumptionType | Y | varchar(20) | 70:因需要核销优惠券而临时冻结券;--对于EC使用优惠券,订单创建时调用传递该值 71:其他原因冻结券; 20:使用券(正式核销券);--对于 EC 使用优惠券,订单支付完成时调用传递该值 10:重新恢复券;--对于 EC,在订单支付之前取消订单时调用传递该值(券状态此时应为【已冻结】才可调用) |
使用本券的交易店铺编号 | SaleStoreId | N | varchar(10) | ConsumptionType=20 或 70 或金额折扣券则必传 ConsumptionType=71 并且是服务券时或 ConsumptionType=10 不要传。 |
使用本券的交易 POS 机号 | SalePosId | N | INT | ConsumptionType=20 或 70 或金额折扣券则必传 ConsumptionType=71 并且是服务券时或 ConsumptionType=10 不要传。 |
使用本券的交易小票号 | SaleBillNo | N | INT | ConsumptionType=20 或 70 或金额折扣券则必传 ConsumptionType=71 并且是服务券时或 ConsumptionType=10 不要传。 |
核销 BC | SaleEmployeeNo | N | varchar(20) | 对于服务券表示实际服务BC,其他类型的券暂时无效。 (2020-01-01 00:00正式发布) |
2.31.2 参数示例
{
"OwnerId": "78",
"StoreId": "32300000",
"MemberNo": "XXX",
"CouponSerialNo": "1000000000000001",
"ConsumptionType": "70",
"SaleStoreId": "32300000",
"SalePosId": 1,
"SaleBillNo": 255
}
2.31.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:系统错误 -2:找不到会员 -21:品牌错误 -31:券未到使用期限。 -32:券已过期 -33:券已被使用 -34:券已被冻结 -35:券已被取消 -36:券不允许在该店铺使用。(EC 可以显示为不允 许在线上使用) -37:券不存在于该会员帐户中 -38:券不存在 -39:使用本券的交易信息(店铺编号、POS 机号、小 票号)不完整 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
2.31.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.32 批量查询会员券信息
接口地址: /coupon/query接口说明: 分页批量查询会员券信息。本接口于 2020-01-01 0:00 正式发布。每页返回500行,如果返回结果中HasNextPage=false,则说明当前页就是最后一页接口名称: EC_GetMemberTickets接口方式: HTTP POST 提交
2.32.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
会员编号 | MemberNo | N | varchar(13) | MemberNo 和 Id 字段必须提供一个 |
发行券活动号 | IssueActivityId | N | varchar(13) | |
发行日期起始值 | IssueDateBegin | N | datetime | 申请日期起始,请只精确到日期,不要传时分秒 格式:yyyy-MM-dd |
发行日期截止值 | IssueDateEnd | N | datetime | 申请日期截止,请只精确到日期,不要传时分秒 格式:yyyy-MM-dd |
券编号 | TicketId | N | varchar(8) | |
券名称 | TicketName | N | Nvarchar(100) | |
券码编号 | TicketSerialNo | N | varchar(20) | |
券码状态 | Status | N | varchar(20) | 可支持逗号分隔传递多个状态 10:未使用; 15:已预约; 20:已使用; 70: 已冻结; 80:已取消; 90:已过期 |
发放店铺号 | IssueStoreId | N | varchar(10) | |
预约店铺号 | ApplyStoreId | N | varchar(10) | |
使用店铺号 | SaleStoreId | N | varchar(10) | |
【预约服务开始时间】条件范围的起始值 | ApplyDateTimeBegin | N | datetime | 格式:yyyy-MM-ddTHH:mm:ss |
【预约服务开始时间】条件范围的截止值 | ApplyDateTimeEnd | N | datetime | 格式:yyyy-MM-ddTHH:mm:ss |
【有效期开始 日】条件范围的起始值 | UseBeginDateBegin | N | datetime | 格式:yyyy-MM-dd |
【有效期开始 日】条件范围的截止值 | UseBeginDateEnd | N | datetime | 格式:yyyy-MM-dd |
【有效期结束 日】条件范围的起始值 | UseEndDateBegin | N | datetime | 格式:yyyy-MM-dd |
【有效期结束 日】条件范围的截止值 | UseEndDateEnd | datetime | 格式:yyyy-MM-dd | |
预约服务BC | ApplyServiceEmployeeNo | N | varchar(20) | |
实际核销BC | SaleEmployeeNo | N | varchar(20) | |
【取消或冻结日 期】条件范围的开始值 | CancelDateBegin | N | datetime | 取消或冻结日期开始值,请只精确到日期,不要传时分秒格式:yyyy-MM-dd 配合券状态查询可精查冻结或取消的券。 |
【取消或冻结日 期】条件范围的截止值 | CancelDateEnd | N | datetime | 取消或冻结日期截止值,请只精确到日期,不要传时分秒格式:yyyy-MM-dd 配合券状态查询可精查冻结或取消的券。 |
页码 | Page | N | Int | 分页查询数据的页数,第一页传1,第二页传2,以此类推,如未传则默认值1。 |
2.32.2 参数示例
{
"OwnerId": "",
"MemberNo": "",
"IssueActivityId": "",
"IssueDateBegin": "2020-01-01",
"IssueDateEnd": "2022-01-01",
"Status": "10,15"
}
2.32.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
是否还有下一页 数据 | HasNextPage | boolean | true:还有下一页数据; false:已经没有下一页数据了。 |
- 券信息集合:Tickets
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
所有者 | OwnerID | varchar(4) | |
券码编号 | TicketSerialNo | varchar(20) | |
券名称 | TicketName | nvarchar(50) | |
券产品编号 | TicketId | Varchar(8) | |
积分兑换预约编 号 | ReserveId | varchar(30) | |
会员编号 | MemberNo | varchar(13) | |
会员姓名 | MemberName | Varchar(50) | |
手机号 | Mobile | Vharchar(20) | 已进行掩码处理。 |
状态编码 | Status | varchar(2) | 10:未使用; 15:已预约; 20:已使用; 70:已冻结; 80:已取消; 90:已过期 |
状态名称 | StatusName | Nvarchar(20) | |
使用期限开始日 | UseBeginDate | Datetime | 使用期限开始日,格式:yyyy-MM-ddTHH:mm:ss |
使用期限结束日 | UseEndDate | Datetime | 使用期限结束日,格式:yyyy-MM-ddTHH:mm:ss |
发行本券的店铺编号 | IssueStoreId | varchar(10) | 发行本券的店铺编号 |
发行本券的交易POS机号 | IssuePosId | INT | |
发行本券的交易小票号 | IssueBillNo | INT | |
发行本券的时间 | IssueDate | Datetime | 发行本券的时间,格式:yyyy-MM-ddTHH:mm:ss |
发行本券的活动编号 | IssueActivityId | varchar(13) | 发行本券的活动编号 |
发行本券的活动名称 | IssueActivityName | nvarchar(100) | 发行本券的活动名称 |
预约使用本券的店铺编号 | ApplyStoreId | varchar(10) | 预约使用本券的店铺编号 |
预约服务BC | ApplyServiceEmployeeNo | Varhcar(20) | |
预约使用本券的开始时间 | ApplyDateTime | Datetime | 格式:yyyy-MM-ddTHH:mm:ss |
预约使用本券的结束时间 | ApplyEndDateTime | Datetime | 格式:yyyy-MM-ddTHH:mm:ss |
使用本券的店铺 编号 | SaleStoreId | varchar(10) | 使用本券的店铺编号 |
券核销时间 | SaleDateTime | Datetime | 使用本券的时间 |
核销 BC | SaleEmployeeNo | Varhcar(20) | |
取消/冻结时间 | CancelDate | Datetime | 格式:yyyy-MM-ddTHH:mm:ss |
剩余天数 | LeftDays | Int | |
服务柜台编号 | ServiceStoreId | Varhcar(8) | 当券已使用,则返回使用本券的店铺,当未使用已预约,则返回预约店铺;其他情况空。 |
服务柜台名称 | ServiceStoreName | Nvarchar(50) | 当券已使用,则返回使用本券的店铺,当未使用已预约,则返回预约店铺;其他情况空。 |
美容顾问编号 | ServiceEmployeeNo | Varhcar(8) | 当券已使用,则返回核销BC,当未使用已预约,则返回预约BC;其他情况空。 |
美容顾问名称 | ServiceEmployeeName | Nvarchar(20) | 当券已使用,则返回核销BC,当未使用已预约,则返回预约BC;其他情况空。 |
会员所属店铺编号 | StoreId | Varhcar(8) | |
会员所属店名称 | StoreName | Nvarchar(50) | |
护理券类型编码 | ServiceType | Varchar(2) | 暂未使用 |
护理券类型名称 | ServiceTypeName | Nvarchar(10) | 暂未使用 |
2.32.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"Tickets": [{
"OwnerID": "",
"TicketSerialNo": "",
"TicketName": "",
"TicketId": "",
"ReserveId": "",
"MemberNo": "",
"MemberName": "",
"Mobile": "",
"Status": "",
"UseBeginDate": "",
"UseEndDate": "",
"IssueStoreId": "",
"IssueDate": "",
"IssueActivityId": "",
"IssueActivityName": "",
"ApplyStoreId": "",
"ApplyDateTime": "",
"ApplyServiceEmployeeNo": "",
"ApplyEndDateTime": "",
"SaleStoreId": "",
"SaleDateTime": "",
"SaleEmployeeNo": "",
"CancelDate": "",
"LeftDays": ""
}, {
"OwnerID": "",
"TicketSerialNo": "",
"TicketName": "",
"TicketId": "",
"ReserveId": "",
"MemberNo": "",
"MemberName": "",
"Mobile": "",
"Status": "",
"UseBeginDate": "",
"UseEndDate": "",
"IssueStoreId": "",
"IssueDate": "",
"IssueActivityId": "",
"IssueActivityName": "",
"ApplyStoreId": "",
"ApplyDateTime": "",
"ApplyServiceEmployeeNo": "",
"ApplyEndDateTime": "",
"SaleStoreId": "",
"SaleDateTime": "",
"SaleEmployeeNo": "",
"CancelDate": "",
"LeftDays": ""
}]
}
2.33 会员券基本信息批量修改
接口地址: /coupon/update接口说明: 根据传入的修改条件和修改内容,批量修改会员优惠券基本信息接口名称: EC_BatchUpdateMemberTicketDetailInfor接口方式: HTTP POST 提交
2.33.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者(条件) | OwnerId | Y | varchar(4) | |
券码(条件) | TicketSerialNo | Y | varchar(20) | TicketSerialNo 和 TicketId,IssueStoreId, StatusCondition 字段必须至少提供一个。 |
券编号(条件) | TicketId | Y | varchar(8) | |
发行店铺号(条件) | IssueStoreId | Y | varchar(10) | |
券状态(条件) | StatusCondition | Y | varchar(2) | 状态只能是 10 或 15 或 70 或 80 |
券有效期结束时间(更新结果) | UseEndDate | Y | datetime | 格式:yyyy-MM-dd |
预约服务开始时间(更新结果) | ApplyDateTime | Y | datetime | 格式:yyyy-MM-ddTHH:mm:ss (ApplyDateTime 和 ApplyEndDateTime 字段,传入时。只能两个一起传入值或者两个一起都不传值),必须大于当前系统时间。 |
预约服务结束时间(更新结果) | ApplyEndDateTime | Y | datetime | 格式:yyyy-MM-ddTHH:mm:ss,必须大于等 于预约服务开始时间。 |
券状态(更新结果) | Status | Y | varchar(2) | UseEndDate 和 ApplyDateTime,Status 字段必须至少提供一个。 状态只能是 10 或 15 或 70 或 80 |
2.33.2 参数示例
{
"OwnerId": "10",
"TicketSerialNo": "000020748380",
"TicketId": "00100003",
"IssueStoreId": "00300023",
"StatusCondition": "70",
"UseEndDate": "2020-12-15",
"ApplyDateTime": "2020-02-15T00:00:00",
"ApplyEndDateTime": "2020-02-15T00:00:00",
"Status": "10"
}
2.33.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
2.33.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.34 批量发行券
接口地址: /coupon/batchissue接口说明: 针对所有类型券,直接给指定的一批会员发行券码接口名称: EC_BatchIssueTicket接口方式: HTTP POST 提交
2.34.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者 | OwnerId | Y | varchar(4) | |
券编号 | TicketId | Y | varchar(8) | |
使用本券的活动号 | ActivityId | N | varchar(13) | 礼品券:绑定了该券的领取试用活 动号。 其他券:为空,对于礼品券,如果参数为空则会自动查找绑定了该券的领取试用活动。 |
调用请求 Id | RequestId | Y | varchar(20) | 标识唯一一次调用本接口的请求编号,3天内不能使用该请求编号重 复调用。 |
- 会员集合:MemberArray
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
会员编号 | MemberNo | Y | varchar(13) | |
使用本券的店铺编号 | StoreId | N | varchar(10) | 如不指定可为空。 |
发行券数量 | Qty | Y | int | 1.数量必须大于0。 2.对于礼品券,发行数量只能为1。 |
2.34.2 参数示例
{
"OwnerId": "10",
"TicketId": "",
"RequestId": "10",
"MemberArray": [{
"MemberNo": "",
"StoreId": "",
"Qty": 1
}, {
"MemberNo": "",
"StoreId": "",
"Qty": 1
}]
}
2.34.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | varchar(6) | 空:处理成功-1:系统错误-21:品牌错误 |
返回消息 | Message | string | 错误消息文本。仅错误时有返回内容。 |
- 券集合:MemberTicksArray
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
会员编号 | MemberNo | string | |
券码 | TicketSerialNo | string |
2.34.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"MemberTicksArray": [{
"MemberNo": "",
"TicketSerialNo": ""
}, {
"MemberNo": "",
"TicketSerialNo": ""
}]
}
2.35 会员设备绑定/解绑
接口地址: /device/relation接口说明: 通过调用接口,会员设备绑定/解绑。 EFFECTIM 专用接口名称: MemberDeviceRelation接口方式: HTTP POST 提交
2.35.1 参数说明
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
品牌编号 | OwnerId | Y | String | |
会员编号 | MemberNo | N | String | 绑定时必传,解绑是非必传,一个设备,只能绑定一个会员 |
设备序列号 | DeviceSerialNo | Y | String | |
操作类型 | OperationType | Y | int | 0:绑定,1:解绑 |
2.35.2 参数示例
{
"OwnerId": "",
"MemberNo": "",
"DeviceSerialNo": "1001",
"OperationType": 0
}
2.35.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
设备当前已绑定会员 | Message | String | 设备已被其他会员绑定时,返回改设备当前已绑定的 会员 |
2.35.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"BindMemberNo": ""
}
2.36 查询会员绑定设备
接口地址: /device/detail接口说明: 通过调用接口,查询会员绑定设备。 EFFECTIM 专用接口名称: GetMemberDeviceRelation接口方式: HTTP POST 提交
2.36.1 参数说明
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
品牌编号 | OwnerId | Y | String | |
会员编号 | MemberNo | Y | String | |
设备序列号 | DeviceSerialNo | String | ||
商品编号 | GoodsCode | String |
2.36.2 参数示例
{
"OwnerId": "",
"MemberNo": "",
"DeviceSerialNo": "1001",
"GoodsCode": "001001"
}
2.36.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
返回问卷信息 | Data | 返回查询结果列表 |
- 数据信息:Data
接口字段描述 | 接口字段名称 | 类型 | 备注 |
---|---|---|---|
设备序列号 | DeviceSerialNo | String | |
商品编号 | GoodsCode | String | |
商品名称 | GoodsName | String | |
状态 | Status | String | 10:有效 20:无效 |
更新时间 | UpdateDate | String | yyyy/MM/dd HH:mm:ss; |
2.36.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"Data": [
{
"DeviceSerialNo": "1001",
"GoodsCode": "001001",
"GoodsName": "商品 1",
"Status": "10",
"UpdateDate": "2020/12/22 10:11:20"
},
{
"DeviceSerialNo": "1002",
"GoodsCode": "001001",
"GoodsName": "商品 2",
"Status": "20",
"UpdateDate": "2020/12/22 10:01:10"
}
]
}
2.37 查询设备订单信息
接口地址: /device/orderinfo接口说明: 通过调用接口,查询设备订单信息。EFFECTIM 专用接口名称: GetDeviceOrderInfo接口方式: HTTP POST 提交
2.37.1 参数说明
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
品牌编号 | OwnerId | Y | String | |
会员编号 | MemberNo | Y | String | |
购买日期-开始 | BeginDate | N | String | yyyy/MM/dd 格式 |
购买日期-结束 | EndDate | N | String | yyyy/MM/dd 格式 |
店铺编号 | StoreId | N | String | |
外部订单号 | OrderNo | N | String | EFFECTIM 请求时,用外部订单号即可 |
设备序列号 | DeviceSerialNo | N | String | |
商品编号 | GoodsCode | N | String |
2.37.2 参数示例
{
"OwnerId": "",
"MemberNo": "",
"SaleDate": "",
"PayDate": "",
"BeginDate": "2020/01/01",
"EndDate": "2022/01/01",
"StoreId": "",
"PosId": 1,
"BillNo": 1335,
"OrderNo": "1344",
"DeviceSerialNo": "",
"GoodsCode": "001001"
}
2.37.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
返回问卷信息 | Data | 返回查询结果列表 |
- 数据信息:Data
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
所有者 | OwnerId | varchar(4) | |
会员编号 | MemberNo | String | |
交易时间 | SaleDate | String | yyyy/MM/dd HH:mm:ss; |
支付时间 | PayDate | String | yyyy/MM/dd HH:mm:ss; |
店铺编号 | StoreId | varchar(10) | |
POS 机号 | PosId | int | |
外部订单号 | OrderNo | String | |
商品编号 | GoodsCode | varchar(8) | |
商品名称 | GoodsName | String | |
设备序列号 | DeviceSerialNo | nvarchar(50) | |
创建日期 | CreateDate | String | yyyy/MM/dd HH:mm:ss; |
2.37.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"Data": [{
"OwnerId": "",
"StoreId": "",
"PosId": 1,
"BillNo": 1335,
"GoodsCode": "",
"BarCode": "",
"DeviceSerialNo": "1001",
"CreateDate": ""
}]
}
2.38 开具电子发票
接口地址: /invoice/issue接口说明: 用于在外部系统如网上商城开具电子发票。在调用本接口之前,请务必与CRM确认对应的店铺是否已启用电子发票,与用户确认对应的开票方信息并提供给CRM 设置。接口名称: Ec_InvoiceIssue请求方式: HTTP POST 提交
2.38.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
公司编号 | OwnerId | Y | varchar(4) | |
店铺编号 | shopNo | Y | varchar(10) | |
订单号 | orderNo | Y | varchar(20) | 2.官网:店铺号+订单号,字符串长度不超过17位。 2、OMS:订单号 |
开票金额 | amt | Y | decimal | |
订单日期 | orderDate | Y | varchar(8) | YYYYMMDD 格式 |
微信 openId | openId | N | varchar(50) | |
电话号码 | phone | Y | varchar(8) | |
电子邮箱 | N | varchar(100) | ||
项目 | project | N | varchar(90) | |
抬头/购买方名称 | head | Y | varchar(100) | |
购买方纳税人识别号 | gmf_nsrsbh | N | varchar(20) | |
银行名称与购买方银行帐号 | gmf_yhzh | N | varchar(100) | |
购买方地址电话 | gmf_dzdh | N | varchar(100) | |
微信添加卡包的唯一值 | WX_ORDER_ID | N | varchar(100) | |
商户所属微信公众号 APPID 或发票通 APPID | WX_APP_ID | N | varchar(100) | |
支付宝 UID | ZFB_UID | N | varchar(100) |
2.38.2 参数示例
{
"OwnerId": "",
"shopNo": "",
"orderNo": "",
"amt": 1,
"orderDate": "20200101",
"fptAccount": "",
"openId": "",
"phone": "",
"email": "",
"project": "",
"head": "",
"nsrsbh": "",
"gmf_nsrsbh": "",
"gmf_yhzh": "",
"gmf_dzdh": "",
"WX_ORDER_ID": "",
"WX_APP_ID": "",
"ZFB_UID": ""
}
2.38.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
Result | |||
返回状态码 | ErrorCode | String | 0:正常 -1:失败 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
发票信息集合:InvoiceArray | |||
发票信息对象:Invoice | |||
发票代码 | FP_DM | varchar(12) | |
发票号码 | FP_HM | varchar(8) | |
校验码 | JYM | varchar(20) | |
开票日期 | KPRQ | varchar(20) | YYYYMMDDHHMMSS 格式 |
发票 PDF 下载地址 | PDF_URL | varchar(200) | |
收票地址 | SP_URL | varchar(250) | |
电子发票平台返回代码 | returnCode | varchar(4) | |
电子发票平台返回信息 | returnMessage | varchar(200) |
2.38.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"InvoiceArray": [{
"FP_DM": "",
"FP_HM": "",
"JYM": "",
"KPRQ": "",
"PDF_URL": "",
"SP_URL": "",
"returnCode": "0000",
"returnMessage": "成功"
}, {
"FP_DM": "",
"FP_HM": "",
"JYM": "",
"KPRQ": "",
"PDF_URL": "",
"SP_URL": "",
"returnCode": "0000",
"returnMessage": "成功"
}]
}
2.39 门店库存查询接口
接口地址: /possku/query接口说明: 门店 POS 库存查询接口名称: PosSkuStockQuery请求方式: HTTP POST 提交
2.39.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
品牌编号 | OwnerId | Y | varchar(4) | |
门店编号 | StoreId | Y | varchar(10) | |
库存用途 | StockPurpose | Y | varchar(4) | 30:积分兑换库存 |
商品列表 | GoodsArray | Y | varchar(200) | 以逗号分隔的商品代码 |
2.39.2 参数示例
{
"OwnerId": "10",
"StoreId": "00300123",
"StockPurpose": "30",
"GoodsArray": "100041,100042"
}
2.39.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
Result | |||
返回状态码 | ErrorCode | varchar(6) | 空:成功 -1:系统错误 -2:找不到门店 -3:找不商品 -21:品牌错误 |
返回消息 | Message | nvarchar(255) | 错误消息文本。仅错误时有返回内容。 |
品牌 | OwnerId | varchar(4) | |
门店编号 | StoreId | varchar(10) | |
库存用途 | StockPurpose | varchar(4) | |
商品库存集合 | StockInfo | ||
商品库存对象 | SkuStockInfo | ||
商品编号 | GoodsCode | varchar(10) | |
库存数量 | Qty | int |
2.39.4 返回结果示例
{
"OwnerId": "10",
"StoreId": "00300123",
"StockPurpose": "30",
"StockInfo": [{
"GoodsCode": "100041",
"Qty": 10
}, {
"GoodsCode": "100042",
"Qty": 2
}]
}
2.40 门店库存增减接口
接口地址: /possku/update
接口说明: 门店 POS 库存增加扣减
接口名称: PosSkuStockChange
请求方式: HTTP POST 提交
2.40.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
请求序号 | RequestId | Y | varchar(50) | 唯一识别一次库存增减请求的流水号,每个流水号只限 3 天内进行重复请求拦截,避免出现重复请求重复增减库存。 |
所有者 | OwnerId | Y | varchar(4) | |
门店编号 | StoreId | Y | varchar(10) | |
库存用途 | StockPurpose | Y | varchar(4) | 30:积分兑换库存 |
库存调整理由 | ChangeReason | Y | varchar(4) | 80:积分商城积分兑换 |
会员编号 | MemberNo | N | varchar(13) | |
单据编号 | OutOrderNo | N | varchar(50) | 外部发起库存增减的单据编号 |
商品库存集合 | StockInfo | Y | ||
商品库存对象 | SkuStockInfo | Y | ||
商品编号 | GoodsCode | Y | varchar(10) | 需要增减库存的商品代码 |
库存数量 | Qty | Y | int | 增减库存数量,负数扣减,正数增加。 |
2.40.2 参数示例
{
"RequestId": "f4f61e6a1a704035a57fce3059cca81e",
"OwnerId": "10",
"StoreId": "00300123",
"StockPurpose": "30",
"ChangeReason": "80",
"MemberNo": "M1003897465",
"OutOrderNo": "4101030303003",
"StockInfo": [{
"GoodsCode": "100041",
"Qty": -2
}, {
"GoodsCode": "100042",
"Qty": -1
}]
}
2.40.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
处理结果 | ErrorCode | varchar(10) | 空:成功 1:相同的 RequestId 在之前已请求并处理 成功,请勿重复请求。-1:系统错误-2:找不到门店-3:找不商品-21:品牌错误如果外部系统准确使用 RequestId 参数,则 可以将返回值为空或 1 都作为成功。 |
返回消息 | Message | nvarchar(255) | 错误消息文本。仅错误时有返回内容。 |
2.40.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.41 店铺线上正向订单接入(下单)
接口地址: /order/push
接口说明: 店铺线上正向订单数据接入(下单)
接口名称: PushOnlineOrder
请求方式: HTTP POST 提交
2.41.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
品牌编号 | OwnerId | Y | varchar(4) | 如:10 |
订单来源 | OrderSource | Y | varchar(2) | 30:王府井 ,后续随着接入渠道增加而增加 |
外部订单号 | ExternalOrderNo | Y | varchar(40) | |
品牌方店铺编号 | StoreId | N | varchar(10) | 品牌方店铺编号或第三方店铺代码只需提供一个,如果两者都提供,优先认品牌方店铺编号 |
第三方店铺代码 | ExternalStoreId | N | varchar(30) | 品牌方店铺编号或第三方店铺代码只需提供一个,如果两者都提供,优先认品牌方店铺编号 |
品牌会员编号 | MemberNo | N | varchar(13) | 【品牌方会员编号】、【会员手机号】只需提供一个,优先识别的顺序是:品牌方会员编号、会员手机号。 |
会员手机号码 | Mobile | N | varchar(11) | 【品牌方会员编号】、【会员手机号】只需提供一个,优先识别的顺序是:品牌方会员编号、会员手机号。 |
配送方式 | DeliveryType | Y | varchar(2) | 10:快递配送 20:到店自提 |
预定提货日期 | PickUpDate | N | DateTime | 到店自提才需要提供 |
顾客备注 | CustomerMemo | N | varchar(300) | |
收货人姓名 | ReceiverName | N | varchar(20) | |
收货人手机号码 | ReceiverMobile | N | varchar(20) | |
收货人所在省 | ReceiverProvince | N | varchar(20) | |
收货人所在市 | ReceiverCity | N | varchar(20) | |
收货人所在区 | ReceiverDistrict | N | varchar(20) | |
收货人详细地址 | ReceiverAddress | N | varchar(500) | |
订单销售总数量 | TotalQty | N | int | |
订单实际销售总金额 | TotalAmount | N | decimal(12,2) | 优惠后总金额,单位元:10.01元 |
订单创建时间 | CreateOrderTime | Y | DateTime | |
支付时间 | PayTime | Y | DateTime | |
订单状态编码 | StatusCode | Y | varchar(2) | 2:未支付 3:已付款 4:已发货 8:交易成功 9:交易关闭 |
订单状态描述 | StatusText | N | varchar(100) | |
服务BC号 | EmployeeId | N | varchar(10) | |
线上支付方式 | OnlinePayId | N | varchar(10) | 线上支付式: 云店:必输,固定YUNDIANPAY 其他:空或EXTERNAL |
线上支付金额 | OnlinePayAmount | N | Decimal(12,2) | 线上支付金额,如果传了线上支付方式,则必须传线上支付金额,否则可为空。 云店:订单销售总金额=线上支付金额=商品明细销售金额汇总 |
- 商品列表:OrderGoods
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
品牌方商品编号 | GoodsCode | N | varchar(8) | 商品编号或商品条码只需提供一个,如果两者都提供,优先认商品编号 |
商品条码 | BarCode | N | varchar(20) | 商品编号或商品条码只需提供一个,如果两者都提供,优先认商品编号 |
商品名称 | GoodsName | Y | varchar(100) | |
商品原单价 | TagPrice | N | decimal(12,2) | 商品单原价 |
销售单价 | SalePrice | Y | decimal(12,2) | 优惠后单价,单位元:10.01 元 |
销售数量 | Qty | Y | Int | |
销售金额 | Amount | Y | decimal(12,2) | 优惠后金额,单位元:10.01 元 |
2.41.2 参数示例
{
"OwnerId": "10",
"OrderSource": "30",
"ExternalOrderNo": "20220609170001123456",
"StoreId": "00300123",
"ExternalStoreId": "00300123",
"MemberNo": "0031000424504",
"Mobile": "13391012345",
"DeliveryType": "10",
"PickUpDate": "2022-06-09 17:00:00",
"CustomerMemo": "需要积分哦",
"ReceiverName": "张XX",
"ReceiverMobile": "15601700000",
"ReceiverProvince": "上海市",
"ReceiverCity": "",
"ReceiverDistrict": "",
"ReceiverAddress": "青浦区诸光路188号201",
"TotalQty": 2,
"TotalAmount": 1040.00,
"CreateOrderTime": "2022-06-09 17:00:00",
"PayTime": "2022-06-09 17:00:00",
"StatusCode": "3",
"StatusText": "已付款",
"OrderGoods": [{
"TagPrice": 520.00,
"SalePrice": 520.00,
"GoodsCode": "10042",
"BarCode": "",
"GoodsName": "SWL 资生堂透白美肌亮润柔肤水(清爽型)",
"Qty": 1,
"Amount": 520.00
}, {
"TagPrice": 520.00,
"SalePrice": 520.00,
"GoodsCode": "",
"BarCode": "729238011823",
"GoodsName": "SBN金采丰润眼部护理精华霜 2ML",
"Qty": 1,
"Amount": 520.00
}]
}
2.41.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
处理结果 | ErrorCode | varchar(10) | 空:成功 -1:系统错误 -2:品牌错误 -3:参数错误 |
返回消息 | Message | nvarchar(255) | 错误消息文本。仅错误时有返回内容。 |
2.41.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.42 店铺线上逆向订单接入(退货)
接口地址: /order/refund
接口说明: 店铺线上逆向订单数据接入(退货)
接口名称: PushOnlineOrderRefund
请求方式: HTTP POST 提交
2.42.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
品牌编号 | OwnerId | Y | varchar(4) | 如:10 |
订单来源 | OrderSource | Y | varchar(2) | 30:王府井 |
退货单号 | ExternalRefundOrderNo | Y | varchar(40) | 唯一标识一次退货的单据流水号 |
原始订单号 | OriginalExternalOrderNo | Y | varchar(40) | 原始正向订单号 |
退货总数量 | TotalQty | Y | int | |
退货总金额 | TotalAmount | Y | decimal(12,2) | 单位元:10.01 元 |
退货时间 | RefundTime | Y | DateTime | |
退货原因 | RefundReason | varchar(500) | ||
退货小票号 | TicketNo | varchar(40) | ||
退货单状态编码 | StatusCode | Y | varchar(2) | 1:退货中 3:退货完成 4:退货失败 9:交易关闭 |
退货单状态描述 | StatusText | varchar(100) |
- 退货商品列表:RefundGoods
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
品牌方商品编号 | GoodsCode | varchar(8) | 商品编号或商品条码只需提供一个,如果两者都提供,优先认商品编号 | |
商品条码 | BarCode | varchar(20) | 商品编号或商品条码只需提供一个,如果两者都提供,优先认商品编号 | |
商品名称 | GoodsName | Y | varchar(100) | |
退货数量 | Qty | Y | Int | |
退货金额 | Amount | Y | decimal(12,2) | 退货商品销售金额,单位元:10.01 元 |
2.42.2 参数示例
{
"OwnerId": "10",
"OrderSource": "30",
"ExternalRefundOrderNo": "202206091700218971294",
"OriginalExternalOrderNo": "20220609170021123456",
"TotalQty": 2,
"TotalAmount": 1040.00,
"RefundTime": "2022-06-09 17:44:00",
"RefundReason": "选错了",
"TicketNo": "",
"StatusCode": "3",
"StatusText": "退货完成",
"RefundGoods": [{
"GoodsCode": "10042",
"BarCode": "",
"GoodsName": "SWL资生堂透白美肌亮润柔肤水(清爽型)",
"Qty": 1,
"Amount": 520.00
}, {
"GoodsCode": "",
"BarCode": "729238011823",
"GoodsName": "SBN金采丰润眼部护理精华霜2ML",
"Qty": 1,
"Amount": 520.00
}]
}
2.42.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
处理结果 | ErrorCode | varchar(10) | 空:成功 -1:系统错误 -2:品牌错误 -3:参数错误 |
返回消息 | Message | nvarchar(255) | 错误消息文本。仅错误时有返回内容。 |
2.42.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.43 获取问卷基础信息
接口地址: /questionnaire/query
接口说明: 获取问卷基本信息
接口名称: GetQuestionnaireInfo
请求方式: HTTP POST 提交
2.43.1 参数说明
字段说明 | 字段 | 必填 | 类型 | 备注 |
---|---|---|---|---|
品牌编号 | OwnerId | 是 | 字符串 | |
问卷类型 / 情景 | StoreId | 是 | 字符串 | 60:基本皮肤测试问卷; 61:敏感性皮肤皮肤测试问卷; 62:服务满意度调查 |
2.43.2 参数示例
{
"OwnerId": "",
"Scene": "60"
}
2.43.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
错误代码 | ErrorCode | String | 空:处理成功 -1:错误 |
错误消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
问卷信息 | Data | Data | 问卷详细信息 |
- 问卷详细信息:Data
接口字段描述 | 接口字段名称 | 类型 | 备注 |
---|---|---|---|
品牌编号 | OwnerId | String | |
问卷编号 | QuestionnaireId | String | |
问卷名称 | QuestionnaireName | String | |
场景 | Scene | String | 60:肌肤测试基础问卷 61:肌肤测试敏感肌 问卷 |
问题列表 | QuestionList | Question[] | 问题列表 |
- 问题列表:QuestionList
接口字段描述 | 接口字段名称 | 类型 | 备注 |
---|---|---|---|
排序 | SortIndex | int | 显示序号 |
问题 Id | QuestionId | int | |
问题内容 | QuestionName | String | |
问题类型 | Mtype | String | 00:单选; 10:多选; 20:填空 |
是否必答题 | IsMustAnswer | int | 0:非必答 1:必答 |
可输入选项序号 | InputNoIndex | int | 为 0 时,表示该问题没有可输入的选项 |
输入类型 | InputType | String | Email、MobilePhone、Number,为空时表示不限制 |
最多选项 | MostOptions | int | 针对多选时,可设置最多选择几个项目。0 或空表示不限制 |
题目分值 | Score | int | Mtype = 20 时有值 |
选项 | Options | Option[] | 单选或多选题的选项列表 |
- 问题选项列表:Options
接口字段描述 | 接口字段名称 | 类型 | 备注 |
---|---|---|---|
选项 Id | Id | int | |
选项内容 | Name | String | |
是否允许输入 | AllowInput | int | 1:选择该选项需要输入内容 0或空 |
选项分值 | Score | int | 0或正整数 |
2.43.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"Data": {
"OwnerId ": "",
"QuestionnaireId": "91141207014",
"QuestionnaireName": "肌肤问卷",
"Scene": "60",
"QuestionList": [{
"SortIndex ": 1,
"QuestionId": 1,
"QuestionName": "是否有小孩",
"Mtype": "00",
"IsMustAnswer": 1,
"InputNoIndex": 0,
"InputType": "",
"MostOptions": 0,
"Options": [{
"Id ": 1,
"Name": "是",
"Score": 20
}, {
"Id ": 2,
"Name": "否",
"Score": 10
}]
}, {
"SortIndex ": 2,
"QuestionId": 2,
"QuestionName": "你的邮箱地址",
"Mtype": "20",
"IsMustAnswer": 1,
"InputNoIndex": 0,
"InputType": "Email",
"MostOptions": 0,
"Score": 2
}]
}
}
2.44 上传问卷结果信息
接口地址: /questionnaire/save
接口说明: 上传问卷结果
接口名称: SaveQuestionnaireResultInfo
请求方式: HTTP POST 提交
2.44.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
请求流水号 | RequestNo | Y | String | 请求唯一流水号,每次请求时生成,三天之内不可重复。当某次请求因网络或 系统问题没有接收到返回结果可以再次相同的数据重复请求,以确保上传成功,CRM按流水号识别以确保不会保存重复数据。 |
问卷类型/场景 | Scene | Y | String | 60:肌肤测试基础问卷; 61:肌肤测试敏感肌问卷; 62:服务满意度调查 |
品牌编号 | OwnerId | Y | String | |
会员编号 | MemberNo | Y | String | |
问卷Id | QuestionnaireId | Y | int | |
调查时间 | ReportDate | Y | String | 调查时间 yyyy/MM/dd HH:mm:ss 格式 |
问题列表 | QuestionList | Y | Question[] |
- 问题列表:QuestionList
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
排序 | SortIndex | Y | int | 显示序号 |
问题 Id | QuestionId | Y | int | |
填写内容 | Content | N | String | 用户填写内容 Mtype = 20 时必填 |
选项 | Options | N | Option[] |
- 选项选择结果:Options
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
选项 id | Id | Y | int | |
选中值 | Value | Y | int | 0:未选中 1:选中 |
输入的内容 | Content | N | String | 如果选择当前选项需要输入内容时填写 |
2.44.2 参数示例
{
"OwnerId": "",
"MemberNo": "M2243",
"RequestNo": "33535535",
"QuestionnaireId": 91141207014,
"ReportDate": "2020/10/28 18:10:20",
"Scene": "62",
"QuestionList": [{
"SortIndex": 1,
"QuestionId": 1,
"Options": [{
"Id": 1,
"Value": 1
}, {
"Id": 2,
"Value": 0
}]
}, {
"SortIndex": 2,
"QuestionId": 2,
"Options": [{
"Id": 1,
"Value": 1
}, {
"Id": 2,
"Value": 0
}],
"Content": "tent@qq.com"
}]
}
2.44.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
2.44.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.45 获取问卷调查结果
接口地址: /questionnaire/result
接口说明: 通过调用接口,获取问卷调查结果,返回用户最近一次问卷调查结果
接口名称: GetQuestionnaireResultInfo
请求方式: HTTP POST 提交
2.45.1 参数说明
字段描述 | 字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
品牌编号 | OwnerId | Y | String | |
用户编号 | MemberNo | Y | String | |
问卷 Id | QuestionnaireId | N | String | |
场景 | Scene | Y | String | 60:肌肤测试基础问卷; 61:肌肤测试敏感肌问卷; 62:服务满意度调查 |
查询日期 | SearchDate | N | String | 查询日期,yyyy/MM/dd 格式,数据返回调查日期大于查询日期数据 |
2.45.2 参数示例
{
"OwnerId": "",
"MemberNo": "M2243",
"QuestionnaireId": "1",
"Scene": "60",
"SearchDate": "2020/10/28"
}
2.45.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
返回问卷信息 | Data | Data[] | 返回查询结果列表 |
- 数据信息:Data
接口字段描述 | 接口字段名称 | 类型 | 备注 |
---|---|---|---|
问卷编号 | QuestionnaireId | String | |
问卷名称 | QuestionnaireName | String | |
场景 | Scene | String | 60:问卷 61:用户关注问题与备注信息 |
调查时间 | ReportDate | String | 调查时间 yyyy/MM/dd HH:mm:ss 格式 |
总得分 | TotalScore | int | |
问题列表 | QuestionLIst | Question[] | 问题列表 |
- 问题列表:QuestionLIst
接口字段描述 | 接口字段名称 | 类型 | 备注 |
---|---|---|---|
排序 | SortIndex | int | 显示序号 |
问题 Id | QuestionId | int | |
问题内容 | QuestionName | String | |
问题类型 | Mtype | String | 00:单选; 10:多选; 20:填充 |
是否必答题 | IsMustAnswer | int | 0:非必答 1:必答 |
可输入选项序号 | InputNoIndex | int | 为 0 时,表示该问题没有可输入的选项 |
输入类型 | InputType | String | Email、MobilePhone、Number,为空时表示不限制 |
最多选项 | MostOptions | int | 针对多选时,可设置最多选择几个项目。0 或空表示不限制 |
填写内容 | Content | String | 用户填写内容 Mtype = 20 时 |
- 选项选择结果:Options
接口字段描述 | 接口字段名称 | 类型 | 备注 |
---|---|---|---|
选项 id | Id | int | |
选项内容 | Name | String | |
选项分值 | Score | int | 0或正整数,且整个问卷各题最大得分总和不大于100 |
选中值 | Value | int | 0:未选中 1:选中 |
填写内容 | Content | String | 当前选项有输入内容时填写 |
2.45.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"Data": [{
"QuestionnaireId ": "91141207014",
"QuestionnaireName ": "肌肤问卷",
"Scene": "60",
"ReportDate": "2020/10/28 18:10:20",
"TotalScore ": 88,
"QuestionList": [{
"SortIndex": 1,
"QuestionId": 1,
"QuestionName": "是否有小孩",
"Mtype": "00",
"IsMustAnswer": 1,
"InputNoIndex": 0,
"InputType": "",
"MostOptions": 0,
"Options": [{
"Id": 1,
"Name": "是",
"Score": 2,
"Value": 1
}, {
"Id": 2,
"Name": "否",
"Score": 20,
"Value": 0
}]
}, {
"SortIndex": 2,
"QuestionId": 2,
"QuestionName": "你的邮箱地址",
"Mtype": "20",
"IsMustAnswer": 1,
"InputNoIndex": 0,
"InputType": "Email",
"MostOptions": 0,
"Content": "tent@qq.com",
"Score": 2
}]
}]
}
2.46 上传肌肤测试报告
接口地址: /skin/save
接口说明: 通过调用接口,上传肌肤测试报告
接口名称: SaveSkinReportReslut
请求方式: HTTP POST 提交
2.46.1 参数说明
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者(品牌) | OwnerId | Y | String | |
会员编号 | MemberNo | Y | String | |
报告 Id | ReportId | Y | String | 唯一编号,接口接收到相同 ReportId 信息时,忽略 |
测试时间 | ReportDate | Y | String | 测试时间 yyyy/MM/dd HH:mm:ss 格式 |
年龄 | Age | Y | int | |
肌肤年龄 | SkinAge | Y | int | |
击败同龄人百分比 | Percentage | Y | decimal | 击败同龄人百分比 |
皱纹数据 | Wrinkle | Y | ||
肌肤数据 | SkinList | Y | Skin[] | 肌肤数据 |
图片数据 | ImageList | Y | Dictionary | 图片信息 |
版本号 | Version | Y | String | 版本号 |
- 皱纹数据类型:Wrinkle
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
皱纹数据列表 | TroubleList | Y | Trouble[] | 皱纹数据列表 |
- 皱纹数据类型:TroubleList
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
类型 | Type | Y | int | 皱纹类型,1-鱼尾纹,2-框周纹,8- 抬头皱纹,16-法令纹,32-抬头细 纹,64-口角纹,128-眉间纹,256-泪沟 |
名称 | Name | Y | String | |
等级 | Level | Y | decimal | |
最小值 | AvgMin | Y | decimal | 等级平均范围最小值 |
最大值 | AvgMax | Y | decimal | 等级平均范围最大值 |
对年龄的影响 | AgeEffect | Y | decimal | 对年龄的影响,正数为老 x 岁,负数 为年轻 x 岁 |
- 肌肤数据类型:SkinList
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
编号 | Id | Y | String | |
名称 | Name | Y | String | |
等级 | Level | Y | decimal | |
最小值 | AvgMin | Y | decimal | 等级平均范围最小值 |
最大值 | AvgMax | Y | decimal | 等级平均范围最大值 |
对年龄的影响 | AgeEffect | Y | decimal | 对年龄的影响,正数为老 x 岁,负数 为年轻 x 岁 |
图片信息 ImageList 对应的 key 和名称
序号 | Key | 名称 |
---|---|---|
1 | mark_sensitiveness | 敏感标注纹理 |
2 | face_white | 白色光人脸纹理 |
3 | mark_eye_bag | 眼袋标注纹理 |
4 | face_brown | 棕色光人脸纹理 |
5 | mark_dark_circle | 黑眼圈标注纹理 |
6 | mark_under_eye_wrinkle | 眶周纹标注纹理 |
7 | mark_lacrimal_groove | 泪沟标注纹理 |
8 | face_gray | 灰色光人脸纹理 |
9 | mark_crows_feet | 鱼尾纹标注纹理 |
10 | mark_visible_pores | 毛孔粗大标注纹理 |
11 | mark_forehead_wrinkle | 抬头纹标注纹理 |
12 | mark_cheek | 苹果肌标注纹理 |
13 | mark_spot | 色斑标注纹理 |
14 | face_uv | UV 光人脸纹理 |
15 | landmarks_2d | 模型人脸点信息,用于创建热力图 |
16 | mark_nasolabial_folds | 法令纹标注纹理 |
17 | mark_clogged_pores | 毛孔堵塞标注纹理 |
18 | mark_frown_wrinkle | 眉间皱纹标注纹理 |
19 | model | 3D 模型文件 |
20 | mark_narionette_lines | 口角纹标注纹理 |
21 | mark_pimple | 痘痘标注纹理 |
22 | face_red | 红色光人脸纹理 |
23 | mark_lower_lip_cheek | 口角羊腮标注纹理 |
24 | submodel_jaw_line_front | 下颌缘子模型-中 |
25 | submodel_jaw_line_left | 下颌缘子模型-左 |
26 | submodel_jaw_line_right | 下颌缘子模型-右 |
注:Image 上传不限制 key,多传少传接口都接收
2.46.2 参数示例
{
"OwnerId": "",
"MemberNo": "",
"ReportId": "335355366",
"ReportDate": "2020/10/28 18:10:20",
"Age": 34,
"SkinAge": 28,
"Percentage": 0.2,
"Wrinkle": {
"TroubleList": [{
"Type": 1,
"Name": "鱼尾纹",
"Level": 1.9,
"AvgMin": 1.8,
"AvgMax": 2.4,
"AgeEffect": 1.6
}, {
"Type": 2,
"Name": "框周纹",
"Level": 1.9,
"AvgMin": 1.8,
"AvgMax": 2.4,
"AgeEffect": 1.6
}]
},
"SkinList": [{
"Id": "eye_bags",
"Name": "眼袋数据",
"Level": 2.5,
"AvgMin": 1.7,
"AvgMax": 3,
"AgeEffect": -3.2
}, {
"Id": "pore",
"Name": "毛孔数据",
"Level": 1.9,
"AvgMin": 1.4,
"AvgMax": 2.9,
"AgeEffect": -3.2
}],
"ImageList": {
"mark_sensitiveness": "",
"face_white": ""
},
"Version": "0.1.3"
}
2.46.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
2.46.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.47 查询肌肤测试报告
接口地址: /skin/result
接口说明: 通过调用接口,查询肌肤测试报告
接口名称: GetSkinReportReslut
请求方式: HTTP POST 提交
2.47.1 参数说明
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者(品牌) | OwnerId | Y | String | |
会员编号 | MemberNo | Y | String | |
报告 Id | ReportId | N | String | 指定报告时必填,如有值,则 SearchDate 可为空 |
查询日期 | SearchDate | N | String | 查询日期,yyyy/MM/dd 格式,数据 返回调查日期大于查询日期数据,未指定 ReportId 时必填 |
2.47.2 参数示例
{
"OwnerId": "",
"MemberNo": "",
"ReportId": "",
"SearchDate": "2020/10/28"
}
2.47.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
返回问卷信息 | Data | 返回查询结果列表 |
- 数据信息:Data
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
报告 Id | ReportId | String | 报告 Id |
所有者(品牌) | OwnerId | String | |
会员编号 | MemberNo | String | |
测试日期 | ReportDate | String | 测试时间 yyyy/MM/dd HH:mm:ss 格式 |
年龄 | Age | int | |
肌肤年龄 | SkinAge | int | |
击败同龄人百分比 | Percentage | decimal | 击败同龄人百分比 |
皱纹数据 | Wrinkle | ||
肌肤数据 | SkinList | Skin[] | 肌肤数据 |
图片数据 | ImageList | Dictionary | |
版本号 | Version | String | 版本号 |
- 皱纹数据类型:Wrinkle
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
皱纹数据列表 | TroubleList | Trouble[] | 皱纹数据列表 |
- 皱纹数据类型:TroubleList
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
类型 | Type | int | 皱纹类型: 1:-鱼尾纹 2:框周纹 8:抬头皱纹 16:法令纹 32:抬头细纹 64:口角纹 128:眉间纹 256:泪沟 |
名称 | Name | String | |
等级 | Level | decimal | |
最小值 | AvgMin | decimal | 等级平均范围最小值 |
最大值 | AvgMax | decimal | 等级平均范围最大值 |
对年龄的影响 | AgeEffect | decimal | 对年龄的影响,正数为老 x 岁,负数为年轻 x 岁 |
- 肌肤数据类型:SkinList
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
编号 | Id | String | |
名称 | Name | String | |
等级 | Level | decimal | |
最小值 | AvgMin | decimal | 等级平均范围最小值 |
最大值 | AvgMax | decimal | 等级平均范围最大值 |
对年龄的影响 | AgeEffect | decimal | 对年龄的影响,正数为老 x 岁,负数为年轻 x 岁 |
2.47.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"Data": [{
"ReportId": "45355345",
"OwnerId": "",
"MemberNo": "",
"ReportDate": "2020/10/28 18:10:20",
"Age": 34,
"SkinAge": 28,
"Percentage": 0.2,
"Wrinkle": {
"TroubleList": [{
"Type": 1,
"Name": "鱼尾纹",
"Level": 1.9,
"AvgMin": 1.8,
"AvgMax": 2.4,
"AgeEffect": 1.6
}, {
"Type": 2,
"Name": "框周纹",
"Level": 1.9,
"AvgMin": 1.8,
"AvgMax": 2.4,
"AgeEffect": 1.6
}]
},
"SkinList": [{
"Id": "eye_bags",
"Name": "眼袋数据",
"Level": 2.5,
"AvgMin": 1.7,
"AvgMax": 3,
"AgeEffect": -3.2
}, {
"Id": "pore",
"Name": "毛孔数据",
"Level": 1.9,
"AvgMin": 1.4,
"AvgMax": 2.9
}],
"ImageList": {
"mark_sensitiveness": "",
"face_white": ""
},
"Version": "0.1.3"
}]
}
2.48 更新肌肤测试报告图片
接口地址: /skin/update
接口说明: 通过调用接口,更新肌肤测试报告图片
接口名称: UpdateSkinReportImage
请求方式: HTTP POST 提交
2.48.1 参数说明
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者(品牌) | OwnerId | Y | String | |
报告 Id | ReportId | Y | String | |
图片数据 | ImageList | Y | Dictionary | 更新时支持单个 key 图片更新,只需上传需要更新的图片key和value,清空图片时,value传“”即可 |
2.48.2 参数示例
{
"OwnerId": "",
"ReportId": "335355366",
"ImageList": {
"mark_sensitiveness": "",
"face_white": ""
}
}
2.48.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | ErrorCode | String | 空:处理成功 -1:错误 |
返回消息 | Message | String | 错误消息文本。仅错误时有返回内容。 |
2.48.4 返回结果示例
{
"ErrorCode": "",
"Message": ""
}
2.49 上传肌肤测试信息
接口地址: /skin/saveConsultResult
接口说明: 通过调用接口,上传肌肤测试结果。仅用于IPSA
接口名称: SaveSkinConsultResult
请求方式: HTTP POST 提交
2.49.1 参数说明
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者(品牌) | brand | Y | String | Brand Code |
会员编号 | vipCode | Y | String | VIP Code in CRM VIP Master |
店铺编号 | storeCode | Y | String | CRM/POS Store Code |
员工编号 | staffCode | Y | String | CRM/POS Staff Code |
咨询日期 | consultDate | Y | String | Consultation Date,yyyy-MM-dd |
咨询时间 | consultTime | Y | String | Consultation Time,HH:mm:ss |
发送选项 | sendOption | N | String | "0":Normal "1":Update(Consult Continued) "2":Resend (Send from history data)当值为 1 或 2 时,“品牌、会员编号、员工编号、咨询日期、咨询时间”几个字段值不能发生变化,保持与第一次传送时一致。 |
发送日期 | sendDate | Y | String | Send Date,yyyy-MM-dd |
发送时间 | sendTime | Y | String | Send Time,HH:mm:ss |
Course | courseList | Y | String Array | Skin measurement Course List Array |
处方笺问题列表 | questionList[] | Y | questionList | Question List Array |
处方笺信息 | recipeInfo | N | recipeInfo | Recipe Info |
是否传送历史数据 | isHistory | N | Bool | true:传送历史数据,不会推送模板消息和短信; 空或 false:不是传送历史数据,是实际的现场发生的业务,会推送模板消息和短信。 |
数据来源 | dataSource | Y | String | 固定值 CP |
- questionList 类型
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
问题描述 | Name | Y | String | Description |
字段名称 | fieldName | Y | String | Consultation Field Name |
答案类型 | answerType | Y | String | Answer Type: STRING or NUMERIC |
字符型值 | answerValueString | Y | String | Answer Value String, for answer type = STRING 为空时填 null |
数值型值 | answerValueNumeric | Y | String | Answer Value Numeric, for answer type = NUMERIC 为空时填 null |
- recipeInfo 类型
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
主题代码 | recipeThemeCode | Y | String | Theme Code |
肌肤问题已选择列表 | skinConditionList[] | Y | String Array | SkinCondition Selected Item ,每个code 单独一行 |
护理已选列表 | carePointList[] | Y | String Array | CarePoint Selected Item 每个 code单独一行 |
2.49.2 参数示例
{
"brand": "41",
"vipCode": "M4100063080",
"storeCode": "10300033",
"staffCode": "00007809",
"consultDate": "2020-08-31",
"consultTime": "11:37:17",
"sendOption": "0",
"sendDate": "2020-08-31",
"sendTime": "11:54:38",
"isHistory": false,
"dataSource": "CP",
"courseList": [
"basiccourse"
],
"questionList": [
{
"fieldName": "Moisture",
"answerType": "NUMERIC",
"answerValueString": null,
"answerValueNumeric": 21
},
{
"fieldName": "RecommendationControlBase",
"answerType": "STRING",
"answerValueString": "Yellow",
"answerValueNumeric": null
}
],
"recipeInfo": {
"recipeThemeCode": "7",
"skinConditionList": [
"203",
"211",
"603",
"607",
"711"
],
"carePointList": [
"103",
"1202",
"202",
"302",
"403",
"503",
"603",
"703",
"802",
"902",
"1001",
"1101",
"1103"
]
}
}
2.49.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | errorCode | Number | 0:成功 -20001,-20002,-30001:参数错误品牌编号不合法获取会员信息失败 -30002:获取员工信息失败 -30004:保存处方笺信息失败 -8000:调用接口引发异常。(不加密返回) |
返回消息 | errorMessage | String | 错误消息文本。仅错误时有返回内容。 |
处方笺编号 | consultResultId | Strng | 处方笺编号。仅成功时返回内容。 |
2.49.4 返回结果示例
{
"errorCode": 0,
"errorMessage": "",
"consultResultI": "2020090710001"
}
2.50 获取最近一次肌肤测试结果链接
接口地址: /skin/getLastConsultResultUrl
接口说明: 通过调用接口,获取最近一次肌肤测试结果网页链接。仅用于 IPSA。
接口名称: GetLastSkinConsultResultUrl
请求方式: HTTP POST 提交
2.50.1 参数说明
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
所有者(品牌) | brand | Y | String | Brand Code |
会员编号 | vipCode | Y | String | VIP Code in CRM VIP Master |
仅ultimatexcourse | onlyUltimatexcourse | Y | Boolean | true:返回最后一次含ultimatexcourse的肌肤测试结果 false:返回最后一次肌肤测的结果,默认false |
2.50.2 参数示例
{
"brand": "41",
"vipCode": "M4100063080",
"onlyUltimatexcourse": true
}
2.50.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
返回状态码 | errorCode | Number | 详见下方接口错误一览表 |
返回消息 | errorMessage | String | 错误消息文本。仅错误时有返回内容。 |
网页链接 | url | String | 网页链接 |
肌肤含氧量 | OxygenLevel | String | High、Low;仅onlyUltimatexcourse=true 时返回 |
皮脂分泌力 | Sebum | String | 仅onlyUltimatexcourse=true 时返回 |
2.50.4 返回结果示例
{
"errorCode": 0,
"errorMessage": "",
"url": "",
"OxygenLevel": "High",
"Sebum":"66",
}
2.51 店铺 POS 实时下单接口 (正向)
接口地址: /posorder/create
接口说明: 外部系统调用本接口上传订单信息并实时下单结算。直营店还包括支付功能,返回开票页面地址。
接口名称: POSOrderCreate
请求方式: HTTP POST 提交2.51.1 参数说明
接口字段描述 | 接口字段名称 | 必填 | 类型 | 备注 |
---|---|---|---|---|
品牌编号 | OwnerId | Y | varchar | 如:10 |
外部订单来源渠道 | OrderSource | Y | varchar | 贩卖机:80 |
外部订单号 | ExternalOrderNo | Y | varchar | 建议 OrderSource 开头,如贩卖机以80 开头。字符串长度建议25位以上。 |
品牌方店铺编号 | StoreId | Y | varchar | |
品牌会员编号 | MemberNo | Y | varchar | 必须外部系统先验证会员并传递会员编号。 |
手机号码 | Mobile | N | varchar | 预留备用,暂无需传递 |
顾客备注 | CustomerMemo | N | varchar | |
订单销售总数量 | TotalQty | N | int | |
原价销售总金额 | TotalAmount | N | decimal | 原价销售总金额,单位元:10.01 元 = SUM(商品明细 Amount) |
优惠后销售总金额 | TotalAferSaleAmount | N | decimal(12,2) | 优惠后销售总金额,单位元:10.01 元。= SUM(商品明细 AferSaleAmount) |
优惠券金额 | CouponAmount | N | decimal | 优惠券金额,单位元:10.01 元。 |
实际支付金额 | PayAmount | N | decimal | 实际支付金额,单位元:10.01 元。顾客实际需要支付的金额 |
支付码 | PayBarcode | N | varchar | 扫描顾客的微信或支付宝的支付码(无需给支付码类型),仅直营店并且需要 POS 做支付操作时才需传递,否则传递空值 |
支付方式 | PayId | N | varchar | 57:售卖机支付(对于该支付方式 POS 不会做实际支付操作)仅直营店才需上传,经销店无需上传 |
服务 BC 编号 | EmployeeId | N | varchar | 贩卖机传“999999”+OwnerId |
- 商品列表 OrderGoods
字段描述 | 字段名称 | 类型 | 备注 | |
---|---|---|---|---|
品牌方商品编号 | GoodsCode | varchar(8) | 商品编号或商品条码只需提供一个,如果两者都提供,优先认商品编号 | |
商品条码 | Barcode | varchar(20) | 商品编号或商品条码只需提供一个,如果两者都提供,优先认商品编号 | |
商品原单价 | Price | Y | decimal(12,2) | 商品原价 |
实际销售单价 | SalePrice | Y | decimal(12,2) | 优惠后单价,单位元:10.01 元 |
销售数量 | Qty | Y | Int | |
原价销售金额 | Amount | Y | decimal(12,2) | 原价金额,单位元:10.01 元 = Price * Qty |
实际销售金额 | AferSaleAmount | Y | decimal(12,2) | 优惠后金额,单位元:10.01 元 = SalePrice * Qty |
赠品标识 | GiftFlag | int | 0:非赠品 1:赠品 |
2.51.2 参数示例
{
"OwnerId": "10",
"OrderSource": "30",
"ExternalOrderNo": "20220609170001123456",
"StoreId": "00300123",
"MemberNo": "0031000424504",
"Mobile": "13391012345",
"CustomerMemo": "么么哒哦",
"TotalQty": 2,
"TotalAmount": 1040.00,
"TotalAfterSaleAmount": 1040.00,
"CouponAmount": 0.00,
"PayAmount": 1040.00,
"PayBarcode": "23040404050500600688",
"PayId": "54",
"EmployeeId": "99999910",
"OrderGoods": [
{
"Price": 520.00,
"SalePrice": 520.00,
"GoodsCode": "10042",
"Barcode": "",
"GoodsName": "SWL 资生堂透白美肌亮润柔肤水(清爽型)",
"Qty": 1,
"Amount": 520.00,
"AferSaleAmount": 520.00,
"GiftFlag": null
},
{
"Price": 520.00,
"SalePrice": 520.00,
"GoodsCode": "",
"Barcode": "729238011823",
"GoodsName": "SBN金采丰润眼部护理精华霜2ML",
"Qty": 1,
"Amount": 520.00,
"AferSaleAmount": 520.00,
"GiftFlag": null
}
]
}
2.51.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
处理结果 | ErrorCode | varchar(10) | 空:成功 1:订单已存在,并在之前已支付成功。 2:订单已存在,使用此次支付码已支付成功。 -1:系统错误 -2:品牌错误 -3:参数错误 -4:数据校验错误:xxxx -5:支付失败 -10:订单已存在,与此次订单金额不相等。 |
返回消息 | Message | nvarchar(500) | 错误消息文本。仅错误时有返回内容。 |
外部订单号 | ExternalOrderNo | varchar(50) | 与传入参数外部订单号相同 |
POS 交易号 | POSTradeNo | varchar(10) | 支付成功:POS 生成交易的交易号(BillNo) |
支付商户订单号 | PayTradeNo | varchar(50) | 支付成功,支付平台返回的商户订单号 |
支付金额 | PayAmount | decimal(12,2) | 支付成功:支付平台返回的实际支付金额 |
支付码 | PayBarcode | varchar(50) | 支付成功:实际支付成功的支付码 |
开票链接 | InvoiceUrl | varchar(2000) | 支付成功:开票页面地址,外部调用方可以按实际要求生成自定义款式二维码或其他方式提供给顾客开票。 |
2.51.4 返回结果示例
{
"ErrorCode": "",
"Message": "",
"InvoiceQrCodeUrl": "https://www.fapiao.com/fpt-wechat/wxscan/wxkp.do?r=tYd0Z13blz5ZeKU8uNyN0ZoaRe%2fGf9SH1fj4YwfqEanV0xVerH6gQr7W%2bIA6U2UevC4qSUyIjZ1JWJUSWwagA%3d%3d&id=1rfF"
}
2.52 数电发票-开票申请
接口地址: /invoice/apply
接口说明: 外部系统调用本接口上传订单信息申请数电发票开票。
接口名称: ApplyInvoice
请求方式: HTTP POST 提交
2.52.1 参数说明
字段名称 | 字段描述 | 类型 | 长度 | 必填 | 备注 |
---|---|---|---|---|---|
品牌编码 | OwnerId | String | 4 | Y | |
店铺编码 | StoreId | String | 10 | Y | |
开票申请号 | InvoiceOrderNo | String | 28 | Y | 唯一对应一次开票,因退货导致多次开票时开票申请号需要重新发号。可以基于销售订单号+ 序号作为开票申请号,例如销售订单号 A:首次购买:A01,部分退后剩余商品:A02(收到该订单将会红冲掉A01 对应的开票).如全退,A02 中剩余商品为空,金额为 0。 |
开票信息 | Invoice | Object | Y | ||
开票订单头信息 | InvoiceOrder | Object | Y | ||
开票订单明细信息 | InvoiceOrderItems | Array | Y |
Invoice 类型
字段名称 | 字段描述 | 类型 | 长度 | 必填 | 备注 |
---|---|---|---|---|---|
抬头类型 | HeadType | int | Y | 1:个人及政府事业单位,2:企业 | |
发票类型 | InvoiceType | int | Y | 0:电子发票(专用发票)、1:电子发票(普通发票) | |
抬头/购买方名称 | Head | String | 100 | Y | |
购买方纳税人识别号 | TaxNo | String | 20 | 抬头类型为企业时必填 | |
接收发票的手机号 | ContactMobile | String | 20 | Y | |
接收发票的电子邮箱 | ContactEmail | String | 100 | Y | |
购买方开户行名称 | BankName | String | 100 | ||
购买方银行帐号 | BankAccount | String | 100 | ||
购买方电话 | Phone | String | 20 | ||
购买方地址 | Address | String | 100 | ||
开票备注 | Remark | String | 130 | ||
销售类型 | SalesType | String | 2 | Y | S:销售;R:退货 |
原始销售订单号 | TradeOrderNo | String | 40 | Y | 原始的销售订单号 |
被退的开票申请号 | OrginalInvoiceOrderNo | String | 40 | 退货时必填 | |
销售订单日期 | OrderDate | DateTime | Y | 等于商品明细行的OrginalAmount合计。 | |
开票订单销售金额 | OrginalAmount | Decimal | 12,2 | Y | 等于商品明细行的 AfterAmount 合计。 |
开票订单销售金额(优惠后) | AfterAmount | Decimal | 12,2 | Y | |
可开票金额 | InvoiceAmount | Decimal | 12,2 | Y | 当前开票的订单对应的可开票金额:优惠后金额-不可开票的金额。退货可不传。 |
商品序号 | LineNo | Int | Y | ||
商品编码 | GoodsCode | String | 20 | Y | |
店铺编号 | StoreId | String | 10 | Y | |
单位 | Unit | String | 10 | ||
原价 | OrginalPrice | Decimal | 12,2 | Y | |
销售数量 | SaleQty | int | Y | 销售:销售数量,正数。 明细有正数,无负数 | |
赠品区分 | GiftFlag | int | Y | 0:非赠品;1:赠品 | |
原价销售金额 | OrginalAmount | Decimal | 12,2 | Y | OrginalPrice*SaleQty 销售:销售金额,正数;退货:退货金额,负数。 |
实际销售金额 | AfterAmount | Decimal | 12,2 | Y | 销售:优惠后的销售金额,正数;退货:实际退货金额,负数。 |
2.52.2 参数示例
{
"OwnerId": "10",
"StoreId": "00300123",
"InvoiceOrderNo": "00300123100189999",
"Invoice": {
"Head": "齐獭信息科技有限公司",
"HeadType": 2,
"InvoiceType": 1,
"ContactMobile": "13511226467",
"ContactEmail": "a1@qita.cn",
"TaxNo": "91310115MA1H9P4076",
"BankName": null,
"BankAccount": null,
"Phone": null,
"Address": null
},
"InvoiceOrder": {
"SalesType": "S",
"TradeOrderNo": "00300123100189999",
"OrginalInvoiceOrderNo": "",
"OrderDate": "2024-08-26",
"OrginalAmount": 1000.0,
"AfterAmount": 1000.0,
"InvoiceAmount": 1000.0,
"PresaleFlag": 1
},
"InvoiceOrderItems": [
{
"LineNo": 1,
"GoodsCode": "10000A",
"StoreId": "00300123",
"Unit": "",
"OrginalPrice": 1000.0,
"SaleQty": 1,
"GiftFlag": 0,
"OrginalAmount": 1000.0,
"AfterAmount": 1000.0
}
]
}
2.52.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
处理结果 | ErrorCode | string | 空:成功;0:成功;其余:失败 |
成功标记 | IsSuccess | string | 成功为true,否则false |
返回消息 | Message | string | 错误消息文本。仅错误时有返回内容。 |
2.52.4 返回结果示例
{
"ErrorCode": "0",
"IsSuccess": "true",
"Message": "开票申请成功!"
}
2.53 数电发票-发票红冲
接口地址: /invoice/reversal
接口说明: 外部系统调用本接口红冲数电发票。
接口名称: ReversalInvoice
请求方式: HTTP POST 提交
2.53.1 参数说明
字段名称 | 字段描述 | 类型 | 长度 | 必填 | 备注 |
---|---|---|---|---|---|
品牌编码 | OwnerId | String | 4 | Y | |
店铺编码 | StoreId | String | 10 | Y | |
开票申请号 | InvoiceOrderNo | String | 28 | Y | 唯一对应一次开票,因退货导致多次开票时开票申请号需要重新发号。可以基于销售订单号+ 序号作为开票申请号,例如销售订单号 A:首次购买:A01,部分退后剩余商品:A02(收到该订单将会红冲掉A01 对应的开票).如全退,A02 中剩余商品为空,金额为 0。 |
2.53.2 参数示例
{
"OwnerId": "10",
"StoreId": "00300123",
"InvoiceOrderNo": "00300123100189999"
}
2.53.3 返回结果说明
字段描述 | 字段名称 | 类型 | 备注 |
---|---|---|---|
处理结果 | ErrorCode | string | 空:成功;0:成功;其余:失败 |
成功标记 | IsSuccess | string | 成功为true,否则false |
返回消息 | Message | string | 错误消息文本。仅错误时有返回内容。 |
2.53.4 返回结果示例
{
"ErrorCode": "0",
"IsSuccess": "true",
"Message": "红冲申请成功!"
}