文档中心 > 商家签约服务

第一步:创建应用

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

第二步:配置密钥

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

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

1.下载服务端sdk

开发语言 资源下载 环境要求
JAVA版资源 SDK1.5 适用于Java语言、jdk版本1.5及以上的开发环境
  SDK1.4 适用于Java语言、jdk版本1.4及以下的开发环境
.NET版资源 SDK 适用于Visual studio 2010及以上版本、Framework3.5及以上版本的开发环境
PHP版资源 SDK 适用于php全系列开发环境

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

2.接口调用配置

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

AlipayClient alipayClient = new DefaultAlipayClient(https://openapi.alipay.com/gateway.do,APP_ID,APP_PRIVATE_KEY,FORMAT,CHARSET,APP_PUBLIC_KEY);

关键参数说明:

配置参数 示例值解释 获取方式/示例值
URL 支付宝网关(固定) https://openapi.alipay.com/gateway.do
APPID APPID 即创建应用后生成 获取见上面创建应用
FORMAT 参数返回格式,只支持json json(固定)
APP_PRIVATE_KEY 开发者私钥,由开发者自己生成 获取详见上面配置密钥
CHARSET 编码集,支持GBK/UTF-8 开发者根据实际工程编码配置
ALIPAY_PUBLIC_KEY 支付宝公钥,由支付宝生成 获取详见上面配置密钥

第四步:调用接口示例

商户签约包含以下接口:

接口英文名称

接口中文

接口描述

ant.merchant.expand.image.upload

专用图片资料上传接口

供开发者上传提交入驻申请所需要的图片

ant.merchant.expand.enterprise.apply

企业级商户入驻申请接口

开发者通过该接口帮助企业级商户入驻支付宝

ant.merchant.expand.personal.apply

个体工商户入驻申请接口

开发者通过该接口帮助个体工商户入驻支付宝

ant.merchant.expand.mapplyorder.query

入驻申请单查询接口

查询已提交的商户入驻申请单

接口调用示例大致分为3步:

  1. 拼装业务参数
  2. 将参数发送给开放平台服务端
  3. 获取开放平台服务端返回值,并进行具体业务处理

开发者代理企业级商户入驻签约

场景介绍

开发者通过商家签约接口完成代理企业级商家的签约入驻。

调用流程

接口调用时序图:

1. 上传证件等所需要的图片(ant.merchant.expand.image.upload)

首先我们通过专用图片上传接口上传入驻申请所需要的图片。

AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json","GBK",ALIPAY_PUBLIC_KEY);
AntMerchantExpandImageUploadRequest request = new AntMerchantExpandImageUploadRequest();
   request.setImageType("jpg");
   FileItem ImageContent = new FileItem("C:\\2bECW.jpg");
request.setImageContent(ImageContent);
return alipayClient.execute(request);
//处理接口返回消息alipayResponse
TIPS:如果创建成功 alipayResponse.getCode() 可以获取结果码10000,结果码和错误码请参考本文 结果码说明章节。alipayResponse.getImageId() 可以获取图片ID,后面会用到。

2. 企业级商户入驻(ant.merchant.expand.enterprise.apply

图片上传完毕后,我们通过企业级商户入驻申请接口完成入驻申请,入驻申请单主要由企业法人信息、企业营业执照信息、企业基本信息、企业银行账户信息等组成,为了演示简单,我们仅用必要的配置来创建入驻申请单,如需了解更详细的入驻申请配置说明,可参阅API接口列表。

AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json","GBK",ALIPAY_PUBLIC_KEY);
AntMerchantExpandEnterpriseApplyRequest request = new AntMerchantExpandEnterpriseApplyRequest();
request.setBizContent("{" +
"    \"login_id\":\"sample@gmail.com\"," +
"    \"out_biz_no\":\"321234\"," +
"    \"base_info\":{" +
"        \"special_license_pic\":[" +
"          \"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"" +
"        ]," +
"      \"logo_pic\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"," +
"        \"web_address\":[" +
"          \"http://www.alibaba.com\"" +
"        ]," +
"      \"web_auth_pic\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"," +
"      \"mcc_code\":\" A_A01_4111\"," +
"        \"contact_info\":[{" +
"                    \"contact_name\":\"张三\"," +
"          \"contact_position\":\"科长\"," +
"          \"contact_mobile\":\"13110101010\"," +
"          \"contact_email\":\"sample@mail.com\"" +
"          }]" +
"    }," +
"    \"business_license_info\":{" +
"      \"company_name\":\"包子铺\"," +
"      \"company_address\":\"东大名路1号\"," +
"      \"business_license_no\":\"1532501100006302\"," +
"      \"business_license_indate\":\"2018-01-01\"," +
"      \"business_license_pic\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"," +
"      \"business_scope\":\"餐饮\"," +
"      \"business_license_province\":\"330000\"," +
"      \"business_license_city\":\"330100\"," +
"      \"business_license_is_three_in_one\":true," +
"      \"org_code_certificate_no\":\"32145431\"," +
"      \"org_code_certificate_pic\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"," +
"      \"business_license_auth_pic\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"" +
"    }," +
"    \"legal_representative_info\":{" +
"      \"legal_representative_name\":\"张三\"," +
"      \"legal_representative_cert_type\":\"RESIDENT\"," +
"      \"legal_representative_cert_no\":\"310101199111111234\"," +
"      \"legal_representative_cert_indate\":\"2020-02-02\"," +
"      \"legal_representative_cert_pic_front\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"," +
"      \"legal_representative_cert_pic_back\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"" +
"    }," +
"    \"business_bank_account_info\":{" +
"      \"business_bank_card_no\":\"622633212377732\"," +
"      \"business_bank_account_name\":\"科技有限公司\"," +
"      \"business_bank_sub\":\"招商银行上海分行外滩支行\"," +
"      \"business_bank_province\":\"330000\"," +
"      \"business_bank_city\":\"330100\"," +
"      \"business_bank_name\":\"招商银行\"" +
"    }," +
"    \"shop_info\":{" +
"      \"shop_name\":\"文三路店\"," +
"      \"shop_sign_board_pic\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"," +
"        \"shop_sence_pic\":[" +
"          \"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"" +
"        ]" +
"    }" +
"  }");
 AntMerchantExpandEnterpriseApplyResponse response = alipayClient.execute(request);

//处理接口返回消息alipayResponse

关键出参:

参数名称

参数说明

order_no

支付宝端商户入驻申请单据号

out_biz_no

请求时传入的开发者自己的请求单据号

注意: 

1、此处bizContent中的logo_pic、法人证件照等图片参数,需要使用图片资源ID,可以通过“专用图片资料上传接口”上传图片资料并得到图片资源ID。

2、外部入驻申请单据号out_biz_no在任何情况下不可重复,即使对于失败或超时的单据,外部入驻申请单据号也可能已经被使用了,如需再次发起入驻申请,必须使用新的外部入驻申请单据号调用接口。如使用相同的外部入驻申请单据号调用接口且请求参数中的任意参数与已有入驻申请单不一致则会报CONTEXT_INCONSISTENT(入驻单信息被篡改)错误,如请求参数与已提交入驻申请单全部一致则返回上一次提交生成的支付宝端商户入驻申请单据号order_no。

3、此接口请求参数预校验失败后会返回预校验失败详情,具体可参考进阶篇章的预校验详解。

4、此接口只同步返回入驻申请单据号代表申请成功,提交申请成功后会异步进行人工认证审核和签约审核,审核结果会通过异步通知的方式通知开发者,通过邮件或短信的形式通知商户。详情可参考进阶篇章中的异步通知

3. 查看商户入驻申请单(ant.merchant.expand.mapplyorder.query

商户入驻申请单创建完成后,可以通过商户入驻申请单据号来查询入驻申请单信息。

AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json","GBK",ALIPAY_PUBLIC_KEY);
AntMerchantExpandMapplyorderQueryRequest request = new AntMerchantExpandMapplyorderQueryRequest();
request.setBizContent("{" +
"    \"order_no\":\"2132933\"" +
"  }");
AntMerchantExpandMapplyorderQueryResponse response = alipayClient.execute(request);
 //处理接口返回消息alipayResponse
TIPS:1、开发者可以通过两种方法处理返回结果,一个通过alipayResponse.getBody()方法获取营销活动信息JSON串进行处理,一个是通过alipayResponse.get方法获取SDK封装好的各个对象进行处理。要了解返回活动信息结构可以参考API列表。2、返回结果详情可参考进阶篇章的 入驻申请单查询接口返回结果详解。 

开发者代理个体工商户签约

场景介绍

开发者通过商户签约接口完成代理个体工商户的签约入驻。

调用流程

接口调用时序图:

个体工商户入驻(ant.merchant.expand.personal.apply

先通过专用图片资料上传接口上传申请时所需要的图片,图片上传完毕后,我们通过个体工商户入驻申请接口完成入驻申请,入驻申请单主要由法人信息、营业执照信息、企业基本信息、个体银行账户信息等组成,为了演示简单,我们仅用必要的配置来创建入驻申请单,如需了解更详细的入驻申请配置说明,可参阅API接口列表。

AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",APP_ID,APP_PRIVATE_KEY,"json","GBK",ALIPAY_PUBLIC_KEY);
request.setBizContent("{" +
"    \"login_id\":\"13110101010\"," +
"    \"out_biz_no\":\"2016070788301823878\"," +
"    \"base_info\":{" +
"        \"special_license_pic\":[" +
"          \"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"" +
"        ]," +
"      \"logo_pic\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"," +
"        \"web_address\":[" +
"          \"http://www.alibaba.com\"" +
"        ]," +
"      \"web_auth_pic\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"," +
"      \"mcc_code\":\" A_A01_4111\"," +
"        \"contact_info\":[{" +
"                    \"contact_name\":\"张三\"," +
"          \"contact_position\":\"科长\"," +
"          \"contact_mobile\":\"13110101010\"," +
"          \"contact_email\":\"sample@mail.com\"" +
"          }]" +
"    }," +
"    \"business_license_info\":{" +
"      \"company_name\":\"包子铺\"," +
"      \"company_address\":\"东大名路1号\"," +
"      \"business_license_no\":\"1532501100006302\"," +
"      \"business_license_indate\":\"2018-01-01\"," +
"      \"business_license_pic\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"," +
"      \"business_scope\":\"餐饮\"," +
"      \"business_license_province\":\"330000\"," +
"      \"business_license_city\":\"330100\"," +
"      \"business_license_is_three_in_one\":true," +
"      \"org_code_certificate_no\":\"32145431\"," +
"      \"org_code_certificate_pic\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"," +
"      \"business_license_auth_pic\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"" +
"    }," +
"    \"operator_info\":{" +
"      \"operator_name\":\"个体工商户经营者姓名\"," +
"      \"operator_cert_type\":\"RESIDENT\"," +
"      \"operator_cert_no\":\"310100198901012222\"," +
"      \"operator_cert_indate\":\"2018-01-01\"," +
"      \"operator_cert_pic_front\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"," +
"      \"operator_cert_pic_back\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"" +
"    }," +
"    \"personal_bank_account_info\":{" +
"      \"personal_bank_card_no\":\"6322619237198273\"," +
"      \"personal_bank_account_mobile\":\"16110101010\"," +
"      \"personal_bank_holder_name\":\"张三\"," +
"      \"personal_bank_holder_certno\":\"310101193301333333\"" +
"    }," +
"    \"shop_info\":{" +
"      \"shop_name\":\"文三路店\"," +
"      \"shop_sign_board_pic\":\"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"," +
"        \"shop_sence_pic\":[" +
"          \"T1hDhXXcdxXXagOFbX?t=jpg&xsig=cc6972c371de09b5bc4c024d24fcd2e9\"" +
"        ]" +
"    }" +
"  }");
AntMerchantExpandPersonalApplyResponse response = alipayClient.execute(request);

//处理接口返回消息alipayResponse

注意: 

1、此处bizContent中的logo_pic、法人证件照等图片参数,需要使用图片资源ID,可以通过“专用图片资料上传接口”上传图片资料并得到图片资源ID。

2、外部入驻申请单据号out_biz_no在任何情况下不可重复,即使对于失败或超时的单据,外部入驻申请单据号也可能已经被使用了,如需再次发起入驻申请,必须使用新的外部入驻申请单据号调用接口。如使用相同的外部入驻申请单据号调用接口且请求参数中的任意参数与已有入驻申请单不一致则会报CONTEXT_INCONSISTENT(入驻单信息被篡改)错误,如请求参数与已提交入驻申请单全部一致则返回上一次提交生成的支付宝端商户入驻申请单据号order_no。

3、此接口请求参数预校验失败后会返回预校验失败详情,具体可参考进阶篇章的入驻接口参数预校验

4、此接口只同步返回入驻申请单据号代表申请成功,提交申请成功后会异步进行人工认证审核和签约审核,审核结果会通过异步通知的方式通知开发者,通过邮件或短信的形式通知商户。详情可参考进阶篇章中的异步通知。 

图片资源上传、查询接口参见开发者代理企业级商户入驻签约的示例

接口调用结果码说明

获取接口处理结果代码示例:

System.out.println(alipayResponse.getCode()); // 获取接口结果码
System.out.println(alipayResponse.getSubCode()); // 当接口调用失败后,获取子错误码
System.out.println(alipayResponse.getMsg()); // 获取子错误描述
System.out.println(alipayResponse.getBody()); // 获取完整的返回报文
同步返回结果码 含义 说明

10000

业务处理成功  
40001~40006 业务处理失败 具体失败原因请参考公共错误码。其它请参考API文档。
20000 业务出现未知错误或者系统异常 业务出现未知错误或者系统异常(请一定要在确定本次调用结果后,再发起重试)。

FAQ

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