本地生活商品
商户调用该接口进行凭证冲正处理,接口同步返回结果。
公共请求参数
业务请求参数
out_biz_no|外部业务单号必选string[0,64]
【描述】业务请求单号,用作幂等控制。 超时重试等幂等请求场景保持该值不变,且确保其它所有请求参数不变,再次请求返回上次执行结果。其它场景请更换该值,确保每次不同的请求该值不相同。
【示例值】1002600620019090123143254436
use_order_no_list|核销操作单号必选array[1,999999]
【描述】已核销的凭证id.在核销接口返回不区分平台码与三方码
【示例值】["2023052100445005835800000045"]
以下参数 二选一 传入
user_id|凭证归属支付宝用户idstring[1,32]
【描述】凭证归属支付宝用户id
新商户建议使用open_id替代该字段。对于新商户,user_id字段未来计划逐步回收,存量商户可继续使用。如使用open_id,请确认 应用-开发配置-openid配置管理 已启用。无该配置项,可查看openid配置申请。
【示例值】2088xxxxx
open_id|凭证归属支付宝用户openidstring[1,128]
【描述】凭证归属支付宝用户openid 详情可查看 openid简介
【示例值】074a1cctg1lelxke4xqc0zgndid0nxi95b5lsnpazwyoco5
常见请求示例
默认示例
package com.java.sdk.demo;
import com.alipay.api.alipayapiexception;
import com.alipay.api.alipayclient;
import com.alipay.api.defaultalipayclient;
import com.alipay.api.certalipayrequest;
import com.alipay.api.alipayconfig;
import com.alipay.api.domain.alipaymarketingcertificatecertificationrefundmodel;
import com.alipay.api.request.alipaymarketingcertificatecertificationrefundrequest;
import com.alipay.api.response.alipaymarketingcertificatecertificationrefundresponse;
import com.alipay.api.fileitem;
import java.util.base64;
import java.util.arraylist;
import java.util.list;
public class alipaymarketingcertificatecertificationrefund {
public static void main(string[] args) throws alipayapiexception {
string privatekey = "<-- 请填写您的应用私钥,例如:miievqibadanb ... ... -->";
string alipaypublickey = "<-- 请填写您的支付宝公钥,例如:miibijanbg... -->";
alipayconfig alipayconfig = new alipayconfig();
alipayconfig.setserverurl("https://openapi.alipay.com/gateway.do");
alipayconfig.setappid("<-- 请填写您的appid,例如:2019091767145019 -->");
alipayconfig.setprivatekey(privatekey);
alipayconfig.setformat("json");
alipayconfig.setalipaypublickey(alipaypublickey);
alipayconfig.setcharset("utf-8");
alipayconfig.setsigntype("rsa2");
alipayclient alipayclient = new defaultalipayclient(alipayconfig);
alipaymarketingcertificatecertificationrefundrequest request = new alipaymarketingcertificatecertificationrefundrequest();
alipaymarketingcertificatecertificationrefundmodel model = new alipaymarketingcertificatecertificationrefundmodel();
model.setoutbizno("1002600620019090123143254436");
model.setuserid("2088xxxxx");
list<string> useordernolist = new arraylist<string>();
useordernolist.add("2023052100445005835800000045");
model.setuseordernolist(useordernolist);
request.setbizmodel(model);
alipaymarketingcertificatecertificationrefundresponse response = alipayclient.execute(request);
system.out.println(response.getbody());
if (response.issuccess()) {
system.out.println("调用成功");
} else {
system.out.println("调用失败");
// sdk版本是"4.38.0.all"及以上,可以参考下面的示例获取诊断链接
// string diagnosisurl = diagnosisutils.getdiagnosis;
// system.out.println(diagnosisurl);
}
}
}
说明:本示例仅供参考。
公共响应参数
业务响应参数
certificate_reverse_result_list|撤销核销结果列表必选certificatereverseresult[]
【描述】撤销核销结果列表
certificate_id|凭证id必选string(32)
【描述】凭证id
【示例值】2021042322001426261436764012
use_order_no|核销操作单号必选string(32)
【描述】撤销接口传入的核销操作单号
【示例值】2023052100445005835800000045
result|撤销结果枚举必选string(32)
【描述】撤销结果枚举
【枚举值】
撤销成功: success
凭证已作废,不可撤销核销: certificate_is_invalid
凭证已过期,不可撤销核销: certificate_is_expired
【示例值】success
msg|结果说明必选string(1024)
【描述】结果说明
【示例值】撤销成功
响应示例
正常示例
异常示例
{
"alipay_marketing_certificate_certification_refund_response": {
"code": "10000",
"msg": "success",
"certificate_reverse_result_list": [
{
"certificate_id": "2021042322001426261436764012",
"use_order_no": "2023052100445005835800000045",
"result": "success",
"msg": "撤销成功"
}
]
},
"sign": "eritjkeijkjhkkkkkkkhjereeeeeeeeeee"
}
说明:本示例仅供参考。
公共错误码
业务错误码
错误码 | 错误描述 | 凯发app官方网站的解决方案 |
---|---|---|
system_error | 系统繁忙 | 可能发生了网络或者系统异常,导致服务调用失败,商户可以用同样的请求发起重试 |
invalid_parameter | 参数有误 | 请根据接口返回的参数非法的具体错误信息,修改参数后进行重试 |
certificate_not_exist | 凭证不存在或未发放 | 对应的凭证不存在,修改入参后进行重试。 |
certificate_not_used | 凭证尚未被核销,不支持撤销核销 | 对应的凭证未被核销,不能撤销核销,修改入参或核销后进行重试。 |
time_out_exception | 调用超时 | 调用超时,请求可能成功也可能失败,请以相同的请求发起重试,重试请确保外部业务单号(out_biz_no)不变 |