alipay.trade.wap.pay (手机网站支付接口2.0)

外部商户创建订单并支付

公共参数

请求地址:
环境 HTTPS请求地址
正式环境 https://openapi.alipay.com/gateway.do
公共请求参数:
参数 类型 是否必填 最大长度 描述 示例值
app_id String 32 支付宝分配给开发者的应用ID 2014072300007148
method String 128 接口名称 alipay.trade.wap.pay
format String 40 仅支持JSON JSON
return_url String 256 HTTP/HTTPS开头字符串 https://m.alipay.com/Gk8NF23
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
notify_url String 256 支付宝服务器主动通知商户服务器里指定的页面http/https路径。 http://api.test.alipay.net/atinterface/receive_notify.htm
biz_content String - 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档

请求参数

参数 类型 是否必填 最大长度 描述 示例值
body String 可选 128 Iphone6 16G 对一笔交易的具体描述信息。如果是多种商品,请将商品描述字符串累加传给body。
subject String 必须 256 商品的标题/交易标题/订单标题/订单关键字等。 大乐透
out_trade_no String 必须 64 商户网站唯一订单号 70501111111S001111119
timeout_express String 可选 6 该笔订单允许的最晚付款时间,逾期将关闭交易。取值范围:1m~15d。m-分钟,h-小时,d-天,1c-当天(1c-当天的情况下,无论交易何时创建,都在0点关闭)。 该参数数值不接受小数点, 如 1.5h,可转换为 90m。 90m
time_expire String 可选 32 绝对超时时间,格式为yyyy-MM-dd HH:mm。 2016-12-31 10:05
total_amount Price 必须 9 订单总金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000] 9.00
seller_id String 必须 28 收款支付宝用户ID。 如果该值为空,则默认为商户签约账号对应的支付宝用户ID 2088102147948060
auth_token String 可选 40 针对用户授权接口,获取用户相关数据时,用于标识用户授权关系 appopenBb64d181d0146481ab6a762c00714cC27
goods_type String 可选 2 商品主类型 :0-虚拟类商品,1-实物类商品 0
passback_params String 可选 512 公用回传参数,如果请求时传递了该参数,则返回给商户时会回传该参数。支付宝只会在同步返回(包括跳转回商户网站)和异步通知时将该参数原样返回。本参数必须进行UrlEncode之后才可以发送给支付宝。 merchantBizType%3d3C%26merchantBizNo%3d2016010101111
quit_url String 必须 400 用户付款中途退出返回商户网站的地址 http://www.taobao.com/product/113714.html
product_code String 必须 64 销售产品码,商家和支付宝签约的产品码 QUICK_WAP_PAY
promo_params String 可选 512 优惠参数
注:仅与支付宝协商后可用
{"storeIdType":"1"}
royalty_info RoyaltyInfo 可选 - 描述分账信息,Json格式,详见分账参数说明
  • └ royalty_type
  • String
  • 可选
  • 150
  • 分账类型
    卖家的分账类型,目前只支持传入ROYALTY(普通分账类型)。
  • ROYALTY
  • royalty_detail_infos
  • RoyaltyDetailInfos []
  • 必填
  • 2500
  • 分账明细的信息,可以描述多条分账指令,json数组。
  • └ serial_no
  • Number
  • 可选
  • 9
  • 分账序列号,表示分账执行的顺序,必须为正整数
  • 1
  • └ trans_in_type
  • String
  • 可选
  • 24
  • 接受分账金额的账户类型:
     userId:支付宝账号对应的支付宝唯一用户号。
     bankIndex:分账到银行账户的银行编号。目前暂时只支持分账到一个银行编号。
    storeId:分账到门店对应的银行卡编号。
    默认值为userId。
  • userId
  • └ batch_no
  • String
  • 必填
  • 32
  • 分账批次号
    分账批次号。
    目前需要和转入账号类型为bankIndex配合使用。
  • 123
  • └ out_relation_id
  • String
  • 可选
  • 64
  • 商户分账的外部关联号,用于关联到每一笔分账信息,商户需保证其唯一性。
    如果为空,该值则默认为“商户网站唯一订单号+分账序列号”
  • 20131124001
  • └ trans_out_type
  • String
  • 必填
  • 24
  • 要分账的账户类型。
    目前只支持userId:支付宝账号对应的支付宝唯一用户号。
    默认值为userId。
  • userId
  • └ trans_out
  • String
  • 必填
  • 16
  • 如果转出账号类型为userId,本参数为要分账的支付宝账号对应的支付宝唯一用户号。以2088开头的纯16位数字。
  • 2088101126765726
  • └ trans_in
  • String
  • 必填
  • 28
  • 如果转入账号类型为userId,本参数为接受分账金额的支付宝账号对应的支付宝唯一用户号。以2088开头的纯16位数字。
     如果转入账号类型为bankIndex,本参数为28位的银行编号(商户和支付宝签约时确定)。
    如果转入账号类型为storeId,本参数为商户的门店ID。
  • 2088101126708402
  • └ amount
  • Number
  • 必填
  • 9
  • 分账的金额,单位为元
  • 0.1
  • └ desc
  • String
  • 可选
  • 1000
  • 分账描述信息
  • 分账测试1
  • └ amount_percentage
  • String
  • 可选
  • 3
  • 分账的比例,值为20代表按20%的比例分账
  • 100
