商户使用扫码枪等条码识别设备扫描用户支付宝钱包上的条码,完成用户资金授权,根据是否需要输入密码可分为:免密模式和验密模式。
服务调用流程:
免密模式:
验密模式:
关键入参:
参数名称 |
参数说明 |
out_order_no |
商户授权资金订单号,需要保证不重复 |
out_request_no |
商户授权资金操作流水号,需要保证不重复 |
auth_code |
用户付款码 |
auth_code_type |
固定值传入bar_code |
order_title |
订单标题 |
amount |
冻结金额 |
pay_timeout |
授权超时时间 |
payee_logon_id |
收款方支付宝账号(Email或手机号),如果收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)同时传递,则以用户号(payee_user_id)为准,如果商户有勾选花呗渠道,收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)不能同时为空。 |
payee_user_id |
收款方的支付宝唯一用户号,以2088开头的16位纯数字组成,如果非空则会在支付时校验交易的的收款方与此是否一致,如果商户有勾选花呗渠道,收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)不能同时为空。 |
product_code |
销售产品码,后续新接入当面资金授权业务,本字段取值固定为PRE_AUTH。 |
关键出参:
参数名称 |
参数说明 |
auth_no |
支付宝28位授权资金订单号 |
operation_id |
支付宝标识本次资金操作的流水号 |
status |
本次资金授权操作的状态 |
收银员通过收银台或商户后台调用支付宝接口,生成二维码后,展示给用户,由用户扫描二维码完成资金冻结。
业务规则:
1)授权冻结支持的支付渠道以及默认冻结顺序:花呗>余额宝>余额>信用卡>借记卡。如果用户在支付宝客户端有设置默认扣款顺序,则以用户设置为准。
2)授权验证密码规则:用户通过钱包app进行密码授权冻结。
调用流程:
关键入参:
参数名称 |
参数说明 |
out_order_no |
商户授权资金订单号,需要保证不重复 |
out_request_no |
商户授权资金操作流水号,需要保证不重复 |
order_title |
订单标题 |
amount |
冻结金额 |
pay_timeout |
授权超时时间 |
payee_logon_id |
收款方支付宝账号(Email或手机号),如果收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)同时传递,则以用户号(payee_user_id)为准,如果商户有勾选花呗渠道,收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)不能同时为空。 |
payee_user_id |
收款方的支付宝唯一用户号,以2088开头的16位纯数字组成,如果非空则会在支付时校验交易的的收款方与此是否一致,如果商户有勾选花呗渠道,收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)不能同时为空。 |
product_code |
销售产品码,后续新接入当面资金授权业务,本字段取值固定为PRE_AUTH。 |
关键出参:
参数名称 |
参数说明 |
out_order_no |
商户的授权资金订单号 |
out_request_no |
商户本次资金操作的请求流水号 |
code_type |
码类型,分为 barCode:条形码 (一维码) 和 qrCode:二维码(qrCode) ; 目前发码只支持 qrCode |
code_value |
当前发码请求生成的二维码码串,商户端可以利用二维码生成工具根据该码串值生成对应的二维码 |
code_url |
生成的带有支付宝logo的二维码地址 |
商户因业务原因需要解冻用户授权资金时,可通过商户订单号和操作流水号,或者支付宝订单号和操作流水号进行资金解冻,支持部分解冻。
业务规则:
调用流程:
商户系统调用资金授权解冻接口alipay.fund.auth.order.unfreeze,传入支付宝订单号、解冻操作请求号、解冻金额等参数请求退款,并同步获得退款结果。
关键入参:
参数名称 |
参数说明 |
auth_no |
支付宝28位授权资金订单号 |
out_request_no |
商户授权资金操作流水号,需要保证不重复 |
amount |
解冻金额 |
remark |
操作描述,展示在用户支付宝账单上 |
关键出参:
参数名称 |
参数说明 |
auth_no |
支付宝28位授权资金订单号 |
operation_id |
支付宝标识本次资金操作的流水号 |
status |
本次资金授权操作的状态 |
只有商户由于业务系统处理超时需要终止后续业务处理或者授权结果未知时可调用撤销,其他正常授权冻结的操作如需实现相同功能请调用资金授权解冻服务。
业务规则:
提交资金授权后调用【资金授权操作查询】,没有明确的授权结果再调用【资金授权撤销】。
关键入参:
参数名称 |
参数说明 |
auth_no |
支付宝28位授权资金订单号 |
operation_id |
支付宝资金授权冻结操作流水号 |
out_order_no |
商户资金授权订单号 |
out_request_no |
商户资金授权冻结操作流水号 |
remark |
操作描述 |
关键出参:
参数名称 |
参数说明 |
action |
本次撤销触发的动作 close:关闭订单,无资金解冻 unfreeze:产生了资金解冻 |
通过该接口可以查询单笔资金授权操作明细的详细信息。
关键入参:
参数名称 |
参数说明 |
auth_no |
支付宝28位授权资金订单号 |
operation_id |
支付宝资金授权冻结操作流水号 |
out_order_no |
商户资金授权订单号 |
out_request_no |
商户资金授权冻结操作流水号 |
关键出参:
参数名称 |
参数说明 |
auth_no |
支付宝28位授权资金订单号 |
operation_id |
支付宝资金授权冻结操作流水号 |
out_order_no |
商户资金授权订单号 |
out_request_no |
商户资金授权冻结操作流水号 |
status |
本次资金授权操作的状态 |
商户因业务原因需要解冻用户授权资金并支付给卖家时,通过该接口创建交易订单并将授权资金解冻转支付给卖家。
业务规则:
调用流程:
商户系统调用交易创建并支付接口alipay.trade.pay,传入商户订单号,支付宝资金授权单号、商品信息、卖家信息,交易金额等参数请求交易支付,并同步获得交易支付结果。
关键入参:
参数名称 |
参数说明 |
out_trade_no |
商户订单号,需要保证不重复 |
total_amount |
订单金额 |
product_code |
产品码,后续新接入当面资金授权业务,本字段取值固定为PRE_AUTH,当面授权场景老产品传固定值FUND_TRADE_FAST_PAY。 |
auth_no |
支付宝资金授权单号 |
subject |
订单标题 |
buyer_id |
买家支付宝uid,即资金授权用户uid,必传 |
seller_id |
卖家支付宝uid,即资金授权收款方uid,必传 |
业务参数样例:
"biz_content":{ "out_trade_no":"20161122000000001", "sence":"bar_code", "auth_no":"2016111710002001390222200964", "product_code":"FUND_TRADE_FAST_PAY", "subject":"冻结转支付", "buyer_id":"2088202415071394", "seller_id":"2088211521646673", "total_amount":0.01 }
商户因业务原因需要退款时,可通过成功交易的商户订单号或支付宝交易号进行退款 ,支持部分退款。
调用流程:
商户系统调用交易退款接口alipay.trade.refund,传入商户订单号或支付宝交易号、退款请求号、退款金额等参数请求退款,并同步获得退款结果。
关键入参:
参数名称 |
参数说明 |
out_trade_no |
支付时传入的商户订单号,与trade_no必填一个 |
trade_no |
支付时返回的支付宝交易号,与out_trade_no必填一个 |
out_request_no |
本次退款请求流水号,部分退款时必传 |
refund_amount |
本次退款金额 |
关键出参:
参数名称 |
参数说明 |
refund_fee |
该笔交易已退款的总金额 |
商户因后台、网络、服务器等出现异常,而未接收到支付通知时,可以通过本接口主动查询订单状态,来决策完成下一步的业务逻辑。
调用流程:
商户系统调用交易查询接口alipay.trade.query,传入商户订单号或支付宝交易号、同步返回交易订单信息。
关键入参:
参数名称 |
参数说明 |
out_trade_no |
支付时传入的商户订单号,与trade_no必填一个 |
trade_no |
支付时返回的支付宝交易号,与out_trade_no必填一个 |
关键出参:
参数名称 |
参数说明 |
trade_no |
支付宝28位交易号 |
out_trade_no |
支付时传入的商户订单号 |
trade_status |
交易当前状态 |