文档中心 > 开放平台

第一步:创建应用

要在您的应用中使用支付宝开放产品的接口能力,您需要先去蚂蚁金服开放平台(open.alipay.com),在开发者中心中创建登记您的应用,并提交审核,审核通过后会为您生成应用唯一标识(APPID),并且可以申请开通开放产品使用权限,通过APPID您的应用才能调用开放产品的接口能力。

需要详细了解开放平台创建应用步骤请参考《开放平台应用创建指南》。

第二步:配置密钥

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

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

1. 下载服务端SDK

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

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

2. 接口调用配置

在SDK调用前需要进行初始化,以Java代码为示例如下:

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 即创建应用后生成 获取见上面创建应用并获取APPID
APP_PRIVATE_KEY 开发者私钥,由开发者自己生成 获取详见上面配置密钥
FORMAT 参数返回格式,只支持json json(固定)
CHARSET 编码集,支持GBK/UTF-8 开发者根据实际工程编码配置
ALIPAY_PUBLIC_KEY 支付宝公钥,由支付宝生成 获取详见上面配置密钥
SIGN_TYPE 商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2 RSA2

第四步:接口调用

接口英文名 接口中文名 接口描述
alipay.eco.mycar.parking.config.set 停车ISV系统配置接口 商户结合自身的系统进行停车业务的系统配置
alipay.eco.mycar.parking.config.query ISV系统配置查询接口 商户可以在配置系统信息前查询当前已经配置好的系统信息,确认系统配置是否正确。
alipay.eco.mycar.parking.parkinglotinfo.create 录入停车场信息 用于在停车平台注册停车场信息
alipay.eco.mycar.parking.parkinglotinfo.update 修改停车场信息 用于在停车平台修改停车场信息
alipay.eco.mycar.parking.enterinfo.sync 车辆驶入接口 上传车辆驶入信息,上传信息通过该接口提交到支付宝,支付宝返回对应的信息
alipay.eco.mycar.parking.exitinfo.sync 车辆驶出接口 上传车辆驶出信息,上传信息通过该接口提交到支付宝,支付宝返回对应的信息
alipay.eco.mycar.parking.vehicle.query 车牌查询接口 商户通过接口调用,获取用户车牌信息
alipay.eco.mycar.parking.order.sync 订单同步接口 商户通过接口调用,回传订单信息给停车平台
alipay.eco.mycar.parking.order.update 订单更新接口 商户通过接口调用,回传订单状态给停车平台
alipay.eco.mycar.parking.userpage.query ISV停车缴费查询页面接口(SPI) 当用户要查询停车费用进行缴费时,支付宝会将用户请求分发到ISV的页面接口上,用户可以在该页面上进行查询缴费。
注: SPI是由停车平台按照业务需求给出定义规范,由isv或商户实现的接口。在系统完成整个业务的过程中,停车平台会调用这些SPI来完成相关业务信息的同步

4.1 主要业务流程系统交互时序图

 

4.2 接口调用的场景及系统的交互时序图

4.2.1 ISV系统配置信息注册(查询)

【场景】为最终实现用户在停车缴费平台完成绑车牌、缴费等服务,ISV需要结合自身系统进行停车业务的环境配置,配置ISV缴费查询页面的地址链接,只有自助完成配置停车业务各环节的环境信息后,才能进行正常的业务调用,请仔细填写系统配置信息。

【调用流程】

1、调用接口时序图

注意:配置接口(alipay.eco.mycar.parking.config.set)每次调用都会覆盖掉原有的系统配置信息,为确保配置的正确性,可先调用查询配置接口(alipay.eco.mycar.parking.config.query)查询已配置的接口信息并确认后,再进行配置接口的调用。

入参特别说明

