文档中心 > 花呗预授权

统一下单并支付(alipay.acquire.createandpay)

更新时间:2016/05/19 访问次数:8756

请求地址

环境 HTTPS网关
正式环境 https://mapi.alipay.com/gateway.do

请求参数

参数 参数名称 类型(字节长度) 参数说明 是否为空 样例
基本参数
service 接口名称 String 接口名称。 不可空 alipay.acquire.createandpay
partner 合作者身份ID String(16) 签约的支付宝账号对应的支付宝唯一用户号。以 2088 开头的 16 位纯数字组成。 不可空 2088101106499364
_input_charset 参数编码字符集 String 商户网站使用的编码格式,如 utf-8、gbk、gb2312 等。 不可空 utf-8
sign_type 签名方式 String RSA或MD5,必须大写。 不可空 MD5
sign 签名 String 请参见 签名机制 不可空 85bf83f78d5cefb804bd805532fc688e
notify_url 服务器异步通知页面路径 String(190) 支付宝服务器主动通知商户网站里指定的页面 http 路径。 可空 http://api.test.alipay.net/atinterface/receive_notify.htm
alipay_ca_request 签名类型 String 签名类型
1:证书签名
2:其他密钥签名
如果为空,默认为 2。
可空 2
业务参数
out_trade_no 商户网站唯一订单号 String(64) 支付宝合作商户网站唯一订单号。 不可空 4652151518967003
subject 订单标题 String(256) 商品的标题/交易标题/订单标题/订单关键字等。该参数最长为 128 个汉字。 不可空 声波支付-分账-sky
product_code 订单业务类型 String(32) 用来区分是哪种业务类型的下单,目前支持:
BARCODE_PAY_OFFLINE:条码支付
SOUNDWAVE_PAY_OFFLINE:声波支付
MEMBER_CARD_QR_OFFLINE:会员卡支付
FUND_TRADE_FAST_PAY:预授权产品
FINGERPRINT_FAST_PAY:指纹支付
不可空 BARCODE_PAY_OFFLINE
total_fee 订单金额 number(9,2) 该笔订单的资金总额,取值范围[0.01,100000000],精确到小数点后 2 位。 不可空 0.01
seller_id 卖家支付宝用户号 String(28) 卖家支付宝账号对应的支付宝唯一用户号。以 2088 开头的纯 16 位数字。如果和 seller_email 同时为空,则本参数默认填充partner 的值。 可空 2088101106499364
seller_email 卖家支付宝账号 String(100) 卖家支付宝账号,可以为email 或者手机号。如果 seller_id 不为空,则以seller_id 的值作为卖家账号,忽略本参数。 可空 test@alitest.com
buyer_id 买家支付宝用户号 String(28) 买家支付宝账号对应的支付宝唯一用户号。以 2088 开头的纯 16 位数字。buyer_id 和 dynamic_id 不可同时为空。 可空 2088101568338364
buyer_email 买家支付宝账号 String(100) 买家支付宝账号,可以为email 或者手机号。 可空 test11@alitest.com
operator_type 操作员类型 String(1) 操作员的类型:
0:支付宝操作员
1:商户的操作员
如果传入其它值或者为空,则默认设置为 1。
可空 1
operator_id 操作员号 String(28) 卖家的操作员 ID。 可空 55
body 订单描述 String(400) 对一笔交易的具体描述信息。如果是多种商品,请将商品描述字符串累加传给body。 可空 iphone 手机
show_url 商品展示网址 String(400) 收银台页面上,商品展示的超链接。 可空 http://www.taobao.com/product/113714.html
currency 订单金额币种 String(10) 订单金额币种。目前只支持传入 156(人民币)。如果为空,则默认设置为156。 可空 156
price 商品单价 number(9,2) 订单中商品的单价。如果请求时传入本参数,则必须满足 total_fee=price×quantity 的条件。 可空 1
quantity 商品数量 String(100) 订单中商品的数量。如果请求时传入本参数,则必须满足 total_fee=price×quantity 的条件。 可空 10
goods_detail 商品明细 String 描述商品明细信息,json格式,具体请参见“4.3 商品明细说明”。最大允许传递商品信息条数为 50 条。 可空 [{"goodsId":"apple-01","goodsName":"ipad","goodsCategory":"7788230","price":"2000.00","quantity":"1"}]
extend_params 公用业务扩展信息 String(128) 用于商户的特定业务信息的传递,只有商户与支付宝约定了传递此参数且约定了参数含义,此参数才有效。比如可传递声波支付场景下的门店ID等信息,以json格式传输,具体请参见“4.7 业务扩展参数说明”。 可空 {"TERMINAL_ID":"BJ_001","AGENT_ID":"A80001","STORE_ID":"BJ_ZZ_001","STORE_TYPE":"0","SHOP_ID":"only"}
it_b_pay 订单支付超时时间 String(200) 设置未付款交易的超时时间,一旦超时,该笔交易就会自动被关闭。取值范围:1m~15d。m-分钟,h-小时,d-天,1c-当天(无论交易何时创建,都在 0 点关闭)。该参数数值不接受小数点,如 1.5h,可转换为 90m。该功能需要联系支付宝配置关闭时间。 可空 1d
royalty_type 分账类型 String(150) 卖家的分账类型,目前只支持传入 ROYALTY(普通分账类型)。商户需要进行分账时,该参数不可空。 可空 ROYALTY
royalty_parameters 分账信息 String(2000) 描述分账明细信息,json格式,具体请参见“4.4 分账明细说明”。 可空 [{"serialNo":"1","transOut":"2088101126765726","transIn":"2088101126708402","amount":"0.10","desc":"分账测试1"},{"serialNo":"2","transOut":"2088101126765726","transIn":"2088101126707869","amount":"0.10","desc":"分账测试 2"}]
channel_parameters 渠道参数 String(256) 描述多渠道收单的渠道明细信息,json格式,具体请参见“4.5 渠道明细说明”。 可空 [{"equipment_no":"E001","termId":"12233","termType":"pos","termOsType":"ios","clientVersion":"2.1","payeeEquipmentNo":"F001","payeeTermId":"X001","payeeTermType":"phone","payeeTermOsType":"ios","payeeClientVersion":"2.0"}]
dynamic_id_type 动态 ID 类型 String(32) 当动态 ID 不为空时必填。wave_code:声波bar_code:条码 可空 bar_code
dynamic_id 动态 ID String(32) buyer_id 和 dynamic_id 不可同时为空。 可空 kff3hjwqzxrbvrrkd0
ref_ids 关联 ID 集合 String(256) 业务关联ID集合,用于放置商户的订单号、支付流水号等信息,json格式,具体请参见“4.6 业务关联ID集合说明”。 可空 [{"id_type":"orig_out_request_no","id":"HZ0001"},{"id_type":"orig_out_order_no","id":"HZ0001"}]
mcard_parameters 预付卡相关参数 String(256) 描述预付卡相关的明细信息,json格式,具体请参见“4.8 预付卡明细参数说明”。 可空 {"mcard_issuer_id":"2088101126765726"}
auth_no 授权号 String(32) 用于解冻资金的授权号。当 product_code 为FUND_TRADE_FAST_PAY时不可空,否则必须为空。 可空 2014032400002001210000000972
promo_params 优惠参数 String(256) 描述优惠明细信息,json格式,具体请参见 优惠明细参数说明 可空 {“camp_flag”:”2013041301”}
passback_parameters 业务透传参数 String(256) 如果商户请求时传递了该参数,则异步通知中会回传给商户(参数名为extra_common_param)。 可空 你好,这是测试商户的广告。
agreement_info 协议信息 String(256) 用于传递用户和支付宝的协议相关信息,json格式,具体请参见 协议信息参数说明  可空 {"agreement_no":"20141107000377985008"}

