2088102146225135
bodyString可选128订单描述Iphone6 16G
goods_detailGoodsDetail[]可选订单包含的商品列表信息,json格式。[{"goods_id":"apple-01","goods_name":"ipad","goods_category":"7788230","price":"2000.00","quantity":"1"}]
goods_idString必填32商品的编号apple-01
goods_nameString必填256商品名称ipad
quantityNumber必填10商品数量1
pricePrice必填9商品单价,单位为元2000
goods_categoryString可选24商品类目34543238
categories_treeString可选128商品类目树,从商品类目根节点到叶子节点的类目id组成,类目id值使用|分割124868003|126232002|126252004
bodyString可选1000商品描述信息特价手机
show_urlString可选400商品的展示地址http://www.alipay.com/xxx.jpg
timeout_expressString可选6订单相对超时时间。
该笔订单允许的最晚付款时间,逾期将关闭交易。取值范围:1m~15d。m-分钟,h-小时,d-天,1c-当天(1c-当天的情况下,无论交易何时创建,都在0点关闭)。 该参数数值不接受小数点, 如1.5h,可转换为 90m。
当面付场景默认值为3h;
其它场景默认值为15d;90m
settle_infoSettleInfo可选描述结算信息,json格式。
settle_detail_infosSettleDetailInfo[]必填10结算详细信息,json数组,目前只支持一条。
trans_in_typeString必填64结算收款方的账户类型。
cardAliasNo:结算收款方的银行卡编号;
userId:表示是支付宝账号对应的支付宝唯一用户号;
loginName:表示是支付宝登录号;
defaultSettle:表示结算到商户进件时设置的默认结算账号,结算主体为门店时不支持传defaultSettle;cardAliasNo
trans_inString必填64结算收款方。当结算收款方类型是cardAliasNo时,本参数为用户在支付宝绑定的卡编号;结算收款方类型是userId时,本参数为用户的支付宝账号对应的支付宝唯一用户号,以2088开头的纯16位数字;当结算收款方类型是loginName时,本参数为用户的支付宝登录号;当结算收款方类型是defaultSettle时,本参数不能传值,保持为空。A0001
summary_dimensionString可选64结算汇总维度,按照这个维度汇总成批次结算,由商户指定。
目前需要和结算收款方账户类型为cardAliasNo配合使用A0001
settle_entity_idString可选64结算主体标识。当结算主体类型为SecondMerchant时,为二级商户的SecondMerchantID;当结算主体类型为Store时,为门店的外标。2088xxxxx;ST_0001
settle_entity_typeString可选32结算主体类型。
二级商户:SecondMerchant;商户或者直连商户门店:StoreSecondMerchant、Store
amountPrice必填9结算的金额,单位为元。在创建订单和支付接口时必须和交易金额相同。在结算确认接口时必须等于交易金额减去已退款金额。0.1
settle_period_timeString可选10该笔订单的超期自动确认结算时间,到达期限后,将自动确认结算。此字段只在签约账期结算模式时有效。取值范围:1d~365d。d-天。 该参数数值不接受小数点。7d
extend_paramsExtendParams可选业务扩展参数
sys_service_provider_idString可选64系统商编号
该参数作为系统商返佣数据提取的依据,请填写系统商签约协议的PID2088511833207846
card_typeString可选32卡类型S0JP0000
specified_seller_nameString可选32特殊场景下,允许商户指定交易展示的卖家名称XXX的跨境小铺
business_paramsBusinessParams可选商户传入业务信息,具体值要和支付宝约定,应用于安全,营销等参数直传场景,格式为json格式
campus_cardString可选64校园卡编号0000306634
card_typeString可选128虚拟卡卡类型T0HK0000
actual_order_timeString可选256实际订单时间,在乘车码场景,传入的是用户刷码乘车时间
good_taxesString可选32商户传入的交易税费。需要落地风控使用10.00
passback_paramsString可选512公用回传参数。
如果请求时传递了该参数,支付宝会在异步通知时将该参数原样返回。
本参数必须进行UrlEncode之后才可以发送给支付宝。merchantBizType%3d3C%26merchantBizNo%3d2016010101111
discountable_amountPrice可选9可打折金额。
参与优惠计算的金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000]。
如果同时传入了【可打折金额】、【不可打折金额】和【订单总金额】,则必须满足如下条件:【订单总金额】=【可打折金额】+【不可打折金额】。
如果订单金额全部参与优惠计算,则【可打折金额】和【不可打折金额】都无需传入。80.00
undiscountable_amountPrice可选9不可打折金额。
不参与优惠计算的金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000]。
如果同时传入了【可打折金额】、【不可打折金额】和【订单总金额】,则必须满足如下条件:【订单总金额】=【可打折金额】+【不可打折金额】。
如果订单金额全部参与优惠计算,则【可打折金额】和【不可打折金额】都无需传入。8.88
store_idString可选32商户门店编号。
指商户创建门店时输入的门店编号。NJ_001
operator_idString可选28商户操作员编号。Yx_001
terminal_idString可选32商户机具终端编号。NJ_T_001
logistics_detailLogisticsDetail可选物流信息
logistics_typeString可选32物流类型,
POST 平邮,
EXPRESS 其他快递,
VIRTUAL 虚拟物品,
EMS EMS,
DIRECT 无需物流。EXPRESS
receiver_address_infoReceiverAddressInfo可选收货人及地址信息
nameString可选512收货人的姓名张三
addressString可选512收货地址上海市浦东新区陆家嘴银城中路501号
mobileString可选60收货人手机号13120180615
zipString可选40收货地址邮编200120
division_codeString可选16中国标准城市区域码310115