参数名称 参数说明 List包含对象参数说明 参数说明
interface_info_list   接口信息列表,停车业务需要配置的接口列表,该值为JSON数据格式的LIST对象,现阶段只需要配置一个页面接口即可   interface_name 传入参数固定值:alipay.eco.mycar.parking.userpage.query
interface_type 传入参数固定值:interface_page
interface_url SPI接口的调用地址url,协议必须为https,对整个url字符串必须进行UrlEncode编码。编码为UTF-8

样例

"interface_info_list":[{"interface_type":"interface_page","interface_url":"https%3A%2F%2Fwww.parking.com%2Fuser%2Fquery.do","interface_name":"alipay.eco.mycar.parking.userpage.query"}]

2、接口代码调用参考

1)停车业务配置信息
>>接口名:停车ISV系统配置接口(alipay.eco.mycar.parking.config.set)

>>SDK调用示例:

//实例化客户端
		AlipayClient client = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json","UTF-8",ALIPAY_PUBLIC_KEY);
		//实例化具体API对应的request类,类名称和接口名称对应, 
		AlipayEcoMycarParkingConfigSetRequest request = new AlipayEcoMycarParkingConfigSetRequest();
		//SDK已经封装掉了公共参数,这里只需要传入业务参数
		//此次只是参数展示,未进行字符串转义,实际情况下请转义
		request.setBizContent("{" +
				"\"merchant_name\":\"杭州立方\"," +
				"\"merchant_service_phone\":\"021-25413215\"," +
				"\"account_no\":\"1234567@126.com\"," +
				"\"interface_info_list\":[{" +
				"\"interface_name\":\"alipay.eco.mycar.parking.userpage.query\"," +
				"\"interface_type\":\"interface_page\"," +
				"\"interface_url\":\"https%3A%2F%2Fwww.parking24.cn%2Frf_carlife_alipay%2FCarLifeAction%21alipayAuth.action\"" +
				" }]" +
				" }");//业务数据
		try {
			AlipayEcoMycarParkingConfigSetResponse response = client.execute(request);
			//判断调用是否成功
			if(response.isSuccess()){
				//获取相应数据
				Map<String,String> responseParams = response.getParams();
				//通过返回数据进行业务处理,可以通过responseParams获取到返回的键值数据
			}else{
				//调用失败处理逻辑
			}
		} catch (AlipayApiException e) {
			// TODO Auto-generated catch block
			//调用异常逻辑处理
			e.printStackTrace();
		}

 

2)停车业务配置信息查询
>>接口名:停车ISV系统配置查询接口(alipay.eco.mycar.parking.config.query)

>>SDK调用示例:

//实例化客户端
AlipayClient client = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json","UTF-8",ALIPAY_PUBLIC_KEY);
		//实例化具体API对应的request类,类名称和接口名称对应, 
		AlipayEcoMycarParkingConfigQueryRequest request = new AlipayEcoMycarParkingConfigQueryRequest();
		//SDK已经封装掉了公共参数,这里只需要传入业务参数
		//此次只是参数展示,未进行字符串转义,实际情况下请转义
		request.setBizContent("{" +
				"\"interface_name\":\"alipay.eco.mycar.parking.userpage.query\"," +
				"\"interface_type\":\"interface_page\"" +
				" }");//业务数据
		try {
			AlipayEcoMycarParkingConfigQueryResponse response = client.execute(request);
			//判断调用是否成功
			if(response.isSuccess()){
				//获取相应数据
				Map<String,String> responseParams = response.getParams();
				//通过返回数据进行业务处理,可以通过responseParams获取到返回的键值数据
			}else{
				//调用失败处理逻辑
			}
		} catch (AlipayApiException e) {
			// TODO Auto-generated catch block
			//调用异常逻辑处理
			e.printStackTrace();
		}

入参特别说明

参数名称 是否必填 参数说明
interface_name 传入参数固定值:alipay.eco.mycar.parking.userpage.query
interface_type 传入参数固定值:interface_page

4.2.2 ISV停车场信息注册或者修改

