isv 回传的商户操作行为信息调用接口
环境 | HTTPS请求地址 |
---|---|
正式环境 | https://openapi.alipay.com/gateway.do |
参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
---|---|---|---|---|---|
app_id | String | 是 | 32 | 支付宝分配给开发者的应用ID | 2014072300007148 |
method | String | 是 | 128 | 接口名称 | alipay.offline.provider.shopaction.record |
format | String | 否 | 40 | 仅支持JSON | JSON |
charset | String | 是 | 10 | 请求使用的编码格式,如utf-8,gbk,gb2312等 | utf-8 |
sign_type | String | 是 | 10 | 商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2 | RSA2 |
sign | String | 是 | 256 | 商户请求参数的签名串,详见签名 | 详见示例 |
timestamp | String | 是 | 19 | 发送请求的时间,格式"yyyy-MM-dd HH:mm:ss" | 2014-07-24 03:07:50 |
version | String | 是 | 3 | 调用的接口版本,固定为:1.0 | 1.0 |
app_auth_token | String | 否 | 40 | 详见应用授权概述 | |
biz_content | String | 是 | - | 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档 |
参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
---|---|---|---|---|---|
action_type | String | 必须 | 64 | 支持的操作类型
1. insert_table(插入桌位) 2. update_table(更新桌位) 3. insert_dish(插入菜品) 4. delete_dish(删除菜品) 5. soldout_dish(估清菜品) 6. modify_dish(修改菜品) 7. modify_shop_status(店铺状态变更) 每一种操作行为对应的action_detail都不同,action_detail结构都是json串。 8.insert_one_shop_all_table(批量覆盖单个店铺桌位) 9.service_card_config(定制服务卡配置数据) |
insert_table |
entity | String | 必须 | 64 | 参数值固定为shop,代表店铺行为 | shop |
user_id | String | 可选 | 64 | 支付宝账户ID,这里传入门店的商户id。如果获取不到支付宝账户ID,一定不能设置。如何获取支付宝账户ID,获取用户uid的接口调用文档:https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.jokL1V&treeId=193&articleId=105656&docType=1#s3 | 2088502948051150 |
date_time | String | 必须 | 20 | 商户行为发生时间 格式:yyyy-MM-dd HH:mm:ss | 2016-04-12 11:30:56 |
outer_shop_do | OuterShopDO | 必须 | - | 传入店铺关联关系。标记当前接口涉及到的店铺信息,同时如果传入的数据在口碑不存在,口碑会建立一条shop_id+ outer_id+ type的关联数据 | |
|
|||||
action_detail | String | 必须 | 2048 | 详情设置会根据action_type字段类型不同而格式不同,请详细查看开放平台文案,会详细说明如果设置,整体是json结构。参考文档:https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.u6pJ7Q&treeId=193&articleId=105281&docType=1#s1 | {"tableId": "20","max": 8, "min": 2, "table_name": "生楼阁","tableNum":"A01"} |
industry | String | 必须 | 64 | 当action_type的参数值是 insert_table、update_table、insert_dish、delete_dish、soldout_dish、modify_dish、insert_dish、insert_one_shop_all_table时,此参数的值固定为:REPAST | REPAST |
action_outer_id | String | 必须 | 64 | 每次请求的唯一id,需开发者自行保证此参数值每次请求的唯一性。后续可以通过当前唯一id进行问题排查。 | aab66 |
source | String | 可选 | 50 | 从第三方平台进入开发者应用后产生的数据,传入第三方平台域名。比如是支付宝扫码后产生的,传入支付宝域名alipay.com,是微信打开后产生的,传入微信域名weixin.qq.com,如果数据不是从第三方平台进入后产生的,设置自己的域名即可,该字段内容不做强制校验。 | koubei.com |
参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
---|---|---|---|---|---|
code | String | 是 | - | 网关返回码,详见文档 | 40004 |
msg | String | 是 | - | 网关返回码描述,详见文档 | Business Failed |
sub_code | String | 否 | - | 业务返回码,详见文档 | ACQ.TRADE_HAS_SUCCESS |
sub_msg | String | 否 | - | 业务返回码描述,详见文档 | 交易已被支付 |
sign | String | 是 | - | 签名,详见文档 | DZXh8eeTuAHoYE3w1J+POiPhfDxOYBfUNn1lkeT/V7P4zJdyojWEa6IZs6Hz0yDW5Cp/viufUb5I0/V5WENS3OYR8zRedqo6D+fUTdLHdc+EFyCkiQhBxIzgngPdPdfp1PIS7BdhhzrsZHbRqb7o4k3Dxc+AAnFauu4V6Zdwczo= |
参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
---|
AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","app_id","your private_key","json","GBK","alipay_public_key","RSA2"); AlipayOfflineProviderShopactionRecordRequest request = new AlipayOfflineProviderShopactionRecordRequest(); request.setBizContent("{" + "\"action_type\":\"insert_table\"," + "\"entity\":\"shop\"," + "\"user_id\":\"2088502948051150\"," + "\"date_time\":\"2016-04-1211:30:56\"," + "\"outer_shop_do\":{" + "\"shop_id\":\"2016062900077000000016003316\"," + "\"outer_id\":\"2323445656fe234abc33\"," + "\"type\":\"_2dFire\"" + "}," + "\"action_detail\":\"{\\\"tableId\\\":\\\"20\\\",\\\"max\\\":8,\\\"min\\\":2,\\\"table_name\\\":\\\"生楼阁\\\",\\\"tableNum\\\":\\\"A01\\\"}\"," + "\"industry\":\"REPAST\"," + "\"action_outer_id\":\"aab66\"," + "\"source\":\"koubei.com\"" + "}"); AlipayOfflineProviderShopactionRecordResponse response = alipayClient.execute(request); if(response.isSuccess()){ System.out.println("调用成功"); } else { System.out.println("调用失败"); }
{ "alipay_offline_provider_shopaction_record_response":{ "msg":"Success", "code":"10000" }, "sign":"ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE" }
{ "alipay_offline_provider_shopaction_record_response":{ "msg":"Service Currently Unavailable", "code":"20000", "sub_msg":"系统繁忙", "sub_code":"isp.unknow-error" }, "sign":"ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE" }
错误码 | 错误描述 | 解决方案 |
---|---|---|
ENTITY_IS_EMPTY | 操作实体字段 entity 为空 | 请填写正确的 entity 字段信息 (shop_table、shop_dish) |
DATE_TIME_IS_WRONG | 时间信息不正确 | 请填写正确格式的时间字段信息 |
ACTION_DETAIL_IS_WRONG | action_detail 字段信息不正确 | 请参考返回 msg 中的信息进行修改 |
OUTER_SHOP_DO_IS_EMPTY | outer_shop_do 为空 | 请正确先写 outer_shop_do 字段信息 |
OUTER_SHOP_DO_IS_WRONG_SHOP_ID | OUTER_SHOP_DO 对象的shop_id字段不合法 | 请正确填写OUTER_SHOP_DO 对象的shop_id 字段信息 |
OUTER_SHOP_DO_IS_WRONG_TYPE | OUTER_SHOP_DO的type字段不合法 | 请填写正确的OUTER_SHOP_DO的type字段信息 |
OUTER_SHOP_DO_IS_WRONG_OUTER_ID | OUTER_SHOP_DO 的 outer_id字段不合法 | 请填写正确的OUTER_SHOP_DO 的 outer_id字段信息 |
ACTION_DETAIL_IS_EMPTY | ACTION_DETAIL 字段为空 | ACTION_DETAIL 字段不能为空,请按照正确的格式填写正确的内容 |
INDUSTRY_IS_EMPTY | industry 字段为空 | 请正确填写industry 字段信息 |
ACTION_TYPE_IS_EMPTY | 请求参数 action_type 为空 | 请正确填写 action_type 字段信息 |
ACTION_TYPE_IS_NOT_EXIST | 请求参数 action_type 不存在 | 请正确填写 action_type 字段信息 |
ENTITY_IS_NOT_EXIST | 操作实体字段 entity 类型不存在 | 请填写正确的 entity 字段信息 (user) |
INDUSTRY_IS_NOT_EXIST | INDUSTRY 字段信息不存在 | industry 字段为信息不存在,请正确填写,比如 REPAST |
ACTION_OUTER_ID_IS_EMPTY | ACTION_OUTER_ID 字段信息为空 | 请正确填写 ACTION_OUTER_ID 字段信息 |
QUERY_TRANSFORM_TO_MODEL_FAILED | QUERY_TRANSFORM_TO_MODEL_FAILED | 消息转换为ActionModel过程失败,请检查biz_content中内容是否是jsonObject格式! |
MSG_SEND_TO_MSGBROKER_FAILED | MSG_SEND_TO_MSGBROKER_FAILED | 消息发送校验成功后,发给msgbroker过程失败!请重试 |
PERMISSION_DENY | 无权限 | 根据具体接口说明和错误说明 修改入参 |