公共响应参数

参数类型是否必填最大长度描述示例值
codeString是-网关返回码,详见文档40004
msgString是-网关返回码描述,详见文档Business Failed
sub_codeString否-业务返回码,参见具体的API接口文档ACQ.TRADE_HAS_SUCCESS
sub_msgString否-业务返回码描述,参见具体的API接口文档交易已被支付
signString是-签名,详见文档DZXh8eeTuAHoYE3w1J+POiPhfDxOYBfUNn1lkeT/V7P4zJdyojWEa6IZs6Hz0yDW5Cp/viufUb5I0/V5WENS3OYR8zRedqo6D+fUTdLHdc+EFyCkiQhBxIzgngPdPdfp1PIS7BdhhzrsZHbRqb7o4k3Dxc+AAnFauu4V6Zdwczo=

响应参数

参数类型是否必填最大长度描述示例值
out_trade_noString必填64商户订单号20150423001001
trade_noString必填64支付宝交易号2015042321001004720200028594

请求示例

AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","app_id","your private_key","json","GBK","alipay_public_key","RSA2"); AlipayTradeCreateRequest request = new AlipayTradeCreateRequest(); request.setNotifyUrl(""); JSONObject bizContent = new JSONObject(); bizContent.put("out_trade_no", "20210817010101003"); bizContent.put("total_amount", 0.01); bizContent.put("subject", "测试商品"); bizContent.put("buyer_id", "2088102146225135"); bizContent.put("timeout_express", "10m"); //// 商品明细信息,按需传入 //JSONArray goodsDetail = new JSONArray(); //JSONObject goods1 = new JSONObject(); //goods1.put("goods_id", "goodsNo1"); //goods1.put("goods_name", "子商品1"); //goods1.put("quantity", 1); //goods1.put("price", 0.01); //goodsDetail.add(goods1); //bizContent.put("goods_detail", goodsDetail); //// 扩展信息,按需传入 //JSONObject extendParams = new JSONObject(); //extendParams.put("sys_service_provider_id", "2088511833207846"); //bizContent.put("extend_params", extendParams); //// 结算信息,按需传入 //JSONObject settleInfo = new JSONObject(); //JSONArray settleDetailInfos = new JSONArray(); //JSONObject settleDetail = new JSONObject(); //settleDetail.put("trans_in_type", "defaultSettle"); //settleDetail.put("amount", 0.01); //settleDetailInfos.add(settleDetail); //settleInfo.put("settle_detail_infos", settleDetailInfos); //bizContent.put("settle_info", settleInfo); //// 二级商户信息,按需传入 //JSONObject subMerchant = new JSONObject(); //subMerchant.put("merchant_id", "2088000603999128"); //bizContent.put("sub_merchant", subMerchant); //// 业务参数信息,按需传入 //JSONObject businessParams = new JSONObject(); //businessParams.put("busi_params_key", "busiParamsValue"); //bizContent.put("business_params", businessParams); //// 营销信息,按需传入 //JSONObject promoParams = new JSONObject(); //promoParams.put("promo_params_key", "promoParamsValue"); //bizContent.put("promo_params", promoParams); request.setBizContent(bizContent.toString()); AlipayTradeCreateResponse response = alipayClient.execute(request); if(response.isSuccess()){ System.out.println("调用成功"); } else { System.out.println("调用失败"); }