【场景】ISV与支付宝合作,并开通了支付宝停车缴费服务产品后,ISV在停车平台上注册停车场信息或更新停车场信息。在整个业务链路中是停车场与支付宝停车平台对接的第一步,停车场信息用于在停车服务页面上展现,因此要确保信息的准确性。

ISV注册停车场后还可以根据对应停车场标识进行停车场信息的修改。

【调用流程】

1、调用接口时序图

注意:返回的支付宝停车场唯一标识ISV需进行保存以便之后的业务接口使用。

2、接口代码调用参考:

1)录入停车场信息
>>接口名:录入停车场信息接口(alipay.eco.mycar.parking.parkinglotinfo.create)

>>SDK调用示例:

//实例化客户端
		AlipayClient client = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json","UTF-8",ALIPAY_PUBLIC_KEY);
		//实例化具体API对应的request类,类名称和接口名称对应, 
		AlipayEcoMycarParkingParkinglotinfoCreateRequest request = new AlipayEcoMycarParkingParkinglotinfoCreateRequest();
		//SDK已经封装掉了公共参数,这里只需要传入业务参数
		//此次只是参数展示,未进行字符串转义,实际情况下请转义
		request.setBizContent("{" +"\"city_id\":\"110101\"," +
				"\"equipment_name\":\"商户名称\"," +
				"\"out_parking_id\":\"10000110001\"," +
				"\"parking_address\":\"浙江省杭州市古墩路与疏港公路的交汇处\"," +
				"\"longitude\":\"114.266418\"," +
				"\"latitude\":\"30.548828\"," +
				"\"parking_start_time\":\"07:00:00\"," +
				"\"parking_end_time\":\"03:07:50\"," +
				"\"parking_number\":\"10000\"," +
				"\"parking_lot_type\":\"1\"," +
				"\"parking_type\":\"2\"," +
				"\"payment_mode\":\"1\"," +
				"\"pay_type\":\"2\"," +
				"\"shopingmall_id\":\"100001008\"," +
				"\"parking_fee_description\":\"小车一小时10元\"," +
				"\"contact_name\":\"张三\"," +
				"\"contact_mobile\":\"189xxxxxxxx\"," +
				"\"contact_tel\":\"0571xxxxxxxx\"," +
				"\"contact_emali\":\"alipay@alipay.com\"," +
				"\"contact_weixin\":\"923422342\"," +
				"\"contact_alipay\":\"189xxxxxxxx\"," +
				"\"parking_name\":\"城西停车场\"," +
				"\"time_out\":\"13\"" +
				"}");//业务数据
		try {
			AlipayEcoMycarParkingParkinglotinfoCreateResponse response = client.execute(request);
			//判断调用是否成功
			if(response.isSuccess()){
				//获取相应数据
				Map<String,String> responseParams = response.getParams();
				//通过返回数据进行业务处理,可以通过responseParams获取到返回的键值数据
			}else{
				//调用失败处理逻辑
			}
		} catch (AlipayApiException e) {
			// TODO Auto-generated catch block	
			//调用异常逻辑处理
			e.printStackTrace();
		}

2)停车场信息修改

>>接口名:停车场信息修改接口(alipay.eco.mycar.parking.parkinglotinfo.update)

>>SDK调用示例:

//实例化客户端
		AlipayClient client = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json"," UTF-8",ALIPAY_PUBLIC_KEY);
		//实例化具体API对应的request类,类名称和接口名称对应, alipay.eco.mycar.parking.parkinglotinfo.update
		AlipayEcoMycarParkingParkinglotinfoUpdateRequest request = new AlipayEcoMycarParkingParkinglotinfoUpdateRequest();
		//SDK已经封装掉了公共参数,这里只需要传入业务参数
		//此次只是参数展示,未进行字符串转义,实际情况下请转义
		request.setBizContent("{" +
				"\"parking_id\":\"2014072300007148\"," +
				"\"city_id\":\"110101\"," +
				"\"equipment_name\":\"商户名称\"," +
				"\"out_parking_id\":\"10000110001\"," +
				"\"parking_address\":\"浙江省杭州市古墩路与疏港公路的交汇处\"," +
				"\"longitude\":\"114.266418\"," +
				"\"latitude\":\"30.548828\"," +
				"\"parking_start_time\":\"03:07:50\"," +
				"\"parking_end_time\":\"03:07:50\"," +
				"\"parking_name\":\"城西停车场\"," +
				"\"parking_number\":\"10000\"," +
				"\"parking_lot_type\":\"1\"," +
				"\"parking_type\":\"1\"," +
				"\"payment_mode\":\"1\"," +
				"\"pay_type\":\"2\"," +
				"\"shopingmall_id\":\"100001008\"," +
				"\"parking_fee_description\":\"小车一小时10元\"," +
				"\"contact_name\":\"张三\"," +
				"\"contact_mobile\":\"189xxxxxxxxxxx\"," +
				"\"contact_tel\":\"0571xxxxxxxx\"," +
				"\"contact_email\":\"alipay@alipay.com\"," +
				"\"contact_weixin\":\"923422342\"," +
				"\"contact_alipay\":\"189xxxxxxxxxxx\"" +
				"}");//业务数据
		try {
			AlipayEcoMycarParkingParkinglotinfoUpdateResponse response = client.execute(request);
			//判断调用是否成功
			if(response.isSuccess()){
				//获取相应数据
				Map<String,String> responseParams = response.getParams();
				//通过返回数据进行业务处理,可以通过responseParams获取到返回的键值数据
			}else{
				//调用失败处理逻辑
			}
		} catch (AlipayApiException e) {
			// TODO Auto-generated catch block	
			//调用异常逻辑处理
			e.printStackTrace();
		}

4.2.3 用户车辆驶入(车辆驶出)停车场车辆信息同步

【场景】在用户驾车进入停车场,通过支付宝停车平台首页查询停车记录的场景下,ISV需要将用户车辆的入场信息同步到支付宝,以便之后用户通过支付宝停车平台首页查询停车记录并判别应该跳转的ISV停车费展示页面的链接。

在用户驾车离开停车场的场景下,ISV需要将用户的车辆离场信息同步到支付宝,完成标识该车辆是否离场的状态,以便用户可以在停车平台查询到车辆历史停车信息。

【调用流程】

1、调用接口时序图

2、接口代码调用参考:

1)车辆驶入信息同步
>>接口名:车辆驶入信息同步接口(alipay.eco.mycar.parking.enterinfo.sync)

>>SDK调用示例:

//实例化客户端
		AlipayClient client = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json"," UTF-8",ALIPAY_PUBLIC_KEY);
		//实例化具体API对应的request类,类名称和接口名称对应, AlipayEcoMycarParkingEnterinfoSyncRequest request = new AlipayEcoMycarParkingEnterinfoSyncRequest ();
		//SDK已经封装掉了公共参数,这里只需要传入业务参数
		//此次只是参数展示,未进行字符串转义,实际情况下请转义
		request.setBizContent("{" +
				"\"parking_id\":\"2015042321001004720200028594\"," +
				"\"car_number\":\"浙Axxxxx\"," +
				"\"in_time\":\"2016-07-24 03:07:50\"" +
				"}");//业务数据 
		try {
			AlipayEcoMycarParkingEnterinfoSyncResponse response = client.execute(request);
			//判断调用是否成功
			if(response.isSuccess()){
				//获取相应数据
				Map<String,String> responseParams = response.getParams();
				//通过返回数据进行业务处理,可以通过responseParams获取到返回的键值数据
			}else{
				//调用失败处理逻辑
			}
		} catch (AlipayApiException e) {
			// TODO Auto-generated catch block	
			//调用异常逻辑处理
			e.printStackTrace();
		}

入参特别说明

