文档中心 > 开放平台

第一步:创建应用并添加功能

要在您的应用中使用开放产品的接口能力,您需要登录开放平台,在开发者中心中创建登记您的应用,并提交审核,审核通过后会为您生成应用唯一标识(APPID),并且可以申请开通开放产品使用权限,通过APPID您的应用才能调用开放产品的接口能力。需要详细了解开放平台创建应用步骤请参考《应用创建指南》。

实现菜品营销必须开通以下产品功能(创建应用时添加),才能调用相应的接口:

第二步:配置秘钥和应用

开发者调用接口前需要先生成RSA密钥,RSA密钥包含应用私钥(APP_PRIVATE_KEY)、应用公钥(APP_PUBLIC_KEY)。生成密钥后在开放平台开发者中心进行密钥配置,配置完成后可以获取支付宝公钥(ALIPAY_PUBLIC_KEY)。详细步骤请参考《配置应用环境》

第三步:搭建和配置开发环境

1.下载服务端SDK

为了帮助开发者调用开放接口,我们提供了开放平台服务端SDK,包含JAVA、PHP和.NET三个语言版本,封装了签名&验签、HTTP接口请求等基础功能。请先下载对应语言版本的SDK并引入您的开发工程。 

2.接口调用配置

各语言版本服务端SDK详细使用说明,请参考《服务端SDK使用说明

在SDK调用前需要进行初始化,代码如下:

AlipayClient alipayClient = new DefaultAlipayClient(URL, APP_ID, APP_PRIVATE_KEY, FORMAT, CHARSET, ALIPAY_PUBLIC_KEY, SIGN_TYPE);

关键参数说明:

配置参数 示例值解释 获取方式/示例值
URL 支付宝网关(固定) https://openapi.alipay.com/gateway.do
APPID APPID 即创建应用后生成 获取见上面创建应用
FORMAT 参数返回格式,只支持json json(固定)
APP_PRIVATE_KEY 开发者私钥,由开发者自己生成 获取详见上面配置密钥
CHARSET 编码集,支持GBK/UTF-8 开发者根据实际工程编码配置
ALIPAY_PUBLIC_KEY 支付宝公钥,由支付宝生成 获取详见上面配置密钥
SIGN_TYPE 商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2 RSA2
TIPS:ISV/开发者可以通过“第三方应用授权”得到商户授权令牌(app_auth_token)作为请求参数传入,实现代商户发起请求的能力;具体方法请参考 第三方应用授权

第四步:开发、调试和上线应用

1、为了保证应用的安全性,开发前需要了解安全开发指南

2、接口调用流程

如下为扫码点菜 流程图

 

如下为单品+支付 及 扫码点菜+单品+支付 流程图

根据上述3种接入方案的流程图,可分解为如下接口模块

1)菜品推荐

在消费者扫码进入点菜界面后,ISV可根据接口查询菜品热度信息,向用户做菜品推荐

查询菜品类型:koubei.marketing.data.dishdiagnosetype.batchquery

SDK调用请求示例(以JAVA为例,更多语言示例参见接口文档)

AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","app_id","your private_key","json","GBK","alipay_public_key","RSA2");
KoubeiMarketingDataDishdiagnosetypeBatchqueryRequest request = new KoubeiMarketingDataDishdiagnosetypeBatchqueryRequest();
KoubeiMarketingDataDishdiagnosetypeBatchqueryResponse response = alipayClient.execute(request);
if(response.isSuccess()){
System.out.println("调用成功");
} else {
System.out.println("调用失败");
}

JSON响应示例

{
  "koubei_marketing_data_dishdiagnosetype_batchquery_response":{
    "code":"10000",
    "msg":"Success",
      "item_diagnose_type_list":[{
                "item_diagnose":"001",
        "item_diagnose_desc":"销量和复购多指标表现强劲"
        }]
  }
,"sign":"ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}

根据菜品类型查询菜品数据:koubei.marketing.data.dishdiagnose.batchquery

SDK调用请求示例(以JAVA为例,更多语言示例参见接口文档)

AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","app_id","your private_key","json","GBK","alipay_public_key","RSA2");
KoubeiMarketingDataDishdiagnoseBatchqueryRequest request = new KoubeiMarketingDataDishdiagnoseBatchqueryRequest();
request.setBizContent("{" +
"    \"page_size\":20," +
"    \"report_date\":\"20170103\"," +
"    \"page_no\":1," +
"    \"item_diagnose_type\":\"001\"" +
"  }");
KoubeiMarketingDataDishdiagnoseBatchqueryResponse response = alipayClient.execute(request);
if(response.isSuccess()){
System.out.println("调用成功");
} else {
System.out.println("调用失败");
}

JSON响应示例

{
  "koubei_marketing_data_dishdiagnose_batchquery_response":{
    "code":"10000",
    "msg":"Success",
      "item_diagnose_list":[{
                "rec_thirty_sale_cnt":20,
        "rec_thirty_sale_amt":34,
        "rec_thirty_consume_uid_cnt":"34",
        "rec_thirty_rebuy_uid_cnt":2,
        "rec_sixty_consume_uid_cnt":2,
        "rec_sixty_rebuy_uid_cnt":10,
        "rec_ninety_consume_uid_cnt":20,
        "rec_ninety_rebuy_uid_cnt":20,
        "hot_value":33.22,
        "hot_grade":1.5,
        "item_diagnose":"1",
        "item_diagnose_desc":"招牌菜品",
        "report_date":"20170104",
        "item_id":"2015432124564",
        "item_price":100,
        "rec_seven_sale_cnt":10,
        "item_name":"我是菜品名称",
        "rec_seven_sale_amt":20
        }],
    "total":100
  }
,"sign":"ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}

2)数据回传

ISV通过店铺数据回传接口,可以丰富店铺内容,提升商家店铺曝光量,以及提升用户使用体验。

isv 回传的商户操作行为信息调用接口(菜品回流):alipay.offline.provider.shopaction.record

isv 回传的用户操作行为信息调用接口(订单回流):alipay.offline.provider.useraction.record

3)发单品券