业务错误码

错误码错误描述解决方案
ACQ.SYSTEM_ERROR接口返回错误请立即调用查询订单API,查询当前订单的状态,并根据订单状态决定下一步的操作
ACQ.INVALID_PARAMETER参数无效检查请求参数,修改后重新发起请求
ACQ.ACCESS_FORBIDDEN无权限使用接口联系商户客服进行签约,商户客服电话:95188-1-2,或在线商户客服:登录 b.alipay.com 点击右侧小蚂蚁头像中(我的客服)进行咨询 https://cschannel.alipay.com/newPortal.htm?scene=kfpt
ACQ.EXIST_FORBIDDEN_WORD订单信息中包含违禁词修改订单信息后,重新发起请求
ACQ.PARTNER_ERROR应用APP_ID填写错误联系支付宝小二,确认APP_ID的状态
ACQ.TOTAL_FEE_EXCEED订单总金额超过限额修改订单金额再发起请求
ACQ.CONTEXT_INCONSISTENT交易信息被篡改更换商家订单号后,重新发起请求
ACQ.TRADE_HAS_SUCCESS交易已被支付确认该笔交易信息是否为当前买家的,如果是则认为交易付款成功,如果不是则更换商家订单号后,重新发起请求
ACQ.TRADE_HAS_CLOSE交易已经关闭更换商家订单号后,重新发起请求
ACQ.BUYER_SELLER_EQUAL买卖家不能相同更换买家重新付款
ACQ.TRADE_BUYER_NOT_MATCH交易买家不匹配更换商家订单号后,重新发起请求
ACQ.BUYER_ENABLE_STATUS_FORBID买家状态非法用户联系支付宝小二,确认买家状态为什么非法
ACQ.SELLER_BEEN_BLOCKED商家账号被冻结联系支付宝小二,解冻账号
ACQ.ERROR_BUYER_CERTIFY_LEVEL_LIMIT买家未通过人行认证让用户联系支付宝小二并更换其它付款方式
ACQ.SUB_MERCHANT_CREATE_FAIL二级商户创建失败检查上送的二级商户信息是否有效
ACQ.SUB_MERCHANT_TYPE_INVALID二级商户类型非法检查上传的二级商户类型是否有效
ACQ.SECONDARY_MERCHANT_STATUS_ERROR商户状态异常请联系对应的服务商咨询
ACQ.BUYER_NOT_EXIST买家不存在确认买家账号信息传递是否正确,如果正确可联系支付宝小二,确认买家账号是否已经注销
ACQ.PAYER_UNMATCHED付款人不匹配建议用户更换为指定的支付宝账号进行支付
ACQ.SECONDARY_MERCHANT_NOT_MATCH二级商户信息不匹配请检查传入的二级商户编号是否正确
ACQ.TRADE_SETTLE_ERROR交易结算异常请检查传入的结算项信息是否正确,如果正确请联系支付宝小二
ACQ.SECONDARY_MERCHANT_ID_BLANK二级商户编号错误请检查是否正确传入二级商户编号
ACQ.INVALID_RECEIVE_ACCOUNT收款账户不支持确认seller_id信息是否传递正确,如正确请确认seller_id是否在签约中设置了收款权限
ACQ.SECONDARY_MERCHANT_ID_INVALID二级商户不存在请检查传入的二级商户编号是否正确
ACQ.BEYOND_PER_RECEIPT_SINGLE_RESTRICTION订单金额超过单笔限额联系支付宝小二提高限额(联系电话:95188)
ACQ.SECONDARY_MERCHANT_ALIPAY_ACCOUNT_INVALID二级商户账户异常确认传入的二级商户结算账户是否与进件时设置的结算账户一致,如果一致可联系支付宝小二确认是否商户的账号信息有变更
ACQ.SECONDARY_MERCHANT_ISV_PUNISH_INDIRECT商户状态异常请联系对应的服务商咨询
ACQ.USER_LOGONID_DUP用户账号重复用户手机账户名与他人重复,无法进行收付款。为了保障资金安全,建议您通知对方修改账户名,并与对方核对后更新对方账户名
ACQ.CUSTOMER_VALIDATE_ERROR客户校验出错请确认结算账号是否完成实名信息认证,如还有问题联系支付宝小二处理
ACQ.INVALID_STORE_ID商户门店编号无效检查传入的门店编号是否有效
ACQ.SECONDARY_MERCHANT_CARD_ALIAS_NO_INVALID二级商户银行卡编号错误请确认是否正确传入二级商户的银行卡信息,以及银行卡信息是否与商户进件是设置的卡信息一致
ACQ.NOT_SUPPORT_PAYMENT_INST不支持的钱包版本业务不支持使用该客户端支付,建议买家更换客户端进行支付或者更换其它付款方式
ACQ.SELLER_NOT_EXIST卖家不存在确认卖家信息是否传递正确
ACQ.NOW_TIME_AFTER_EXPIRE_TIME_ERROR当前时间已超过允许支付的时间请检查传入的支付超时时间是否正确
ACQ.ILLEGAL_ARGUMENT参数错误请确认请求传参是否正确
ACQ.SUB_GOODS_SIZE_MAX_COUNT子商品明细超长请检查子商品明细是否超过了150条
ACQ.PLATFORM_BUSINESS_ACQUIRE_MODE_MUST_MERCHANT_ID二级商户编码为空请检查是否正确传入二级商户编号
ACQ.ERROR_SELLER_CERTIFY_LEVEL_LIMIT卖家未通过人行认证根据国家相关法规要求,收款账户资金变动超过一定数额,需补充实名认证资料后,才能进行收付款
ACQ.STORE_INFO_INVALID门店信息错误请校验传入的结算门店信息是否正确
ACQ.DEFAULT_SETTLE_RULE_NOT_EXIST默认结算条款不存在请确认二级商户进件是已经设置了默认结算账户
ACQ.MERCHANT_PERM_RECEIPT_SUSPEND_LIMIT商户暂停收款联系支付宝小二处理(联系电话:95188)
ACQ.MERCHANT_PERM_RECEIPT_SINGLE_LIMIT超过单笔收款限额联系支付宝小二处理(联系电话:95188)
ACQ.MERCHANT_PERM_RECEIPT_DAY_LIMIT超过单日累计收款额度联系支付宝小二处理(联系电话:95188)