参数名称 是否必填 参数说明
parking_id 支付宝停车场ID ,系统唯一
car_number 车牌号
in_time 是  车辆入场的时间,格式"YYYYMM-DD HH:mm:ss",24小时制

2)车辆离场信息同步
>>接口名:车辆离场信息同步接口(alipay.eco.mycar.parking.exitinfo.sync)

>>SDK调用示例:

//实例化客户端
		AlipayClient client = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json"," UTF-8",ALIPAY_PUBLIC_KEY);
		//实例化具体API对应的request类,类名称和接口名称对应, alipay.eco.mycar.parking.exitinfo.sync
		AlipayEcoMycarParkingExitinfoSyncRequest request = new AlipayEcoMycarParkingExitinfoSyncRequest();
		//SDK已经封装掉了公共参数,这里只需要传入业务参数
		//此次只是参数展示,未进行字符串转义,实际情况下请转义
		request.setBizContent("{" +
				"\"parking_id\":\"2015042321001004720200028594\"," +
				"\"car_number\":\"浙Axxxxx\"," +
				"\"out_time\":\"2016-07-24 03:07:50\"" +
				"}");//业务数据
		try {
			AlipayEcoMycarParkingExitinfoSyncResponse response = client.execute(request);
			//判断调用是否成功
			if(response.isSuccess()){
				//获取相应数据
				Map<String,String> responseParams = response.getParams();
				//通过返回数据进行业务处理,可以通过responseParams获取到返回的键值数据
			}else{
				//调用失败处理逻辑
			}
		} catch (AlipayApiException e) {
			// TODO Auto-generated catch block	
			//调用异常逻辑处理
			e.printStackTrace();
		}

关键入参:

参数名称 是否必填 参数说明
parking_id 是  支付宝停车场ID,系统唯一
car_number 车牌号
out_time 车辆离场时间,格式"YYYYMM-DD HH:mm:ss",24小时制,请保证车辆的出场时间比入场时间要晚

4.2.4 用户查询车辆停车费用

【场景】车辆进入停车场后,用户可以通过用支付宝钱包的扫一扫功能扫描二维码支付停车费;用户也可以在支付宝钱包的车主服务->停车服务中查询并支付停车费。在用户通过支付宝钱包查询支付停车费的场景下,停车平台根据用户车辆驶入信息匹配并跳转到相应的ISV页面。ISV页面服务可通过接口获取用户的车牌号码,展示停车费用,在整个业务链路中引导用户完成停车费支付。

【调用流程】

1、调用接口时序图

 

1)ISV需要将停车缴费查询页面(SPI)地址提供给支付宝,该页面地址用于ISV展示用户待缴费用信息,ISV可以通过系统配置接口(alipay.eco.mycar.parking.config.set)进行SPI配置,配置该页面地址的URL。

SPI:SPI是由支付宝给出定义规范,并由ISV或商户实现的接口

2)用户通过支付宝钱包进入停车应用的方式查询停车费用时,支付宝将通过用户授权的方式提供给ISV车辆ID,ISV需要调用车牌查询接口(alipay.eco.mycar.parking.vehicle.query)来获取用户的车牌信息。

3)授权调用的方式可参阅授权中的第三步,使用auth_code调用接口(alipay.system.oauth.token)换取access_token及用户userId

2、接口代码调用参考:

1)缴费查询页面接口
>>接口名称:缴费查询页面接口(alipay.eco.mycar.parking.userpage.query)

关键入参:

参数名称 是否必填 参数说明
car_id 车辆ID,系统唯一
auth_code 是  用户授权码,提供给ISV换取access_token及用户userId
parking_id 是  支付宝停车场标识,系统唯一

示例:

https://parking.abc.com/query.do?auth_code=ca34ea491e7146cc87d25fca24c4cD11RSA&car_id=2016042301020544234434&parking_id=201609086335558213543

2)获取用户车牌信息
>>接口名:获取用户车牌信息(alipay.eco.mycar.parking.vehicle.query)