商品明细参数

参数 参数名称 类型(字节长度) 参数说明 是否为空 样例
goodsId 商品编号 String 商品的编号。 不可空 apple-01
goodsName 商品名称 String 商品名称。 不可空 ipad
goodsCategory 商品类目 String 商品类目。 可空 34543238
showUrl 商品展示网址 String 收银台页面上,商品展示的超链接。 可空 http://www.taobao.com
quantity 商品数量 String 商品数量。 不可空 1
body 商品描述 String 商品描述信息。 可空 特价手机
price 商品单价 String 商品单价。 不可空 2000

商品明细示例

业务需求:商品编号 apple-01,商品名称 ipad,商品类目 7788230,数量 1个,价格 2000 元
参数赋值:goods_detail=[{"goodsId":"apple-01","goodsName":"ipad","goodsCategory":"7788230","price":"2000.00","quantity":"1"}]

分账明细参数

参数 参数名称 类型(字节长度) 参数说明 是否可为空 样例
serialNo 分账序列号 String 分账序列号,表示分账执行的顺序,必须为正整数。 不可空 1
outRelationId 分账关联号 String 商户分账的外部关联号,用于关联到每一笔分账信息,商户需保证其唯一性。如果为空,该值则默认为“商户网站唯一订单号+分账序列号”。 可空 20131124001
transOutType 转出账号类型 String 要分账的账户类型。目前只支持 userId:支付宝账号对应的支付宝唯一用户号。默认值为 userId。 可空 userId
transOut 出账支付宝用户号 String 如果转出账号类型为 userId,本参数为要分账的支付宝账号对应的支付宝唯一用户号。以2088 开头的纯 16 位数字。 不可空 2088101126765726
transInType 转入账号类型 String 接受分账金额的账户类型:userId:支付宝账号对应的支付宝唯一用户号。bankIndex:分账到银行账户的银行编号。目前暂时只支持分账到一个银行编号。默认值为 userId。 可空 userId
transIn 入账账号 String 如果转入账号类型为userId,本参数为接受分账金额的支付宝账号对应的支付宝唯一用户号。以2088 开头的纯 16 位数字。如果转入账号类型为bankIndex,本参数为 28位的银行编号(商户和支付宝签约时确定)。 不可空 2088101126708402
batchNo 分账批次号 String 12 位分账批次号。目前需要和转入账号类型为bankIndex 配合使用。 可空 123
amount 分账金额 String 分账的金额。 不可空 0.10
desc 分账描述 String 分账描述信息。 可空 分账测试 1