菜品营销推荐ISV使用营销活动接口来创建单品优惠活动,并通过支付宝核销单品券:

活动创建接口:koubei.marketing.campaign.activity.create

活动详情查询:koubei.marketing.campaign.activity.query

口碑营销活动列表查询:koubei.marketing.campaign.activity.batchquery

活动修改接口:koubei.marketing.campaign.activity.modify

活动下架接口:koubei.marketing.campaign.activity.offline

上传图片和视频(券图片):alipay.offline.material.image.upload

4)商户经营数据展示与分析

ISV可利用商户经营数据展示与分析接口对商户的经营销数据进行分析,并进行相应的展示。

口碑商户经营数据查询接口:koubei.marketing.data.indicator.query

5)店铺优惠展示

在用户扫码点菜时,ISV可利用店铺优惠展示接口向用户展示门店的优惠信息。

基于门店的优惠查询: alipay.offline.market.shop.discount.query

SDK调用示例(以JAVA为例,更多语言示例参见接口文档)

说明:本示例query_type传递了指定值类型,返回camp_num和camp_list;如果query_type不传递或者传递错误值,则返回item_list和discount_list。

AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","app_id","your private_key","json","GBK","alipay_public_key","RSA2");
AlipayOfflineMarketShopDiscountQueryRequest request = new AlipayOfflineMarketShopDiscountQueryRequest();
request.setBizContent("{" +
"\"shop_id\":\"2015042400077110000000013301\"," +
"\"query_type\":\"MERCHANT\"" +
"  }");
AlipayOfflineMarketShopDiscountQueryResponse response = alipayClient.execute(request);
if(response.isSuccess()){
System.out.println("调用成功");
} else {
System.out.println("调用失败");
}

JSON响应示例

{
    "alipay_offline_market_shop_discount_query_response": {
        "code": "10000",
        "msg": "Success",
        "camp_num": 100,
        "camp_list": [
            {
                "biz_id": "2015112300077000000005682952",
                "biz_type": "CONSUME_SEND",
                "camp_desc": "买单5折,满10可享,最高7元",
                "begin_time": "2017-07-01 00:00:00",
                "end_time": "2017-07-20 00:00:00",
                "win_limit_daily": "10",
                "win_limit_life": "10",
                "camp_guide": "[{\"details\":[\"2017-05-10 00:00至2017-07-25 23:59有效\"],\"title\":\"有效期\"},{\"details\":[\"向店员出示使用\"],\"title\":\"使用方式\"}]",
                "ext_info": "{\"key\":\"value\"}"
            }
        ]
    },
    "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}

6)支付接口

商户/系统商在调用支付接口时,可传入用户实际购买的商品信息,达到两个效果:

  1. 用户支付完成后,可在支付宝手机客户端的账单中看到这些商品信息,起到**电子小票**的作用。
  2. 如果商户在支付宝创建了单品优惠活动,则支付时必须传入商品信息,当传入的商品信息与单品活动中的配置的商品匹配上时,支付宝就会自动根据活动的优惠规则减免付款金额。

商品信息通过alipay.trade.create接口中goods_detail参数传入,注意这个参数是个数据集,包含几个子参数,以JSON列表的形式支持同时传入多个商品。

子参数名称 子参数说明
goods_id 商户自定义的商品编号,需要与单品活动中配置的商品编号一致。请在商户维度保持商品编号唯一,并与商品名称保持一对一关系。
goods_name 商户自定义的商品名称,请不要传入如外卖商品/打折商品等无实际意义的商品名称。如果有商品有多个规格,可在商品名称中包含,如海飞丝(350ml)。注意编码格式与调用接口指定的编码一致。
quantity 本次交易购买的商品数量
price 商品单价,单位元,商品优惠前的价格。商品单价x数量的累加金额=订单总金额(不做强行校验,但可能影响单品相关返佣)

使用了如下接口

接口英文名 接口中文名 API文档
alipay.trade.create 统一收单交易创建接口 查看文档
alipay.trade.query 统一收单线下交易查询 查看文档
alipay.trade.cancel 统一收单交易撤销接口 查看文档
alipay.trade.refund 统一收单交易退款接口 查看文档

支付相关产品可参考相关文档(点此查看文档)

第五步:创建服务

如何创建(插件)并在口碑服务市场售卖,请参见“服务创建及发布流程”。

>>立即接入

关于沙箱 

该产品目前不支持沙箱环境调试,请在正式环境调试。

FAQ

关于此文档暂时还没有FAQ
返回
顶部