拉卡拉聚合掃碼-主掃交易(全報文加密)

拉卡拉支付 5個月前 ( 11-14 ) 650

接口說明:

主掃交易接口,若涉及指定買家姓名身份證號等敏感信息時需要將全報文進行加密處理后再調用此接口完成下單。加密方式見開發指引敏感信息接口加密說明。

調用地址

使用HTTP協議,POST方式提交。

測試環境:https://test.wsmsd.cn/sit/api/v3/labs/trans/preorder_encry

生產環境:https://s2.lakala.com/api/v3/labs/trans/preorder_encry

請求報文

字段名中文名稱是否必填類型說明
merchant_no商戶號MString(32)拉卡拉分配的商戶號
term_no終端號MString(32)拉卡拉分配的業務終端號
out_trade_no商戶交易流水號MString(32)商戶系統唯一,對應數據庫表中外部請求流水號。
account_type錢包類型MString(32)

微信:WECHAT 支付寶:ALIPAY 銀聯:UQRCODEPAY 翼支付: BESTPAY 蘇寧易付寶: SUNING 拉卡拉支付賬戶:LKLACC 網聯小錢包:NUCSPAY  京東錢包:JD

trans_type接入方式MString(2)41:NATIVE((ALIPAY,云閃付支持)
51:JSAPI(微信公眾號支付,支付寶服務窗支付,銀聯JS支付,翼支付JS支付、拉卡拉錢包支付)

71:微信小程序支付

61:APP支付(微信APP支付)

total_amount金額MString(12)單位分,整數型字符
location_info地址位置信息MObject地址位置信息,風控要求必送
busi_mode業務模式CString(8)業務模式: ACQ-收單 不填,默認為“ACQ-收單”
subject訂單標題CString(42)標題,用于簡單描述訂單或商品主題,會傳遞給賬戶端 (賬戶端控制,實際最多42個字符),微信支付必送。
pay_order_no支付業務訂單號CString(64)拉卡拉訂單系統訂單號,以拉卡拉支付業務訂單號為驅動的支付行為,需上傳該字段。
notify_url商戶通知地址CString(128)商戶通知地址,如果上傳,且 pay_order_no 不存在情況下,則按此地址通知商戶(詳見“[交易通知]”接口)
settle_type結算類型CString(4)“0”或者空,常規結算方式,如需接拉卡拉分賬需傳“1”;
remark備注CString(128)
identity_info身份信息CString(1024)實名支付信息,json字符串,如{“identityNo”:”32000000000000000X”,”name”:”張三”}
acc_busi_fields賬戶端業務信息域CObject參見以下acc_busi_fields字段詳細說明,不同的account_type和trans_type,需要傳入的參數不一樣

location_info字段說明

字段名中文名稱是否必填類型說明
request_ip請求方IP地址MString(64)請求方的IP地址,存在必填,格式如36.45.36.95
base_station基站信息CString(128)客戶端設備的基站信息(主掃時基站信息使用該字段)
location緯度,經度CString(32)

商戶終端的地理位置,整體格式:緯度,經度,+表示北緯、東經,-表示南緯、 西經。

經度格式:1位正負號+3位整數+1位小數點+5位小數;

緯度格式:1位正負號+2位整數+1位小數點+6位小數;

舉例:+31.221345,+121.12345

支付寶主掃場景下acc_busi_fields域內容

字段名中文名稱是否必填類型說明
user_id買家在支付寶的用戶idCString(64)支付寶的buyer_user_id ,trans_type為41-NATIVE情況下不需要傳,為51情況下必須傳入
timeout_express預下單有效時間CString(2)預下單的訂單的有效時間,以分鐘為單位。如果在有效時間內沒有完成付款,則在賬戶端該訂單失效。如果不上送,以賬戶端訂單失效時間為準。 建議不超過15分鐘。不傳值則默認5分鐘。
extend_params業務擴展參數CObject支付寶業務擴展參數 ,見說明
goods_detail商品詳情CString(6000)訂單包含的商品列表信息,Json數組。
store_id商戶門店編號CString(32)支付寶收單上送
alipay_store_id(不再使用)支付寶店鋪編號CString(32)支付寶已不再使用該字段
disable_pay_channels支付寶禁用支付渠道CString(32)“credit_group”表示禁用信用卡
business_params商戶傳入業務信息CString(512)商戶傳入業務信息,應用于安全,營銷等參數直傳場景,格式為 json 格式。
示例:{“enable_thirdpar ty_subsidy”:”N”}
min_age允許的最小買家年齡CString(2)買家年齡必須大于等于所傳數值

支付寶extend_params字段說明

字段名中文名稱是否必填類型說明
sys_service_pr ovider_id服務商的PIDCString(64)系統商編號,該參數作為系統商返傭數據提取的依據,請填寫系統商簽約協議的 PID
hb_fq_num花唄分期期數MString(5)支付寶花唄分期必送字段: 花唄分期數 3:3期 6:6期 12:12期
hb_fq_seller_percent賣家承擔手續費比例MString(3)支付寶花唄分期必送字段: 賣家承擔手續費比例,間連模式下只支持傳0。
food_order_type點餐場景類型CString點餐場景類型:qr_order(店內掃碼點餐),pre_order(預點到店自提),home_delivery (外送到家),direct_payment(直接付款),other(其它)

支付寶goods_detail字段說明

字段名中文名稱是否必填類型說明
goods_id
MString(32)商品的編號
alipay_goods_id
CString(32)支付寶定義的統一商品編號
goods_name
MString(256)商品名稱
quantity
MNumber商品數量
price
MPrice商品價格 單位元
goods_category
CString(24)商品類目
categories_tree
CString(128)商品類目樹,從商品類目根節點到葉子節點的類目 id 組成,類目 id 值使用|分 割
body
CString(512)商品描述信息
show_url
CString(256)商品的展示地址

微信主掃場景下acc_busi_fields域內容

字段名中文名稱是否必填類型說明
timeout_express預下單有效時間CString(2)預下單的訂單的有效時間,以分鐘為單位。建議不超過15分鐘。不傳值則默認5分鐘。(微信主掃下單上送的失效時間,是控制prepay_id調起支付的有效時間。微信后臺不會根據失效時間發起關單。 如需關單,調用關單接口。)
sub_appid子商戶公眾賬號IDCString(32)微信分配的子商戶公眾賬號ID,sub_appid(即微信小程序支付-71、公眾號支付-51、微信app支付-61),此參數必傳,只對微信支付有效 工行數字錢包情況下,該字段上送工行的openId 拉卡拉錢包情況下,該字段上送LAKALA的userId
user_id用戶標識CString(64)用戶在子商戶sub_appid下的唯一標識,sub_openid,(即微信小程序支付-71、眾號支付-51),此參數必傳,只對微信支付有效
detail商品詳情CString(1024)單品優惠功能字段,詳見下文說明
goods_tag訂單優惠標記CString(32)訂單優惠標記,微信平臺配置的商品標記,用于優惠券或者滿減使用,accountType為WECHAT時,可選填此字段
attach附加域CString(128)該字段主要用于商戶攜帶訂單的自定義數據。商戶定制字段,直接送到賬戶端。
device_info設備號CString(32)終端設備號(門店號或收銀設備ID),注意:PC網頁或JSAPI支付請傳”WEB”
limit_pay指定支付方式CString(20)no_credit–指定不能使用信用卡支付
scene_info場景信息CString(256)該字段用于上報場景信息,目前支持上報實際門店信息。
limit_payer限定支付CString(8)ADULT:成年人

微信detail字段說明

字段名中文名稱是否必填類型說明
cost_price
CString(12)1.商戶側一張小票訂單可能被分多次支付,訂單原 價用于記錄整張小票的交易金額。 2.當訂單原價與支付金額不相等,則不享受優惠。 3.該字段主要用于防止同一張小票分多次支付,以 享受多次優惠的情況,正常支付訂單不必上傳此參 數。 如:608800
receipt_id
CString(12)商家小票 ID
goods_detail
MObject單品信息,使用Json數組格式提交,見示例
微信goods_detail字段說明
字段名中文名稱是否必填類型說明
goods_id
MString(32)由半角的大小寫字母、數字、中劃線、下劃線中的一種或幾種組成。如“商品編碼”
wxpay_goods_id
CString(32)微信支付定義的統一商品編號
goods_name
CString(256)商品的實際名稱
quantity
Mint用戶購買的數量
price
Mint單位為:分。如果商戶有優惠,需傳輸商戶優惠后的單價

銀聯云閃付主掃場景下acc_busi_fields域內容

字段名中文名稱是否必填類型說明
user_id用戶idCString(64)JS獲取用戶標識返回碼不為34時,必送(詳情請參考用戶標識查詢接口
timeout_express預下單有效時間CString(2)預下單的訂單的有效時間,以分鐘為單位。如果在有效時間內沒有完成付款,則在賬戶端該訂單失效。如果不上送,以賬戶端訂單失效時間為準。 建議不超過15分鐘。不傳值則默認5分鐘。
acq_addn_data_order_info銀聯訂單信息(暫不支持)CString(600)銀聯單品營銷訂單信息
acq_addn_data_goods_info銀聯商品信息(暫不支持)CString(6000)銀聯單品營銷商品信息
front_url銀聯前臺通知地址CString(256)收款方向銀聯推送訂單時上送的前臺通知地址(僅允許為外網地址),用戶完成支付點擊,“返回”后,銀聯通過瀏覽器POST請求到該地址。 當transType為JSAPI,payMode為UQRCODEPAY時,可選填此字段
front_fail_url銀聯失敗交易前臺通知地址CString(256)收款方向銀聯推送訂單時上送的失敗交易前臺通知地址(僅允許為外網地址),用戶支付過程中交易失敗,點擊“返回”后,銀聯通過瀏覽器GET請求到該地址。 當transType為JSAPI,payMode為UQRCODEPAY時,可選填此字段,需與frontUrl同時出現,未上送默認為frontUrl的值
instal_will分期意愿CString(1)0: 不分期(缺省) 1:分期
un_qrcode銀聯二維碼qrcodeCString(1000)商戶二維碼表示的URL

網聯小錢包acc_busi_fields域內容

字段名中文名稱是否必填類型說明
nuc_issr_id小錢包金融機構編號CString(64)

響應報文

字段名中文名稱是否必填類型說明
merchant_no商戶號MString(32)拉卡拉分配的商戶號(請求接口中商戶號)
out_trade_no商戶請求流水號MString(32)請求報文中的商戶請求流水號
trade_no拉卡拉交易流水號MString(32)拉卡拉交易流水號
log_no拉卡拉對賬單流水號MString(14)拉卡拉對賬單流水號
settle_merchant_no結算商戶號MString(32)拉卡拉分配的商戶號
settle_term_no結算終端號MString(32)拉卡拉分配的業務終端號
acc_resp_fields賬戶端返回信息域CObject賬戶端返回信息域

支付寶(41-NATIVE)場景下返回acc_resp_fields域

字段名中文名稱是否必填類型說明
code二維碼信息MString(256)商戶可用此參數自定義去生成二維碼后展示出來進行掃碼支付
code_image二維碼圖片內容MString(256)商戶收款二維碼圖片。Base64編碼,暫無
sub_mch_id子商戶號CString(20)賬戶端子商戶號

支付寶(51-JSAPI)場景下返回acc_resp_fields域

字段名中文名稱是否必填類型說明
prepay_id預下單IdMString(32)預支付交易會話ID
sub_mch_id子商戶號CString(20)賬戶端子商戶號

微信(71-小程序)微信(51-JSAPI)場景下返回acc_resp_fields域

字段名中文名稱是否必填類型說明
prepay_id預下單IdMString(32)預支付交易會話ID
pay_sign支付簽名信息MString(256)簽名
app_id小程序idMString(32)商戶注冊具有支付權限的小程序成功后即可獲得小程序id
time_stamp時間戳MString(32)當前的時間
nonce_str隨機字符串MString(32)隨機字符串
package訂單詳情擴展字符串MString(128)
sub_mch_id子商戶號CString(20)賬戶端子商戶號
sign_type簽名方式MString(32)簽名類型,支持RSA

銀聯二維碼(41-NATIVE)場景下返回acc_resp_fields域

字段名中文名稱是否必填類型說明
code二維碼信息MString(256)商戶可用此參數自定義去生成二維碼后展示出來進行掃碼支付

銀聯二維碼(51-JSAPI)場景下返回acc_resp_fields域

字段名中文名稱是否必填類型說明
redirect_url銀聯JS支付重定向地址MString(256)銀聯JS支付返回重定向地址

翼支付(51-JSAPI)場景下返回acc_resp_fields域

字段名中文名稱是否必填類型說明
best_pay_info翼支付JS參數CString(512)翼支付JS參數(老網聯) best_pay_info、redirect_url兩者有其一
redirect_url翼支付支付重定向地址CString(256)翼支付支付重定向地址(新網聯)

微信(61-APP)場景下返回acc_resp_fields域

字段名中文名稱是否必填類型說明
prepay_id預下單IdMString(32)預支付交易會話ID
pay_sign支付簽名信息MString(256)簽名
app_id移動應用appidMString(32)商戶注冊具有支付權限的安卓/IOSAPP成功后即可獲得移動應用appid
time_stamp時間戳MString(32)當前的時間
nonce_str隨機字符串MString(32)隨機字符串
package訂單詳情擴展字符串MString(128)
sign_type簽名方式MString(32)簽名類型,支持RSA
partner_id從業機構號MString(32)
sub_mch_id子商戶號CString(20)賬戶端子商戶號

示例

請求報文

{
    "out_org_code": "OP00000003",
    "req_data": {
        "acc_busi_fields": {
            "detail": "{"goods_detail":[{"goods_id":"123131311","goods_name":"\u79f0\u91cd\u83dc\u54c","quantity":1,"price":1073},{"goods_id":"223131212","goods_name":"2\u5143\u81ea\u52a9","quantity":1,"price":200}]}",
            "goods_tag": "ceshi",
            "sub_appid": "wx68edd02e",
            "scene_info": "{\"store_info\":{\"id\": \"123\",\"name\": \"456\",\"area_code\": \"2345\",\"address\": \"地址\" }}",
            "user_id": "oO2Dq0ny0C"
        },
        "account_type": "WECHAT",
        "location_info": {
            "request_ip": "123.72.62.189"
        },
        "merchant_no": "8221000506X5",
        "notify_url": "https://testca/notify",
        "out_trade_no": "0000023900289053",
        "term_no": "A04753",
        "total_amount": "50",
        "trans_type": "51"
    },
    "req_time": "20220225222402",
    "version": "3.0"
}{
    "req_data": {
        "merchant_no": "822290070111135",
        "term_no": "29034705",
        "out_trade_no": "KFPT20211018163339745459405",
        "account_type": "UQRCODEPAY",
        "trans_type": "51",
        "total_amount": "100",
        "location_info": {
            "request_ip": "12.34.56.78",
            "base_station": "00 6361   58130",
            "location": "+37.123456789,-121.123456789"
        },
        "busi_mode": "ACQ",
        "subject": "自動化測試",
        "pay_order_no": "",
        "notify_url": "",
        "settle_type": "",
        "remark": "",
        "identity_info": "",
        "promo_info": "",
        "acc_busi_fields": {
            "user_id": "Wek52a9hYY3zXbQ7JSrvZwiPa9lYJ7HyC+MqdjIbrSL21YT1H/v0WrgncHoRmsmZ",
            "timeout_express": "",
            "acq_addn_data_order_info": "",
            "acq_addn_data_goods_info": "",
            "front_url": "",
            "front_fail_url": ""
        }
    },
    "req_time": "20211018163339",
    "version": "3.0",
    "out_org_code": "OP00000003"
}復制

響應報文

{
    "msg": "成功",
    "resp_time": "20211018165606",
    "code": "BBS00000",
    "resp_data": {
        "out_trade_no": "KFPT20211018165606301458020",
        "trade_no": "2021101866210004200101",
        "log_no": "66210004200101",
        "settle_merchant_no": "",
        "settle_term_no": "",
        "acc_resp_fields": {
            "code": "https://qr.test.95516.com/UP02/qrcGtwWeb-web/front/confirmOrder?sessionId=c0b60813735d42838e761e47a84e000a",
            "code_image": "",
            "prepay_id": "",
            "pay_sign": "",
            "time_stamp": "",
            "nonce_str": "",
            "package": "",
            "sign_type": "",
            "redirect_url": "",
            "best_pay_info": ""
        }
    }
}復制



The End