分账明细示例

业务需求:按顺序执行 2 笔分账
参数赋值:royalty_parameters=[{"serialNo":"1","transOut":"2088101126765726","tran sIn":"2088101126708402","amount":"0.10","desc":" 分 账 测 试 1"},{"serialNo":"2","transOut":"2088101126765726","transIn":"2088101126707869","amount":"0.10","desc":"分账测试 2"}]

XML同步返回参数

参数 参数名称 类型(长度范围) 参数说明 是否可为空 样例
基本参数
is_success 请求是否成功 String 请求是否成功。请求成功不代表业务处理成功。T 代表成功F 代表失败 不可空 T
sign_type 签名方式 String DSA、RSA、MD5 三个值可选,必须大写。 可空 MD5
sign 签名 String 请参见“8 签名机制”。 可空 97ef60dd5015aa311058fcaf2d2ac8e3
error 错误代码 String 请求成功时,不存在本参数;请求失败时,本参数为错误代码,参见“10.3 接入错误码”和“10.4 系统错误码”。 可空 ILLEGAL_SIGN
业务参数
result_code 响应码 String(32) 下单并支付处理结果响应码,请参见“10.1 业务响应码”。 不可空 ORDER_SUCCESS_PAY_SUCCESS
trade_no 支付宝交易号 String(64) 该交易在支付宝系统中的交易流水号。最短 16 位,最长 64 位。 可空 2013112311001004940000384027
out_trade_no 商户网站唯一订单号 String(64) 对应商户网站的订单系统中的唯一订单号,非支付宝交易号。需保证在商户网站中的唯一性。是请求时对应的参数,原样返回。 可空 7085502131376415
buyer_user_id 买家支付宝用户号 String(30) 买家支付宝账号对应的支付宝唯一用户号。以 2088 开头的纯 16 位数字。 可空 2088102105236945
buyer_logon_id 买家支付宝账号 String(100) 买家支付宝账号,可以为email 或者手机号。对部分信息进行了隐藏。 可空 138****0011
total_fee 交易金额 Number 该笔订单的总金额。请求时对应的参数,原样返回。 可空 10.00
gmt_payment 交易付款时间 Date 该笔交易的买家付款时间。格式为 yyyy-MM-ddHH:mm:ss。 可空 2013-11-27 15:45:57
detail_error_code 详细错误码 String(48) 对返回响应码进行原因说明,请参见“10.2 业务错误码”。当 result_code 响应码为ORDER_SUCCESS_PAY_SUCCESS 时,不返回该参数。 可空 TRADE_BUYER_NOT_MATCH
detail_error_des 详细错误描述 String(64) 对详细错误码进行文字说明。当result_code响应码为ORDER_SUCCESS_PAY_SUCCESS时,不返回该参数。 可空 交易买家不匹配
extend_info 返回扩展信息 String(256) 支付后返回的其他信息,如预付卡金额,key值mcard_fee,以Json格式返回。 可空 [{"mcard_fee":"10.35"}]
fund_bill_list 本次交易支付单据信息集合 List 本次交易使用的支付渠道信息,xml格式,可包含多个渠道信息子节点 ,该节点包含的参数请参见“5.3 支付单据信息说明”。如需返回支付单据信息集合,商户和支付宝签约时需约定返回,默认不返回。 可空 参见“5.3 支付单据信息说明”

