直連被掃請求報文
說明:被掃支付場景,可能存在支付中需要用戶輸入密碼的情況。該情況下一般交易會返回“DCP10000”-支付中狀態。在該場景下,建議發起方發起多次查詢,查詢頻率推薦1分鐘內按 5s+5s+5s+5s+10S+10S+20S方式聯機查詢,并保留手工發起查詢的能力(在1分鐘內客戶未完成密碼支付的場景下)
調用地址
使用HTTP協議,POST方式提交。
測試環境: https://test.wsmsd.cn/sit/api/v3/dcp/trans/micropay
生產環境: https://s2.lakala.com/api/v3/dcp/trans/micropay
請求報文
| 字段名 | 中文名稱 | 是否必填 | 類型 | 說明 |
|---|---|---|---|---|
| merchant_no | 商戶號 | M | String(32) | 拉卡拉分配的商戶號 |
| term_no | 終端號 | M | String(32) | 拉卡拉分配的業務終端號 |
| out_trade_no | 商戶交易流水號 | M | String(32) | 商戶系統唯一,不可重復 |
| auth_code | 支付授權碼 | M | String(32) | 掃碼支付授權碼,設備讀取用戶APP中的條碼或者二維碼信息,用戶付款碼條形碼規則見說明 |
| total_amount | 金額 | M | String(12) | 單位分,整數型字符 |
| location_info | 地址位置信息 | M | Object | 地址位置信息,風控要求必送 |
| subject | 訂單標題 | C | String(128) | 標題,用于簡單描述訂單或商品 (賬戶端控制該字段長度,間連方式下該字段小于42位) |
| notify_url | 商戶通知地址 | C | String(128) | 商戶通知地址,如上傳,且 pay_order_no 不存在情況下,且支付響應報文是交易中狀態的場景下,則按此地址通知商戶 |
| store_id | 商戶門店編號 | C | String(32) | 商戶門店編號 |
| store_name | 商戶門店名稱 | C | String(64) | 商戶門店名稱 |
| remark(待上線) | 備注 | C | String(128) | 商戶交易備注信息 |
| acc_busi_fields | 賬戶端業務信息域 | C | Object | 賬戶端業務信息域 |
location_info字段說明
| 字段名 | 中文名稱 | 是否必填 | 類型 | 說明 |
|---|---|---|---|---|
| request_ip | 請求方IP地址 | C | String(64) | 請求方的IP地址,格式如36.45.36.95 request_ip、base_station、location必須上送一個,建議優先送request_ip |
| base_station | 基站信息 | C | String(128) | 客戶端設備的基站信息(主掃時基站信息使用該字段) |
| location | 緯度經度 | C | String(32) | 商戶終端的地理位置,存在必填 格式:緯度,經度,+表示北緯、東經,-表示南緯、 西經,精度最長支持小數點后9位。舉例:+37.123456789,-121.123456789 |
支付寶支付情況下accBusiFields字段說明
| 字段名 | 中文名稱 | 是否必填 | 類型 | 說明 |
|---|---|---|---|---|
| timeout_express | 下單有效時間 | C | String(2) | 下單的訂單的有效時間,以分鐘為單位。如果在有效時間內沒有完成付款,則在賬戶端該訂單失效。如果不上送,以賬戶端訂單失效時間為準。 建議不超過15分鐘。不傳值則默認5分鐘。 |
| extend_params | 業務擴展參數 | C | String(1024) | 支付寶業務擴展參數 ,主要用于花唄分期,見extendParams字段 |
| business_params | 商戶傳入業務信息 | C | String(512) | 商戶傳入業務信息,應用于安全,營銷 等參數直傳場景,格式為 json 格式。 |
| goods_detail | 商品詳情 | C | String(6000) | 訂單包含的商品列表信息,Json格式。 |
| alipay_store_id | 商戶門店編號 | C | String(32) | 支付寶收單上送,送到支付寶store_id參數中 |
| query_options | 支付寶查詢選項 | C | List<> | 支付寶收單上送 |
支付寶extendParams字段說明(該字段類型為String,非object,值為json字符串,需要加轉義)
| 字段名 | 說明 | 必選 | 類型 | 備注 |
|---|---|---|---|---|
| sysServiceProviderId | 服務商的PID | C | String(64) | 系統商編號,該參數作為系統商返傭數據提取的依據,請填寫系統商簽約協議的 PID |
| hbFqNum | 花唄分期期數 | M | String(5) | 支付寶花唄分期必送字段: 花唄分期數 3:3期 6:6期 12:12期 |
| hbFqSellerPercent | 賣家承擔手續費比例 | M | String(3) | 支付寶花唄分期必送字段: 賣家承擔收費比例,商家承擔手續費傳入100,用戶承擔手續費傳入0,僅支持傳入100、0兩種,其他比例暫不支持 100:代表商家貼息 0:代表用戶承擔手續費 |
| dynamicTokenOutBizNo | 外部業務號 | C | String(128) | 填寫alipay.marketing.facetoface.decode.use接口中上送的sence_no字段,類型為String, 枚舉值20170718xxxxxxxx |
| presetPayTool | 支卡通相關參數 | C | String(256) | 業務可根據場景是否需要疊加營銷,選擇以下兩種傳參方式。疊加營銷場景:forceUse-N(支卡通可疊加營銷,使用支卡通金額以異步通知為準)屏蔽營銷場景:forceUse-Y(支卡通不可疊加營銷,使用支卡通金額為傳入的amount) 示例:”{"MERCHANTCARD_ZKT":[{"amount":"10","forceUse":"N"}]}” |
支付寶businessParams字段說明(該字段類型為String,非object,值為json字符串,需要加轉義)
| 字段名 | 說明 | 必選 | 類型 | 備注 |
|---|---|---|---|---|
| scenePayLinkInfo | 支卡通相關參數 | C | String(256) | 所有代扣訂單都必須傳該參數支卡通相關參數,傳固定字符串。bizScene和subBizScene由支付寶側BD提供。 {"bizProduct":"ZCARD","bizScene":"支付寶側分配","subBizScene":"支付寶側分配","bizMode":"MERCHANT_ORDER"} |
支付寶goodsDetail字段說明
| 中文名稱 | 必選 | 類型 | 備注 |
|---|---|---|---|
| goods_id | M | String(32) | 商品的編號 |
| goods_name | M | String(256) | 商品名稱 |
| quantity | M | String(12) | 商品數量 |
| price | M | String(12) | 單位為元 |
| goods_category | C | String(24) | 商品類目 |
| categories_tree | C | String(128) | 商品類目樹,從商品類目根節點到葉子節點的類目 id 組成,類目 id 值使用|分 割 |
| body | C | String(512) | 商品描述信息 |
| show_url | C | String(256) | 商品的展示地址 |
示例: “goodsDetail”:”[{"goods_id":"202202250001","goods_name":"零度可樂330ml","quantity":"1","price":"1.01"}]”
**
微信支付情況下accBusiFields字段說明**
| 字段名 | 中文名稱 | 是否必填 | 類型 | 說明 |
|---|---|---|---|---|
| timeout_express | 下單有效時間 | C | String(2) | 預下單的訂單的有效時間,以分鐘為單位。如果在有效時間內沒有完成付款,則在賬戶端該訂單失效。如果不上送,以賬戶端訂單失效時間為準。 建議不超過15分鐘。不傳值則默認5分鐘。 |
| sub_appid | 子商戶公眾賬號ID sub_appid | C | String(32) | 微信公眾平臺基本配置中的AppID(應用ID),傳入后支付成功可返回對應公眾號下的用戶openid,只對微信支付有效 |
| detail | 商品詳情 | C | String(1024) | 單品優惠功能字段 |
| goods_tag | 訂單優惠標記 | C | String(32) | 訂單優惠標記,微信平臺配置的商品標記,用于優惠券或者滿減使用,accountType為WECHAT時,可選填此字段 |
| scene_info | 場景信息 | C | String(256) | 該字段常用于線下活動時的場景信息上報,支持上報實際門店信息,商戶也可以按需求自己上報相關信息 |
微信detail字段說明
| 字段名 | 中文名稱 | 必選 | 類型 | 備注 |
|---|---|---|---|---|
| cost_price | C | String(12) | 1.商戶側一張小票訂單可能被分多次支付,訂單原 價用于記錄整張小票的交易金額。 2.當訂單原價與支付金額不相等,則不享受優惠。 3.該字段主要用于防止同一張小票分多次支付,以 享受多次優惠的情況,正常支付訂單不必上傳此參 數。 如:608800 | |
| receipt_id | C | String(12) | 商家小票 ID | |
| goods_detail | M | String(1024) | 單品信息,使用 Json 數組格式提交 |
微信goods_detail字段說明
| 字段名 | 必選 | 類型 | 備注 |
|---|---|---|---|
| goods_id | M | String(32) | 由半角的大小寫字母、數字、中劃線、下劃線中的一種或幾種組成。如“商品編碼” |
| goods_name | C | String(256) | 商品的實際名稱 |
| quantity | M | String(12) | 用戶購買的數量 |
| price | M | String(12) | 單位為:分。如果商戶有優惠,需傳輸商戶優惠后的單價 |
響應報文
| 字段名 | 說明 | 必選 | 類型 | 備注 |
|---|---|---|---|---|
| need_query | 是否需要發起查詢 | M | String(32) | 0=不需要 1=需要 當返回1時,代表訂單處理中,商戶需主動發起查詢 |
| out_trade_no | 商戶交易流水號 | M | String(32) | 請求報文中的商戶交易流水號 |
| settle_channel_type | 結算渠道類型 | M | String(16) | 微信:WECHAT 支付寶:ALIPAY |
| trade_no | 平臺交易流水號 | M | String(32) | 平臺交易流水號 |
| acc_merchant_trade_no | 賬戶端商戶交易流水號 | C | String(32) | 賬戶端商戶交易流水號 |
| acc_trade_no | 賬戶端交易流水號 | C | String(32) | 賬戶端交易流水號 |
| account_type | 錢包類型 | M | String(16) | 微信:WECHAT 支付寶:ALIPAY 銀聯:UQRCODEPAY 翼支付: BESTPAY 蘇寧易付寶: SUNING 數字貨幣:DCPAY |
| total_amount | 訂單金額 | M | String(12) | 單位分,整數數字型字符 |
| payer_amount | 付款人實際發生金額 | M | String(12) | |
| acc_settel_amount | 賬戶端應結訂單金額 | M | String(12) | 應結訂單金額,單位分 |
| acc_mdiscount_amount | 商戶優惠金額(賬戶端) | C | String(12) | 賬戶端返回商戶優惠金額,單位分 |
| acc_discount_amount | 賬戶端優惠金額 | C | String(12) | 賬戶端返回賬戶端優惠金額,單位分 |
| trade_time | 交易完成時間 | M | String(14) | 以賬戶端返回時間為準 |
| acc_resp_fields | 賬戶端返回信息域 | C | Object | 賬戶端返回信息域 |
支付寶返回的accRespFields域
| 字段名 | 說明 | 必選 | 類型 | 備注 |
|---|---|---|---|---|
| user_id | 用戶id | M | String(64) | buyer_user_id |
| alipay_store_id | 商戶門店編號 | C | String(32) | |
| fund_bill_list | 交易支付使用的資金渠道 | C | String(4096) | |
| discount_goods_detail | 單品券優惠的商品優惠信息 | C | String(4096) | |
| voucher_detail_list | 本交易支付時使用的所有優惠券信息 | C | String(4096) | |
| enterprise_pay_info | 企業支付信息 | C | String(1024) |
微信返回的accRespFields域
| 字段名 | 說明 | 必選 | 類型 | 備注 |
|---|---|---|---|---|
| openid | openId | M | String(64) | |
| sub_openid | subOpenId | C | String(64) | |
| promotion_detail | 優惠功能信息 | C | String(4096) |
示例1-支付寶全場優惠券
請求報文:
{
"req_data": {
"out_trade_no": "TEST202202280003",
"auth_code": "288576824003652810",
"total_amount": "101",
"location_info": {
"request_ip": "127.0.0.1",
"location": "+37.123456789,-121.123456789"
},
"subject": "測試",
"merchant_no": "8222903XXXXX",
"term_no": "A000XXXX",
"notify_url": "www.test.com"
},
"req_time": "20220215152401",
"version": "3.0"
}復制響應報文:
{
"code": "DCP00000",
"msg": "成功",
"resp_time": "20220228111212",
"resp_data": {
"need_query": "0",
"out_trade_no": "TEST202202280003",
"settle_channel_type": "ALIPAY",
"trade_no": "2022022833210000270002",
"acc_merchant_trade_no": "2022022833210000270002",
"acc_trade_no": "2022022822001405451403529459",
"account_type": "ALIPAY",
"total_amount": "101",
"payer_amount": "1",
"acc_settle_amount": "1",
"acc_mdiscount_amount": null,
"acc_discount_amount": null,
"trade_time": "20220228111212",
"acc_resp_fields": {
"user_id": "2088622957692417",
"alipay_store_id": null,
"openid": null,
"sub_openid": null,
"up_iss_addn_data": null,
"up_coupon_info": null,
"fund_bill_list": "[{\"amount\":\"1.00\",\"fund_channel\":\"MDISCOUNT\"},{\"amount\":\"0.01\",\"fund_channel\":\"ALIPAYACCOUNT\"}]",
"discount_goods_detail": null,
"voucher_detail_list": "[{\"amount\":\"1.00\",\"id\":\"20220228000730024505098Q2ZLR\",\"merchant_contribute\":\"1.00\",\"name\":\"1.00元代金券\",\"other_contribute\":\"0.00\",\"template_id\":\"20220224000730012699006X2YNH\",\"type\":\"ALIPAY_BIZ_VOUCHER\"}]",
"promotion_detail": null
}
}
}復制示例2-支付寶單品券
請求報文:
{
"req_data": {
"out_trade_no": "TEST202202280009",
"auth_code": "287636643163568892",
"total_amount": "101",
"location_info": {
"request_ip": "127.0.0.1",
"location": "+37.123456789,-121.123456789"
},
"subject": "測試",
"merchant_no": "82229035XXXXXX",
"term_no": "A000XXXX",
"acc_busi_fields": {
"goods_detail": "[{\"goods_id\":\"202202280001\",\"goods_name\":\"珍珠奶茶\",\"quantity\":\"1\",\"price\":\"1.01\"}]"
}
},
"req_time": "20220215152401",
"version": "3.0"
}復制響應報文:
{
"code": "DCP00000",
"msg": "成功",
"resp_time": "20220228173410",
"resp_data": {
"need_query": "0",
"out_trade_no": "TEST202202280009",
"settle_channel_type": "ALIPAY",
"trade_no": "2022022833210000340000",
"acc_merchant_trade_no": "2022022833210000340000",
"acc_trade_no": "2022022822001405451404118032",
"account_type": "ALIPAY",
"total_amount": "101",
"payer_amount": "1",
"acc_settle_amount": "1",
"acc_mdiscount_amount": null,
"acc_discount_amount": null,
"trade_time": "20220228173410",
"acc_resp_fields": {
"user_id": "2088712458105450",
"alipay_store_id": null,
"openid": null,
"sub_openid": null,
"up_iss_addn_data": null,
"up_coupon_info": null,
"fund_bill_list": "[{\"amount\":\"1.00\",\"fund_channel\":\"MDISCOUNT\"},{\"amount\":\"0.01\",\"fund_channel\":\"ALIPAYACCOUNT\"}]",
"discount_goods_detail": "[{\"goods_id\":\"202202280001\",\"goods_name\":\"珍珠奶茶\",\"discount_amount\":\"1.00\",\"voucher_id\":\"20220228000730024505098YV6RZ\",\"goods_num\":\"1.0\"}]",
"voucher_detail_list": "[{\"amount\":\"1.00\",\"id\":\"20220228000730024505098YV6RZ\",\"merchant_contribute\":\"1.00\",\"name\":\"1.00元代金券\",\"other_contribute\":\"0.00\",\"template_id\":\"202202280007300129280079KOUX\",\"type\":\"ALIPAY_COMMON_ITEM_VOUCHER\"}]",
"promotion_detail": null
}
}
}復制示例3-支付寶口碑產品券
場景:實現的效果是:秘制豆漿-4905-單價6元 口碑領券后優惠6元,先用支付寶口碑掃掃領券,5元購買了秘制豆漿券,下單后使用支付寶錢包碼支付購買秘制豆漿,訂單金額6元,實際支付金額為0(用了秘制豆漿券)
請求報文:
{
"req_data": {
"out_trade_no": "TEST202203030004",
"auth_code": "289827863255999662",
"total_amount": "600",
"location_info": {
"request_ip": "127.0.0.1",
"location": "+37.123456789,-121.123456789"
},
"subject": "測試",
"merchant_no": "822331058XXXXXXX",
"term_no": "B264XXXXX",
"acc_busi_fields": {
"goods_detail": "[{\"goods_id\":\"4905\",\"goods_name\":\"秘制豆漿(熱)\",\"quantity\":\"1\",\"price\":\"6.00\"}]",
"alipay_store_id": "2909"
}
},
"req_time": "20220215152401",
"version": "3.0"
}復制響應報文:
{
"code": "DCP00000",
"msg": "成功",
"resp_time": "20220303151733",
"resp_data": {
"need_query": "0",
"out_trade_no": "TEST202203030004",
"settle_channel_type": "ALIPAY",
"trade_no": "2022030333210000360023",
"acc_merchant_trade_no": "2022030333210000360023",
"acc_trade_no": "2022030322001438811448057041",
"account_type": "ALIPAY",
"total_amount": "600",
"payer_amount": "0",
"acc_settle_amount": "500",
"acc_mdiscount_amount": null,
"acc_discount_amount": null,
"trade_time": "20220303151733",
"acc_resp_fields": {
"user_id": "2088xxxxxx4438816",
"alipay_store_id": null,
"openid": null,
"sub_openid": null,
"up_iss_addn_data": null,
"up_coupon_info": null,
"fund_bill_list": "[{\"amount\":\"1.00\",\"fund_channel\":\"MDISCOUNT\"},{\"amount\":\"5.00\",\"fund_channel\":\"ALIPAYACCOUNT\"}]",
"discount_goods_detail": "[{\"goods_id\":\"4905\",\"goods_name\":\"秘制豆漿(熱)\",\"discount_amount\":\"6.00\",\"voucher_id\":\"202203030007300281380B7C5COQ\",\"goods_num\":\"1.0\"}]",
"voucher_detail_list": "[{\"amount\":\"6.00\",\"id\":\"202203030007300281380B7C5COQ\",\"memo\":\"測試用,浦東機場店,定向投放,不在店鋪頁展示\",\"merchant_contribute\":\"6.00\",\"name\":\"【必點】秘制豆漿\",\"other_contribute\":\"0.00\",\"purchase_ant_contribute\":\"0.00\",\"purchase_buyer_contribute\":\"5.00\",\"purchase_merchant_contribute\":\"1.00\",\"template_id\":\"20220302000730017404006Z3HMI\",\"type\":\"ALIPAY_ITEM_VOUCHER\"}]",
"promotion_detail": null
}
}
}復制示例4-支付寶口碑代金券
場景:口碑領券后優惠0.2元,0.1元購買了0.2元代金券,購買1.1元商品,實際支付了0.9元。
請求報文:
{
"req_data": {
"out_trade_no": "TEST202203030006",
"auth_code": "288648118310343152",
"total_amount": "110",
"location_info": {
"request_ip": "127.0.0.1",
"location": "+37.123456789,-121.123456789"
},
"subject": "測試",
"merchant_no": "822331058XXXXXXX",
"term_no": "B264XXXXX",
"acc_busi_fields": {
"goods_detail": "[{\"goods_id\":\"1002\",\"goods_name\":\"蔥油拌面\",\"quantity\":\"1\",\"price\":\"1.10\"}]",
"alipay_store_id": "2909"
}
},
"req_time": "20220215152401",
"version": "3.0"
}復制響應報文:
{
"code": "DCP00000",
"msg": "成功",
"resp_time": "20220303152237",
"resp_data": {
"need_query": "0",
"out_trade_no": "TEST202203030006",
"settle_channel_type": "ALIPAY",
"trade_no": "2022030333210000370026",
"acc_merchant_trade_no": "2022030333210000370026",
"acc_trade_no": "2022030322001428471449839391",
"account_type": "ALIPAY",
"total_amount": "110",
"payer_amount": "90",
"acc_settle_amount": "100",
"acc_mdiscount_amount": null,
"acc_discount_amount": null,
"trade_time": "20220303152237",
"acc_resp_fields": {
"user_id": "2088102332328479",
"alipay_store_id": null,
"openid": null,
"sub_openid": null,
"up_iss_addn_data": null,
"up_coupon_info": null,
"fund_bill_list": "[{\"amount\":\"0.90\",\"fund_channel\":\"PCREDIT\"},{\"amount\":\"0.10\",\"fund_channel\":\"MDISCOUNT\"},{\"amount\":\"0.10\",\"fund_channel\":\"ALIPAYACCOUNT\"}]",
"discount_goods_detail": null,
"voucher_detail_list": "[{\"amount\":\"0.20\",\"id\":\"202203030007300247280AJ6XEH7\",\"memo\":\"拉卡拉 測試用,浦東機場店,定向投放,不在店鋪頁展示\",\"merchant_contribute\":\"0.20\",\"name\":\"商家代金券0.2元\",\"other_contribute\":\"0.00\",\"purchase_ant_contribute\":\"0.00\",\"purchase_buyer_contribute\":\"0.10\",\"purchase_merchant_contribute\":\"0.10\",\"template_id\":\"20220302000730017404006Z3KWE\",\"type\":\"ALIPAY_FIX_VOUCHER\"}]",
"promotion_detail": null
}
}
}復制