文档中心 > 校园、团餐、K12行业非刷脸设备的IOT接入SOP通用指南

团餐调用支付宝收单交易接口传参说明

更新时间:2020/05/06 访问次数:660

1 iot交易加签传参方案

在alipay.trade.pay(统一收单交易支付接口)中,按照如下的要求透传设备标识签名信息。

1.1 未植入支付宝SDK或SDK无支付宝交易生签类设备

对于未植入标准SDK的设备在发起交易时需要在open api的terminal_id参数透传设备标识biz_tid。biz_tid的生成获取方式,请见链接中“IOT设备注册激活接入”部分的内容。

terminal_id的格式如下:

1.2 植入支付宝SDK类设备

对于植入了标准SDK的设备在发起交易时,需要在open api的terminal_params参数透传由SDK产生的加签参数。

terminal_params格式类似如下:

1.3 具体加签

因设备的支付形态不同,统一SDK加签生成签名的方式不同,并根据规则在收单API接口中的auth_code字段传参要求也相应不同。根据设备的支付方式不同,具体生签方式如下: 

  • 刷脸付模式:

public String signWithFaceToken(String faceToken, String amount);

public String signWithFaceToken(String faceToken);

faceToken取值人脸在线比对生成的facetoken,同时统一收单接口中auth_code字段传入facetoken,scene字段传入security_code

 

  • 扫码当面付模式:

public String signWithPaymentQrcode(String qrcode, String amount);

public String signWithPaymentQrcode(String qrcode);

qrcode取值手机生成的二维码,同时统一收单接口中auth_code字段传入qrcode,且scene取值bar_code

 

  • 本地刷脸+代扣模式:

public String signWithFaceToken(String faceToken, String amount);

public String signWithFaceToken(String faceToken);

faceToken取值本地人脸比对生成的ftoken,同时统一收单接口中auth_code字段传入ftoken,且scene字段不用处理和传参

 

  • 一卡通+代扣模式:

public String signWithDelegated(String tid, String amount);

public String signWithDelegated(String tid);

tid取值一卡通卡号,同时统一收单接口中auth_code字段传入tid

 

  • 代扣协议号+代扣模式:

public String signWithDelegatedByAgreement(String agreementId, String amount);

public String signWithDelegatedByAgreement(String agreementId); 

agreementId取值用户签约代扣协议号,统一收单接口中auth_code字段不用处理和传参

 

  • 双离线码+代扣模式:

public String signWithPaymentQrcode(String qrcode, String amount);

public String signWithPaymentQrcode(String qrcode);

qrcode取值手机生成的离线二维码,同时统一收单接口中auth_code字段传入qrcode,且scene字段传codec_double_offline_code。

 

特殊说明:SDK加签参数中的total_amount的值必须是最终结算金额,且必须是服务端最终组装交易报文中的值一致,单位为元,精确到小数点后两位。

 

 

2 iot_pay_action传参方案

统一收单接口(alipay.trade.pay)的交易扩展里面传入:

2.0接口,从接口参数上传入该参数:business_params; json格式:key为:iot_pay_action

1.0接口,在接口参数上传入该参数:business_info;   json格式:key为:iot_pay_action

对应value定义如下:

iot_pay_action:    online_face_pay - 在线刷脸支付
                          local_face_pay - 本地刷脸支付
                          nfc_pay - 刷卡支付
                          bar_pay - 扫码支付

特殊说明: 统一收单SDK里面business_params参数定义是string类型,在传参的时候,需要注意,格式为json格式。

 

代码样例如下:

