在 ISV 代商户进行应用创建、产品签约时,用于开启一个操作事务,必须是第一个调用的接口
| 环境 | HTTPS请求地址 |
|---|---|
| 正式环境 | https://openapi.alipay.com/gateway.do |
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
|---|---|---|---|---|---|
| app_id | String | 是 | 32 | 支付宝分配给开发者的应用ID | 2014072300007148 |
| method | String | 是 | 128 | 接口名称 | alipay.open.agent.create |
| format | String | 否 | 40 | 仅支持JSON | JSON |
| charset | String | 是 | 10 | 请求使用的编码格式,如utf-8,gbk,gb2312等 | utf-8 |
| sign_type | String | 是 | 10 | 商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2 | RSA2 |
| sign | String | 是 | 344 | 商户请求参数的签名串,详见签名 | 详见示例 |
| 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 | 是 | - | 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档 |
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
|---|---|---|---|---|---|
| account | String | 必须 | 128 | isv代操作的商户账号,可以是支付宝账号,也可以是pid(2088开头) | test@alipay.com |
| contact_info | ContactModel | 必须 | - | 商户联系人信息,包含联系人名称、手机、邮箱信息。联系人信息将用于接受签约后的重要通知,如确认协议、到期提醒等。 | |
|
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
|---|---|---|---|---|---|
| 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= |
| 参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
|---|---|---|---|---|---|
| batch_no | String | 必填 | 25 | 本次代商户操作的全局唯一事务编号,后续代商户创建小程序、代签约当面付等产品、提交事务等接口都需要传递该batch_no值,且要确认只有 init 状态的batch_no才能发起调用。 | 2017110616474516400082883 |
| batch_status | String | 必填 | 10 |
ISV 代商户操作事务状态,事务状态包括:
init=初始状态,本接口alipay.open.agent.create返回 init 状态,只有init状态允许进行各种业务接口调用; submit=提交状态,事务已经到达终态,调用alipay.open.agent.confirm接口可以提交init状态的事务 cancel=取消状态,事务已经到达终态,调用alipay.open.agent.cancel接口可以取消init状态的事务 timeout=超时状态,事务已经到达终态,init状态的事务,在【1个小时】后会自动超时 注意:只有 init 状态才允许进行接口调用,其它状态都是终态,不允许继续进行接口调用。 |
init |
AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","app_id","your private_key","json","GBK","alipay_public_key","RSA2");
AlipayOpenAgentCreateRequest request = new AlipayOpenAgentCreateRequest();
request.setBizContent("{" +
"\"account\":\"test@alipay.com\"," +
"\"contact_info\":{" +
"\"contact_name\":\"张三\"," +
"\"contact_mobile\":\"18866668888\"," +
"\"contact_email\":\"zhangsan@alipy.com\"" +
" }" +
" }");
AlipayOpenAgentCreateResponse response = alipayClient.execute(request);
if(response.isSuccess()){
System.out.println("调用成功");
} else {
System.out.println("调用失败");
}
{
"alipay_open_agent_create_response":{
"msg":"Success",
"code":"10000",
"batch_no":"2017110616474516400082883",
"batch_status":"init"
},
"sign":"ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}
{
"alipay_open_agent_create_response":{
"msg":"Service Currently Unavailable",
"code":"20000",
"sub_msg":"系统繁忙",
"sub_code":"isp.unknow-error"
},
"sign":"ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}
| 错误码 | 错误描述 | 解决方案 |
|---|---|---|
| INVALID_PARAMETER | 参数有误 | 检查必填参数是否为空,长度是否超限 |
| APP_INFO_NOT_EXIST | 应用信息不存在 | 请检查 sdk 中配置的应用 appId 是否正确 |
| NOT_ISV_APP_TYPE | 不是第三方应用类型,不允许进行代理调用 | 请检查应用类型是否是第三方应用,非第三方应用不允许进行代商户操作调用 |
| MERCHANT_IS_NOT_EXIST | 商家支付宝账号不存在 | 请确认商家支付宝账号存在、正确且有效 |
| MERCHANT_NOT_ACTIVED | 商家支付宝账号未激活 | 请确认商家支付宝账号存在、正确且有效 |
| MERCHANT_CAN_NOT_LOGON | 商家支付宝账号被限制登录 | 请确认商家支付宝账号存在、正确且有效 |
| MERCHANT_NOT_ENABLED | 商家支付宝账号被冻结或已注销 | 请确认商家支付宝账号存在、正确且有效 |
| MERCHANT_NOT_CERTIFIED | 商家支付宝账号未实名认证 | 请确认商家支付宝账号存在、正确且有效 |
| INVALID_CONTACT_NAME | 联系人名称参数非法 | 请填写正确的商户联系人姓名,最大长度20个字符 |
| INVALID_CONTACT_MOBILE | 联系人手机参数非法 | 请填写正确的11位手机号码 |
| INVALID_CONTACT_EMAIL | 联系人邮箱参数非法 | 请填写正确的邮箱 |
| SYSTEM_ERROR | 系统繁忙 | 系统内部错误,请稍后重试 |
| INVALID_PARAMETER | 参数有误 | 非法请求参数,请检查入参 |