>>SDK调用示例:

//实例化客户端
		AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json"," UTF-8",ALIPAY_PUBLIC_KEY);
		//实例化具体API对应的request类,类名称和接口名称对应
		AlipaySystemOauthTokenRequest request = new AlipaySystemOauthTokenRequest();
		//授权设置
		request.setGrantType("authorization_code");
		//auth_code设置,从alipay.eco.mycar.parking.userpage.query页面接口中可以获取到该值
		request.setCode("2e4248c2f50bb4653bf18ecee3466UC18");
		//换取调用
		AlipaySystemOauthTokenResponse response = alipayClient.execute(request);
		if(response.isSuccess()){
			//调用成功
			String uid = response.getUserId();
			//取得令牌
			String access_token = response.getAccessToken();
			//通过授权令牌调用获取用户车牌信息接口 alipay.eco.mycar.parking.vehicle.query
			AlipayEcoMycarParkingVehicleQueryRequest request = new AlipayEcoMycarParkingVehicleQueryRequest();
			//SDK已经封装掉了公共参数,这里只需要传入业务参数
			//此次只是参数展示,未进行字符串转义,实际情况下请转义
			
			request.setBizContent("{" +
					"\"car_id\":\"201605061278654\"" +
					"}");//业务数据
			
			AlipayEcoMycarParkingVehicleQueryResponse response = alipayClient.execute(request,access_token); 
			//判断调用是否成功
			if(response.isSuccess()){
				//获取相应数据
				Map<String,String> responseParams = response.getParams();
				//通过返回数据进行业务处理,可以通过responseParams获取到返回的键值数据
				
			}else{
				//调用失败处理逻辑
			}
			
		} else {
		 //换取令牌失败逻辑处理
		}

关键入参:

参数名称 是否必填 参数说明
car_id 车辆ID,支付宝系统唯一,用户车辆唯一标识

关键出参:

参数名称 是否必填 参数说明
car_number 车牌信息,用户想进行查询停车费用的车牌号码

4.2.5 用户支付缴费

【场景】在用户查看到车辆的停车费用信息,点击缴费调起收银台,支付停车费用的场景下,为保证停车平台与ISV停车场订单信息的同步,ISV需要在用户支付成功后。通过接口alipay.eco.mycar.parking.order.sync将必要的停车缴费订单进行同步到停车平台,使用户在停车平台能够查询到相应的订单信息。

【调用流程】

1、调用接口时序图

1)停车缴费订单生成可参阅当面付订单生成接口

2)支付结果异步通知可参阅当面付异步通知

3)ISV收到支付成功的通知后需要将停车订单信息通过接口alipay.eco.mycar.parking.order.sync进行订单同步。

2、接口代码调用参考:

1)停车业务订单信息同步
>>接口名:停车业务订单信息同步接口(alipay.eco.mycar.parking.order.sync)

>>SDK调用示例:

//实例化客户端
		AlipayClient client = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json"," UTF-8",ALIPAY_PUBLIC_KEY);
		//实例化具体API对应的request类,类名称和接口名称对应, alipay.eco.mycar.parking.order.sync
		AlipayEcoMycarParkingOrderSyncRequest request = new AlipayEcoMycarParkingOrderSyncRequest();
		//SDK已经封装掉了公共参数,这里只需要传入业务参数
		//此次只是参数展示,未进行字符串转义,实际情况下请转义
		request.setBizContent("{" +
				"\"user_id\":\"2088006362935583\"," +
				"\"out_parking_id\":\"201605061278654\"," +
				"\"parking_name\":\"上海证大五道口地下停车场\"," +
				"\"car_number\":\"浙Axxxxx\"," +
				"\"out_order_no\":\"201605061278654435466567\"," +
				"\"order_status\":\"1\"," +
				"\"order_time\":\"2016-08-12 20:27:30\"," +
				"\"order_no\":\"7674879087745646586\"," +
				"\"pay_time\":\"2016-08-12 23:20:23\"," +
				"\"pay_type\":\"1\"," +
				"\"pay_money\":\"20.00\"," +
				"\"in_time\":\"2016-08-12 20:20:13\"," +
				"\"parking_id\":\"1234567890123456\"," +
				"\"in_duration\":\"320\"," +
				"\"card_number\":\"2357868977445645645656\"" +
				"}");//业务数据
		try {
			AlipayEcoMycarParkingOrderSyncResponse response = client.execute(request);
			//判断调用是否成功
			if(response.isSuccess()){
				//获取相应数据
				Map<String,String> responseParams = response.getParams();
				//通过返回数据进行业务处理,可以通过responseParams获取到返回的键值数据
			}else{
				//调用失败处理逻辑
			}
		} catch (AlipayApiException e) {
			// TODO Auto-generated catch block	
			//调用异常逻辑处理
			e.printStackTrace();
		}