{"apiMethodName":"alipay.trade.pay","apiVersion":"2.0","bizContent":"{\"extend_params\":{\"sys_service_provider_id\":\"20883*******\"},\"out_trade_no\":\"201903151146*********\",\"total_amount\":\"0.01\",\"terminal_params\":\"{\\\"terminalType\\\":\\\"IOT\\\",\\\"signature\\\":\\\"QIIAxgwd8ahO3dt_6pxykJhb0V5N4Lei1W32eaJulIINM-EB\\\",\\\"apdidToken\\\":\\\"mn85RGbvtOX08S-YFLqX1invNQGqgdvozl6lu9xCLF0OZkxqaQEAAA==\\\",\\\"hardToken\\\":\\\"\\\",\\\"time\\\":\\\"1552453003\\\",\\\"bizCode\\\":\\\"11000200040004200021\\\",\\\"bizTid\\\":\\\"01010IT02U****************\\\",\\\"signedKeys\\\":\\\"authCode,totalAmount,apdidToken,hardToken,time,bizCode,bizTid\\\"}\",\"subject\":\"******食堂-消费\",\"agreement_params\":{\"agreement_no\":\"201950***********\"},\"business_params\":{\"iot_pay_action\":\"local_face_pay\"},\"product_code\":\"GENERAL_WITHHOLDING\",\"seller_id\":\"20887********\",\"auth_code\":\"01010IT02U5XBiQ***********\"}","needEncrypt":false,"notifyUrl":"https://zxbxcx.cdyqsh.com:5009/ydtong/notifyUrl.htm","responseClass":"com.alipay.api.response.AlipayTradePayResponse","returnUrl":"https://zxbxcx.cdyqsh.com:5009/ydtong/notifyUrl.htm","textParams":{"biz_content":"{\"extend_params\":{\"sys_service_provider_id\":\"208833********\"},\"out_trade_no\":\"201903151********\",\"total_amount\":\"0.01\",\"terminal_params\":\"{\\\"terminalType\\\":\\\"IOT\\\",\\\"signature\\\":\\\"QIIAxgwd8ahO3dt_6pxykJhb0V5N4Lei1W32eaJulIINM-EB\\\",\\\"apdidToken\\\":\\\"mn85RGbvtOX08S-YFLqX1invNQGqgdvozl6lu9xCLF0OZkxqaQEAAA==\\\",\\\"hardToken\\\":\\\"\\\",\\\"time\\\":\\\"1552453003\\\",\\\"bizCode\\\":\\\"1100020004000*********\\\",\\\"bizTid\\\":\\\"01010IT02U5**********\\\",\\\"signedKeys\\\":\\\"authCode,totalAmount,apdidToken,hardToken,time,bizCode,bizTid\\\"}\",\"subject\":\"蓝郡湖小学食堂-消费\",\"agreement_params\":{\"agreement_no\":\"2019502******\"},\"business_params\":{\"iot_pay_action\":\"local_face_pay\"},\"product_code\":\"GENERAL_WITHHOLDING\",\"seller_id\":\"208870231*****\",\"auth_code\":\"01010IT02U*********\"}"}}

 

支付宝请求样例如下:

//openapi.alipay.com/gateway.do?charset=GBK&alipay_sdk=alipay-sdk-java-3.4.101.ALL&biz_content={"extend_params":{"sys_service_provider_id":"20883*******"},"out_trade_no":"201903151146*********","total_amount":"0.01","terminal_params":"{\"terminalType\":\"IOT\",\"signature\":\"QIIAxgwd8ahO3dt_6pxykJhb0V5N4Lei1W32eaJulIINM-EB\",\"apdidToken\":\"mn85RGbvtOX08S-YFLqX1invNQGqgdvozl6lu9xCLF0OZkxqaQEAAA==\",\"hardToken\":\"\",\"time\":\"1552453003\",\"bizCode\":\"11000200040004200021\",\"bizTid\":\"01010IT02U****************\",\"signedKeys\":\"authCode,totalAmount,apdidToken,hardToken,time,bizCode,bizTid\"}","product_code":"GENERAL_WITHHOLDING","subject":"******食堂-消费","agreement_params":{"agreement_no":"201950***********"},"business_params":{"iot_pay_action":"local_face_pay"},"seller_id":"20887********","auth_code":"01010IT02U5XBiQ***********"}&method=alipay.trade.pay&sign=***&format=json&return_url=https://zxbxcx.cdyqsh.com:5009/ydtong/notifyUrl.htm¬ify_url=https://zxbxcx.cdyqsh.com:5009/ydtong/notifyUrl.htm&version=2.0&app_id=2018122762705184&sign_type=RSA2×tamp=2019-03-18 10:43:07

 

 

FAQ

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