触发通知类型

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

触发通知示例

https://www.merchant.com/receive_notify.htm?notify_type=trade_status_sync¬ify_id=91722adff935e8cfa58b3aabf4dead6ibe¬ify_time=2017-02-16 21:46:15&sign_type=RSA2&sign=WcO+t3D8Kg71dTlKwN7r9PzUOXeaBJwp8/FOuSxcuSkXsoVYxBpsAidprySCjHCjmaglNcjoKJQLJ28/Asl93joTW39FX6i07lXhnbPknezAlwmvPdnQuI01HZsZF9V1i6ggZjBiAd5lG8bZtTxZOJ87ub2i9GuJ3Nr/NUc9VeY=&gmt_refund=null&gmt_close=null&fund_bill_list=null&receipt_amount=null&invoice_amount=null&buyer_pay_amount=null&point_amount=null&buyer_id=null&voucher_detail_list=null&trade_no=null&app_id=null&out_trade_no=null&out_biz_no=null&buyer_logon_id=null&seller_id=null&seller_email=null&trade_status=null&total_amount=null&refund_fee=null&subject=null&body=null&gmt_create=null&gmt_payment=null&refund_preset_paytool_list=[{"amount":"1.00","assert_type_code":"HEMA"}]&charge_amount=8.88&charge_flags=bluesea_1&settlement_id=2018101610032004620239146945¤t_seller_received_amount=88.88&seller_received_total_amount=88.88&total_from_seller_fee=88.88&ff_current_period=1¬ify_action_type=payByAccountAction/closeTradeAction/reverseAction/finishFPAction/confirmDisburseAction/financingReceiptAction&passback_params=merchantBizType%3d3C%26merchantBizNo%3d2016010101111&hb_fq_pay_info={"USER_INSTALL_NUM":"3"}&receipt_currency_type=DC