4.2.6 订单信息修改

【场景】在用户对停车订单有疑议而产生申诉,退款完成的场景下,ISV订单状态发生改变,为确保订单状态的一致性,ISV需要修改交易状态为支付成功的订单,通过接口alipay.eco.mycar.parking.order.update,将订单的状态变化信息同步到停车平台。

【调用流程】

1、调用接口时序图

 

2、接口代码调用参考:

1)订单信息修改
>>接口名:订单信息修改接口(alipay.eco.mycar.parking.order.update)

>>SDK调用示例:

//实例化客户端
		AlipayClient client = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json"," UTF-8",ALIPAY_PUBLIC_KEY);
		//实例化具体API对应的request类,类名称和接口名称对应, alipay.eco.mycar.parking.order.update
		AlipayEcoMycarParkingOrderUpdateRequest request = new AlipayEcoMycarParkingOrderUpdateRequest();
		//SDK已经封装掉了公共参数,这里只需要传入业务参数
		//此次只是参数展示,未进行字符串转义,实际情况下请转义
		request.setBizContent("{" +
				"\"user_id\":\"2088006362935583\"," +
				"\"order_no\":\"PO20160805204323394865\"," +
				"\"order_status\":\"1\"" +
				"}");//业务数据

		try {
			AlipayEcoMycarParkingOrderUpdateResponse response = client.execute(request);
			//判断调用是否成功
			if(response.isSuccess()){
				//获取相应数据
				Map<String,String> responseParams = response.getParams();
				//通过返回数据进行业务处理,可以通过responseParams获取到返回的键值数据
			}else{
				//调用失败处理逻辑
			}
		} catch (AlipayApiException e) {
			// TODO Auto-generated catch block	
			//调用异常逻辑处理
			e.printStackTrace();
		}

第五步:上线

自测验收完毕之后,ISV停车缴费业务即可自动上线。了解停车缴费页面设计建议规范

温馨提示:ISV本身应用上线时候,也要把支付宝开放平台-我的应用上线。

 

沙箱调试说明

如何接入沙箱

沙箱环境是开放平台提供给开发者调试接口的环境,具体操作步骤见 沙箱接入指南

温馨提示:接入沙箱之前请将ISV系统配置信息进行注册。了解如何注册ISV系统配置信息

了解更多接入沙箱环境  |   开始接入沙箱环境

登录沙箱环境

使用手机扫码下载沙箱环境APP,目前沙箱环境只支持安卓系统。

进入沙箱环境时页面无车主应用入口,请参照以下二维码或沙箱环境停车缴费网关地址,通过扫一扫的方式进入车主平台,点击”停车”进入停车平台。

沙箱环境停车缴费网关地址

沙箱环境停车缴费网关地址:https://openapi.alipaydev.com/gateway.do

温馨提示:该网关仅适用于沙箱环境,正式环境上线网关与该网关不同。

了解接口调用注意事项 了解常见问题

FAQ

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