extend_params ExtendParams 可选 - 业务扩展参数
  • └ sys_service_provider_id
  • String
  • 可选
  • 64
  • 系统商编号
    该参数作为系统商返佣数据提取的依据,请填写系统商签约协议的PID
  • 2088511833207846
  • └ hb_fq_num
  • String
  • 可选
  • 5
  • 使用花呗分期要进行的分期数
  • 3
  • └ hb_fq_seller_percent
  • String
  • 可选
  • 3
  • 使用花呗分期需要卖家承担的手续费比例的百分值,传入100代表100%
  • 100
  • └ industry_reflux_info
  • String
  • 可选
  • 512
  • 行业数据回流信息, 详见:地铁支付接口参数补充说明
  • {\"scene_code\":\"metro_tradeorder\",\"channel\":\"xxxx\",\"scene_data\":{\"asset_name\":\"ALIPAY\"}}
  • └ card_type
  • String
  • 可选
  • 32
  • 卡类型
  • S0JP0000
sub_merchant SubMerchant 可选 - 间连受理商户信息体,当前只对特殊银行机构特定场景下使用此字段
  • └ merchant_id
  • String
  • 必填
  • 11
  • 间连受理商户的支付宝商户编号,通过间连商户入驻后得到。间连业务下必传,并且需要按规范传递受理商户编号。
  • 19023454
  • └ merchant_type
  • String
  • 可选
  • 32
  • 商户id类型,
  • alipay: 支付宝分配的间连商户编号, merchant: 商户端的间连商户编号
enable_pay_channels String 可选 128 可用渠道,用户只能在指定渠道范围内支付
当有多个渠道时用“,”分隔
注,与disable_pay_channels互斥
pcredit,moneyFund,debitCardExpress
disable_pay_channels String 可选 128 禁用渠道,用户不可用指定渠道支付
当有多个渠道时用“,”分隔
注,与enable_pay_channels互斥
pcredit,moneyFund,debitCardExpress
store_id String 可选 32 商户门店编号 NJ_001
invoice_info InvoiceInfo 可选 - 开票信息
  • key_info
  • InvoiceKeyInfo
  • 必填
  • 200
  • 开票关键信息
  • └ is_support_invoice
  • Boolean
  • 必填
  • 5
  • 该交易是否支持开票
  • true
  • └ invoice_merchant_name
  • String
  • 必填
  • 80
  • 开票商户名称:商户品牌简称|商户门店简称
  • ABC|003
  • └ tax_num
  • String
  • 必填
  • 30
  • 税号
  • 1464888883494
  • └ details
  • String
  • 必填
  • 400
  • 开票内容
    注:json数组格式
  • [{"code":"100294400","name":"服饰","num":"2","sumPrice":"200.00","taxRate":"6%"}]
specified_channel String 可选 128 指定渠道,目前仅支持传入pcredit
若由于用户原因渠道不可用,用户可选择是否用其他渠道支付。
注:该参数不可与花呗分期参数同时传入
pcredit
business_params String 可选 512 商户传入业务信息,具体值要和支付宝约定,应用于安全,营销等参数直传场景,格式为json格式 {"data":"123"}
ext_user_info ExtUserInfo 可选 - 外部指定买家
  • └ name
  • String
  • 可选
  • 16
  • 姓名

    注: need_check_info=T时该参数才有效
  • 李明
  • └ mobile
  • String
  • 可选
  • 20
  • 手机号
    注:该参数暂不校验
  • 16587658765
  • └ cert_type
  • String
  • 可选
  • 32
  • 身份证:IDENTITY_CARD、护照:PASSPORT、军官证:OFFICER_CARD、士兵证:SOLDIER_CARD、户口本:HOKOU等。如有其它类型需要支持,请与蚂蚁金服工作人员联系。

    注: need_check_info=T时该参数才有效
  • IDENTITY_CARD
  • └ cert_no
  • String
  • 可选
  • 64
  • 证件号

    注:need_check_info=T时该参数才有效
  • 362334768769238881
  • └ min_age
  • String
  • 可选
  • 3
  • 允许的最小买家年龄,买家年龄必须大于等于所传数值
    注:
    1. need_check_info=T时该参数才有效
    2. min_age为整数,必须大于等于0
  • 18
  • └ fix_buyer
  • String
  • 可选
  • 8
  • 是否强制校验付款人身份信息
    T:强制校验,F:不强制
  • F
  • └ need_check_info
  • String
  • 可选
  • 1
  • 是否强制校验身份信息
    T:强制校验,F:不强制
  • F

公共响应参数

参数 类型 是否必填 最大长度 描述 示例值
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=

响应参数

参数 类型 是否必填 最大长度 描述 示例值
out_trade_no String 必填 64 商户网站唯一订单号 70501111111S001111119
trade_no String 必填 64 该交易在支付宝系统中的交易流水号。最长64位。 2014112400001000340011111118
total_amount Price 必填 9 该笔订单的资金总额,单位为RMB-Yuan。取值范围为[0.01,100000000.00],精确到小数点后两位。 9.00
seller_id String 必填 16 收款支付宝账号对应的支付宝唯一用户号。
以2088开头的纯16位数字
2088111111116894

请求示例

  • JAVA
  • .NET
  • PHP
  • HTTP请求源码
AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","app_id","your private_key","json","GBK","alipay_public_key","RSA2");
AlipayTradeWapPayRequest request = new AlipayTradeWapPayRequest();
request.setBizContent("{" +
"\"body\":\"对一笔交易的具体描述信息。如果是多种商品,请将商品描述字符串累加传给body。\"," +
"\"subject\":\"大乐透\"," +
"\"out_trade_no\":\"70501111111S001111119\"," +
"\"timeout_express\":\"90m\"," +
"\"time_expire\":\"2016-12-31 10:05\"," +
"\"total_amount\":9.00," +
"\"seller_id\":\"2088102147948060\"," +
"\"auth_token\":\"appopenBb64d181d0146481ab6a762c00714cC27\"," +
"\"goods_type\":\"0\"," +
"\"passback_params\":\"merchantBizType%3d3C%26merchantBizNo%3d2016010101111\"," +
"\"quit_url\":\"http://www.taobao.com/product/113714.html\"," +
"\"product_code\":\"QUICK_WAP_PAY\"," +
"\"promo_params\":\"{\\\"storeIdType\\\":\\\"1\\\"}\"," +
"\"royalty_info\":{" +
"\"royalty_type\":\"ROYALTY\"," +
"        \"royalty_detail_infos\":[{" +
"          \"serial_no\":1," +
"\"trans_in_type\":\"userId\"," +
"\"batch_no\":\"123\"," +
"\"out_relation_id\":\"20131124001\"," +
"\"trans_out_type\":\"userId\"," +
"\"trans_out\":\"2088101126765726\"," +
"\"trans_in\":\"2088101126708402\"," +
"\"amount\":0.1," +
"\"desc\":\"分账测试1\"," +
"\"amount_percentage\":\"100\"" +
"          }]" +
"    }," +
"\"extend_params\":{" +
"\"sys_service_provider_id\":\"2088511833207846\"," +
"\"hb_fq_num\":\"3\"," +
"\"hb_fq_seller_percent\":\"100\"," +
"\"industry_reflux_info\":\"{\\\\\\\"scene_code\\\\\\\":\\\\\\\"metro_tradeorder\\\\\\\",\\\\\\\"channel\\\\\\\":\\\\\\\"xxxx\\\\\\\",\\\\\\\"scene_data\\\\\\\":{\\\\\\\"asset_name\\\\\\\":\\\\\\\"ALIPAY\\\\\\\"}}\"," +
"\"card_type\":\"S0JP0000\"" +
"    }," +
"\"sub_merchant\":{" +
"\"merchant_id\":\"19023454\"," +
"\"merchant_type\":\"alipay: 支付宝分配的间连商户编号, merchant: 商户端的间连商户编号\"" +
"    }," +
"\"enable_pay_channels\":\"pcredit,moneyFund,debitCardExpress\"," +
"\"disable_pay_channels\":\"pcredit,moneyFund,debitCardExpress\"," +
"\"store_id\":\"NJ_001\"," +
"\"invoice_info\":{" +
"\"key_info\":{" +
"\"is_support_invoice\":true," +
"\"invoice_merchant_name\":\"ABC|003\"," +
"\"tax_num\":\"1464888883494\"" +
"      }," +
"\"details\":\"[{\\\"code\\\":\\\"100294400\\\",\\\"name\\\":\\\"服饰\\\",\\\"num\\\":\\\"2\\\",\\\"sumPrice\\\":\\\"200.00\\\",\\\"taxRate\\\":\\\"6%\\\"}]\"" +
"    }," +
"\"specified_channel\":\"pcredit\"," +
"\"business_params\":\"{\\\"data\\\":\\\"123\\\"}\"," +
"\"ext_user_info\":{" +
"\"name\":\"李明\"," +
"\"mobile\":\"16587658765\"," +
"\"cert_type\":\"IDENTITY_CARD\"," +
"\"cert_no\":\"362334768769238881\"," +
"\"min_age\":\"18\"," +
"\"fix_buyer\":\"F\"," +
"\"need_check_info\":\"F\"" +
"    }" +
"  }");
AlipayTradeWapPayResponse response = alipayClient.pageExecute(request);
if(response.isSuccess()){
System.out.println("调用成功");
} else {
System.out.println("调用失败");
}

响应示例

  • JSON示例
{
	"alipay_trade_wap_pay_response":{
		"msg":"Success",
		"code":"10000",
		"out_trade_no":"70501111111S001111119",
		"total_amount":9.00,
		"trade_no":"2014112400001000340011111118",
		"seller_id":"2088111111116894"
	},
	"sign":"ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}

异常示例

  • JSON示例
{
	"alipay_trade_wap_pay_response":{
		"msg":"Service Currently Unavailable",
		"code":"20000",
		"sub_msg":"系统繁忙",
		"sub_code":"isp.unknow-error"
	},
	"sign":"ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}

公共错误码

触发通知类型

通知类型 描述 默认开启
tradeStatus.TRADE_CLOSED 交易关闭 1
tradeStatus.TRADE_FINISHED 交易完结 1
tradeStatus.TRADE_SUCCESS 支付成功 1
tradeStatus.WAIT_BUYER_PAY 交易创建 0

触发通知字段

参数 类型 是否必填 最大长度 描述 示例值
receipt_amount String 必填 - 商家在交易中实际收到的款项,单位为元
invoice_amount String 必填 - 用户在交易中支付的可开具发票的金额
buyer_pay_amount String 必填 - 用户在交易中支付的金额
point_amount String 必填 - 使用积分宝支付的金额
voucher_detail_list String 必填 - 本交易支付时所使用的所有优惠券信息
out_biz_no String 必填 - 商户业务号
buyer_logon_id String 必填 - 买家支付宝账号
seller_email String 必填 - 卖家支付宝账号
passback_params String 必填 - 回传参数
out_channel_type String 选填 - 支付渠道
trade_no String 必填 - 支付宝交易号
app_id String 必填 - 支付宝分配给开发者的应用Id
out_trade_no String 必填 - 商户订单号
seller_id String 必填 - 卖家支付宝用户号
trade_status String 必填 - 交易状态
total_amount String 必填 - 订单金额
refund_fee String 必填 - 退款金额
subject String 必填 - 订单标题
body String 必填 - 商品描述
gmt_create String 必填 - 交易创建时间
gmt_payment String 必填 - 交易付款时间
gmt_refund String 必填 - 交易退款时间
gmt_close String 必填 - 交易结束时间
buyer_id String 必填 - 买家的支付宝用户Uid
fund_bill_list String 必填 - 支付金额信息
mdiscount_amount String 选填 11 商家优惠金额 88.88
discount_amount String 选填 11 平台优惠金额 88.88

触发通知示例

https://www.merchant.com/receive_notify.htm?notify_type=trade_status_sync&notify_id=91722adff935e8cfa58b3aabf4dead6ibe&notify_time=2017-02-16 21:46:15&sign_type=RSA2&sign=WcO+t3D8Kg71dTlKwN7r9PzUOXeaBJwp8/FOuSxcuSkXsoVYxBpsAidprySCjHCjmaglNcjoKJQLJ28/Asl93joTW39FX6i07lXhnbPknezAlwmvPdnQuI01HZsZF9V1i6ggZjBiAd5lG8bZtTxZOJ87ub2i9GuJ3Nr/NUc9VeY=&receipt_amount=null&invoice_amount=null&buyer_pay_amount=null&point_amount=null&voucher_detail_list=null&out_biz_no=null&buyer_logon_id=null&seller_email=null&passback_params=null&out_channel_type=null&trade_no=null&app_id=null&out_trade_no=null&seller_id=null&trade_status=null&total_amount=null&refund_fee=null&subject=null&body=null&gmt_create=null&gmt_payment=null&gmt_refund=null&gmt_close=null&buyer_id=null&fund_bill_list=null&mdiscount_amount=88.88&discount_amount=88.88

异步通知验签方式

返回
顶部