接口说明
该接口是 签名数据准备接口,用于生成可信签名字符串(orderstr)。可信签名串中包含业务参数及商户身份信息,可防止数据被篡改,一般用于打开支付宝客户端。请在服务端执行支付宝sdk中sdkexecute方法,读取响应中的body()结果。具体使用方法请参考
通用场景
信用服务开通/授权
公共请求参数
业务请求参数
out_agreement_no必选string(64)
【描述】商户外部协议号,不同的支付宝用户需要传递不同的外部单号
【示例值】2014070700166653
zm_service_id必选string(64)
【描述】芝麻信用服务id
【示例值】2020050722001440031000061082
category_id可选string(64)
【描述】芝麻外部类目,先享产品无差异化诉求可不传
【示例值】credit_pay_after_use
cancel_back_link可选string(1024)
【描述】当用户进入信用服务开通/授权页面后,点击左上角的回退按钮,中断开通流程,跳转回商户的页面地址。支持scheme协议。不传该链接时,默认返回上一级页面,由外部app唤起支付宝的情况,会返回支付宝凯发k8官方网娱乐官方首页。
【示例值】https://www.taobao.com
return_back_link可选string(1024)
【描述】用户信用服务开通流程结束后,不区分用户开通成功/失败,跳转回商家页面,该字段代表跳转回商家的页面地址。支持scheme协议。不传该链接时,默认返回上一级页面,由外部app唤起支付宝的情况,会返回支付宝凯发k8官方网娱乐官方首页。
【示例值】https://www.taobao.com
extra_param可选string(1024)
【描述】业务扩展参数,用于商户的特定业务信息的传递,json格式。无特殊需求时,不需要传递该参数。
【示例值】{"merchantext":"key=value"}
常见请求示例
默认示例
package com.java.sdk.demo;
import com.alipay.api.alipayapiexception;
import com.alipay.api.alipayclient;
import com.alipay.api.defaultalipayclient;
import com.alipay.api.alipayconfig;
import com.alipay.api.domain.zhimacreditpayafterusecreditagreementsignmodel;
import com.alipay.api.request.zhimacreditpayafterusecreditagreementsignrequest;
import com.alipay.api.response.zhimacreditpayafterusecreditagreementsignresponse;
import com.alipay.api.fileitem;
import java.util.base64;
import java.util.arraylist;
import java.util.list;
public class zhimacreditpayafterusecreditagreementsign {
public static void main(string[] args) throws alipayapiexception {
// 初始化sdk
alipayclient alipayclient = new defaultalipayclient(getalipayconfig());
// 构造请求参数以调用接口
zhimacreditpayafterusecreditagreementsignrequest request = new zhimacreditpayafterusecreditagreementsignrequest();
zhimacreditpayafterusecreditagreementsignmodel model = new zhimacreditpayafterusecreditagreementsignmodel();
// 设置芝麻信用服务id
model.setzmserviceid("2020050722001440031000061082");
// 设置芝麻外部类目
model.setcategoryid("credit_pay_after_use");
// 设置当用户进入信用服务开通/授权页面后
model.setcancelbacklink("https://www.taobao.com");
// 设置用户信用服务开通流程结束后
model.setreturnbacklink("https://www.taobao.com");
// 设置业务扩展参数
model.setextraparam("{\"merchantext\":\"key=value\"}");
// 设置商户外部协议号
model.setoutagreementno("2014070700166653");
request.setbizmodel(model);
// 第三方代调用模式下请设置app_auth_token
// request.putothertextparam("app_auth_token", "<-- 请填写应用授权令牌 -->");
zhimacreditpayafterusecreditagreementsignresponse response = alipayclient.sdkexecute(request);
string orderstr = response.getbody();
system.out.println(orderstr);
if (response.issuccess()) {
system.out.println("调用成功");
} else {
system.out.println("调用失败");
// sdk版本是"4.38.0.all"及以上,可以参考下面的示例获取诊断链接
// string diagnosisurl = diagnosisutils.getdiagnosis;
// system.out.println(diagnosisurl);
}
}
private static alipayconfig getalipayconfig() {
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");
return alipayconfig;
}
}
说明:本示例仅供参考。
公共响应参数
无公共响应参数
业务响应参数
orderstr|签名字符串必选string(16384)
【描述】获取签名后的业务数据具体使用方法请参考
【示例值】请参考响应示例
响应示例
正常示例
app_id=2017060101317939&biz_content={"zm_service_id%22:%222020050722001440031000061082%22,"category_id%22:"credit_pay_after_use%22,"cancel_back_link%22:"https://www.taobao.com%22,"return_back_link%22:"https://www.taobao.com%22,"extra_param%22:%22{\"merchantext\%22:\"key=value\%22}%22,"out_agreement_no%22:%222014070700166653%22}&charset=utf-8&format=json&method=zhima.credit.payafteruse.creditagreement.sign&sign=eritjkeijkjhkkkkkkkhjereeeeeeeeeee&sign_type=rsa2×tamp=2014-07-24 03:07:50&version=1.0
说明:本示例仅供参考。
公共错误码
业务错误码
无业务错误码