同步返回示例

  • 业务正常受理并下单成功:

    <?xml version="1.0" encoding="utf-8"?>
    <alipay>
    <is_success>T</is_success>
    <request>
    	<param name="body">声波支付-分账-sky</param>
    	<param name="operator_id">55</param>
    	<param name="subject">声波支付-分账-sky</param>
    	<param name="sign_type">MD5</param>
    	<param name="out_trade_no">7085502131376415</param>
    	<param name="dynamic_id">kfylrwezsbeqhh553e</param>
    	<param name="royalty_parameters">
    		[{"serialNo":"1","transOut":"2088101126765726","transIn":"208810112670840
    		2","amount":"1.00","desc":"分账测试 1"}]
    	</param>
    	<param name="royalty_type">ROYALTY</param>
    	<param name="total_fee">10</param>
    	<param name="partner">2088101106499364</param>
    	<param name="quantity">10</param>
    	<param name="dynamic_id_type">wave_code</param>
    	<param name="alipay_ca_request">2</param>
    	<param name="sign">a1cb41a4019351965d4418c9cb933f0f</param>
    	<param name="_input_charset">UTF-8</param>
    	<param name="price">1</param>
    	<param name="it_b_pay">1d</param>
    	<param name="product_code">SOUNDWAVE_PAY_OFFLINE</param>
    	<param name="service">alipay.acquire.createandpay</param>
    	<param name="seller_id">2088101106499364</param>
    </request>
    <response>
    	<alipay>
    		<buyer_logon_id>138****0011</buyer_logon_id>
    		<buyer_user_id>2088102105236945</buyer_user_id>
    		<out_trade_no>7085502131376415</out_trade_no>
    		<result_code>ORDER_SUCCESS_PAY_SUCCESS</result_code>
    		<trade_no>2013112311001004940000384027</trade_no>
    	</alipay>
    </response>
    <sign>ea489fc31da63253bab52ed77fb45eb7</sign>
    <sign_type>MD5</sign_type>
    </alipay>
  • 请求成功,业务处理失败:

    <?xml version="1.0" encoding="utf-8"?>
    <alipay>
    <is_success>T</is_success>
    <request>
    	<param name="body">声波支付-分账-sky</param>
    	<param name="operator_id">55</param>
    	<param name="subject">声波支付-分账-sky</param>
    	<param name="sign_type">MD5</param>
    	<param name="out_trade_no">7085502131376415</param>
    	<param name="dynamic_id">kfylrwezsbeqhh553e</param>
    	<param name="royalty_parameters">
    		[{"serialNo":"1","transOut":"2088101126765726","transIn":"208810112670840
    		2", "amount":"1.00", "desc":"分账测试 1"}]
    	</param>
    	<param name="royalty_type">ROYALTY</param>
    	<param name="total_fee">10</param>
    	<param name="partner">2088101106499364</param>
    	<param name="quantity">10</param>
    	<param name="dynamic_id_type">wave_code</param>
    	<param name="alipay_ca_request">2</param>
    	<param name="sign">a1cb41a4019351965d4418c9cb933f0f</param>
    	<param name="_input_charset">UTF-8</param>
    	<param name="price">1</param>
    	<param name="it_b_pay">1d</param>
    	<param name="product_code">SOUNDWAVE_PAY_OFFLINE</param>
    	<param name="service">alipay.acquire.createandpay</param>
    	<param name="seller_id">2088101106499364</param>
    </request>
    <response>
    	<alipay>
    		<result_code>ORDER_FAIL</result_code>
    		<detail_error_code>TRADE_BUYER_NOT_MATCH</detail_error_code>
    		<detail_error_des>交易买家不匹配</detail_error_des>
    		<trade_no>2013112311001004940000384027</trade_no>
    	</alipay>
    </response>
    <sign>ea489fc31da63253bab52ed77fb45eb7</sign>
    <sign_type>MD5</sign_type>
    </alipay>
  • 请求失败或者接入数据错误时输出:

    <?xml version="1.0" encoding="utf-8"?>
    <alipay>
    <is_success>F</is_success>
    <error>ILLEGAL_SIGN</error>
    </alipay>

    异步通知参数


    参数 参数名称 类型(字节长度) 参数说明 是否可为空 样例
    基本参数
    notify_time 通知时间 Date 通知的发送时间。格式为 yyyy-MM-ddHH:mm:ss。 不可空 2013-11-27 15:45:58
    notify_type 通知类型 String 通知的类型。 不可空 trade_status_sync
    notify_id 通知校验ID String 通知校验 ID。 不可空 ac05099524730693a8b330c5ecf72da978
    sign_type 签名方式 String DSA、RSA、MD5 三个值可选,必须大写。 不可空 MD5
    sign 签名 String 请参见“8 签名机制”。 不可空 601510b7970e52cc63db0f44997cf70e
    notify_action_type 通知动作类型 String 通知动作类型:创建:createDirectPayTradeByBuyerAction支付:payByAccountAction退款:refundFPAction撤销:reverseAction关闭:closeTradeAction交易完成:finishFPAction 可空 payByAccountAction
    业务参数
    out_trade_no 商户网站唯一订单号 String(64) 对应商户网站的订单系统中的唯一订单号,非支付宝交易号。需保证在商户网站中的唯一性。是请求时对应的参数,原样返回。 可空 5431395578198135
    subject 订单标题 String(256) 商品的标题/交易标题/订单标题/订单关键字等。它在支付宝的交易明细中排在第一列,对于财务对账尤为重要。是请求时对应的参数,原样通知回来。 可空 声波支付-分账-sky
    trade_no 支付宝交易号 String(64) 该交易在支付宝系统中的交易流水号。最短 16 位,最长 64 位。 可空 2013112711001004940000394507
    trade_status 交易状态 String 交易目前所处的状态,取值范围请参见“10.5 交易状态”。 可空 WAIT_BUYER_PAY
    gmt_create 交易创建时间 Date 该笔交易创建的时间。格式为 yyyy-MM-ddHH:mm:ss。 可空 2013-11-27 15:45:57
    gmt_payment 交易付款时间 Date 该笔交易的买家付款时间。格式为 yyyy-MM-ddHH:mm:ss。 可空 2013-11-27 15:45:57
    seller_email 卖家支付宝账号 String(100) 卖家支付宝账号,可以是email 和手机号码。 可空 zhuzhanghu@alitest.com
    buyer_email 买家支付宝账号 String(100) 买家支付宝账号,可以是Email 或手机号码。 可空 13882390011
    seller_id 卖家支付宝用户号 String(30) 卖家支付宝账号对应的支付宝唯一用户号。以 2088 开头的纯 16 位数字。 可空 2088101106499364
    buyer_id 买家支付宝用户号 String(30) 买家支付宝账号对应的支付宝唯一用户号。以 2088 开头的纯 16 位数字。 可空 2088102105236945
    price 商品单价 Number 对应请求时的 price 参数,原样通知回来。 可空 1.00
    quantity 购买数量 Number 对应请求时的 quantity 参数,原样通知回来。 可空 10
    total_fee 交易金额 Number 该笔订单的总金额。请求时对应的参数,原样通知回来。 可空 10.00
    body 商品描述 String(400) 该笔订单的备注、描述、明细等。对应请求时的 body 参数,原样通知回来。 可空 Hello
    refund_fee 退款金额 Number 退款通知中,返回退款金额,单位为元。 可空 1.00
    out_biz_no 商户业务号 String(64) 商户业务 ID,主要是退款通知中返回退款申请的流水号。 可空 HZRF001
    paytools_pay_amount 支付金额信息 String(512) 支付成功的各个渠道金额信息,具体请参见“6.3 支付金额信息说明”。 可空 [{"MCARD":"7.94"},{"TMPOINT":"1.69"},{"BANKCARD":"5.55"}]
    extra_common_param 业务透传参数 String(256) 原样返回商户请求下单时的passback_parameters 参数。 可空 你好,这是测试商户的广告。

    异步通知返回示例

    http://商户自定义地址/alipay/notify_url.php?notify_id=ac05099524730693a8b330c5ecf72da978&seller_email=zhuzhanghu%40alitest.com&notify_type=trade_status_sync&buyer_email=13882390011&sign=601510b7970e52cc63db0f44997cf70e&trade_no=2013112711001004940000394507&buyer_id=2088102105236945&quantity=10&total_fee=10.00&price=1.00&gmt_create=2013-11-27+15%3A45%3A57&out_trade_no=5431395578198135&seller_id=2088101106499364&notify_time=2013-11-27+15%3A45%3A58&subject=%E5%A3%B0%E6%B3%A2%E6%94%AF%E4%BB%98-%E5%88%86%E8%B4%A6-sky&trade_status=WAIT_BUYER_PAY&sign_type=MD5

FAQ

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