后端產(chǎn)品實(shí)戰(zhàn)總結(jié):以線下掃碼返現(xiàn)工具為例
從事互聯(lián)網(wǎng)行業(yè)半年多,對(duì)于后端產(chǎn)品逐漸有了一些自己的理解。后端產(chǎn)品,更多的是幫助運(yùn)營和業(yè)務(wù)開發(fā)工具,從而提高其工作效率,或者是幫助前端功能的實(shí)現(xiàn)提供支持。本文就線下掃碼返現(xiàn)工具為例,分享后端產(chǎn)品經(jīng)理的項(xiàng)目經(jīng)驗(yàn)。
- 項(xiàng)目背景:線上流量增速緩慢,為了拓寬獲客渠道,開發(fā)線下掃碼買單的工具??腿司€下掃碼買單,電商平臺(tái)可以返現(xiàn)給相應(yīng)的推薦者。
- 產(chǎn)品定位:線下掃碼購物的工具
- 用戶畫像:門店線下散客,非來自線上渠道的用戶
一、商業(yè)邏輯
- 推薦人向門店的客人展示二維碼,邀請(qǐng)顧客在線上買單
- 顧客線上買單
- 根據(jù)顧客的消費(fèi)額度 一定比例的返現(xiàn)給推薦人
- 推薦人得到物質(zhì)激勵(lì) 觸發(fā)下一次推薦行為
- 平臺(tái)獲得更多的線下訂單
小結(jié):線下掃碼返現(xiàn)的商業(yè)邏輯較為簡(jiǎn)單即平臺(tái)讓利給推薦者,驅(qū)動(dòng)推薦者為平臺(tái)拉取線下的用戶
二、功能實(shí)現(xiàn)
線下掃碼返現(xiàn)工具功能的實(shí)現(xiàn)主要分為三個(gè):二維碼的生成、APP頁面的參數(shù)傳遞、返現(xiàn)功能的實(shí)現(xiàn)。
1. 二維碼的生成
二維碼的生成,從前端看用戶只有兩個(gè)動(dòng)作,輸入手機(jī)號(hào),生成二維碼。但是后端卻相對(duì)復(fù)雜的多,具體流程如下:
- 錄入手機(jī)號(hào)
- 手機(jī)號(hào)正則校驗(yàn),如果校驗(yàn)成功,進(jìn)入下一步;如果校驗(yàn)失敗,提示用戶重新輸入正確手機(jī)號(hào)
- 根據(jù)正確的手機(jī)號(hào)調(diào)用相關(guān)接口,返回對(duì)應(yīng)的用戶賬戶
- 賬戶校驗(yàn),如果接口返回賬戶,進(jìn)入下一步;如果接口沒有返回賬戶,提示用戶無對(duì)應(yīng)賬號(hào)
- 新建數(shù)據(jù)表,將對(duì)應(yīng)的用戶賬戶寫進(jìn)該數(shù)據(jù)表里(白名單)
- 將用戶賬號(hào)添加到APP的頁面鏈接的URL中(記用戶賬戶的參數(shù)為recommenderid)
- 根據(jù)頁面的鏈接,生成對(duì)應(yīng)的二維碼
小結(jié):在前端生成二維碼的過程中,后端做了很多用戶看不出來的操作,包括數(shù)據(jù)的校驗(yàn)、接口的調(diào)用、數(shù)據(jù)表的生成、APP相關(guān)參數(shù)的拼接等。這些操作對(duì)于整個(gè)項(xiàng)目閉環(huán)的實(shí)現(xiàn)都很重要,缺少任何一步都會(huì)影響整個(gè)功能的實(shí)現(xiàn)。
2. APP頁面參數(shù)的傳遞
- APP產(chǎn)品首頁的URL中帶入?yún)?shù)recommenderid
- APP產(chǎn)品sku詳情頁帶入?yún)?shù)recommenderid
- 訂單填寫頁帶入?yún)?shù)recommanderid
- 訂單生成的時(shí)候 訂單表增加參數(shù)recomanderid
小結(jié):APP各級(jí)頁面參數(shù)的傳遞,是為了在訂單生成的時(shí)候可以記錄到推薦人的賬戶信息,從而在之后的返現(xiàn)環(huán)節(jié)可以成功的把返現(xiàn)的錢打到推薦人的賬戶上。
3. 返現(xiàn)功能的實(shí)現(xiàn)
以上,我們完成了二維碼的生成和APP頁面參數(shù)的傳遞,接下來就要講講整個(gè)掃碼返現(xiàn)閉環(huán)中最重要的返現(xiàn)功能的實(shí)現(xiàn)過程了。如下圖所示,返現(xiàn)主要有以下8個(gè)步驟,簡(jiǎn)單的流程示意圖如下所示。
1. 每隔N小時(shí)輪詢N小時(shí)內(nèi)已支付的訂單
2. 判斷該訂單表里的字段recommenderid是否空,如果非空,說明該訂單可能源自掃碼訂單,進(jìn)行下一步;如果字段recommenderid為空,則說明該訂單來源不是掃碼訂單,返現(xiàn)流程結(jié)束。
3. 判斷訂單號(hào)對(duì)應(yīng)的返現(xiàn)關(guān)聯(lián)表里面的返現(xiàn)狀態(tài),如果返現(xiàn)關(guān)聯(lián)表里面的返現(xiàn)狀態(tài)是已返現(xiàn),說明該訂單已經(jīng)返現(xiàn),結(jié)束返現(xiàn)流程;如果返現(xiàn)關(guān)聯(lián)表里面的返現(xiàn)狀態(tài)是未返現(xiàn),則執(zhí)行下一步。
4. 判斷recommenderid是否在白名單里(白名單在二維碼生成環(huán)節(jié)生成,因?yàn)锳PP鏈接首頁二維碼的生成是通過URL拼接參數(shù)的方式實(shí)現(xiàn),所以有可能別的入口也會(huì)帶入相同的參數(shù),因此需要用返現(xiàn)白名單做一個(gè)二次校驗(yàn),以確保recommenderid是我們自己創(chuàng)建的)。如果存在,則進(jìn)行下一步;如果不存在,則結(jié)束返現(xiàn)流程。
5. 判斷recommenderid是否在黑名單里(黑名單的作用是刪除某些刷單的推薦者,此處的刷單是指在掃碼的渠道下單的用戶,支付成功返現(xiàn)后又取消訂單的行為),如果存在,結(jié)束返現(xiàn)流程;如果不存在,進(jìn)入下一步。
6. 根據(jù)相關(guān)的業(yè)務(wù)規(guī)則,配置返現(xiàn)金額
7. 調(diào)用返現(xiàn)接口,傳入主要參數(shù)訂單號(hào)、recommenderid、返現(xiàn)金額等
8. 根據(jù)接口返回的結(jié)果,修改返現(xiàn)關(guān)聯(lián)表的返現(xiàn)狀態(tài)。如果返現(xiàn)成功,則更改返現(xiàn)關(guān)聯(lián)表中的返現(xiàn)狀態(tài)為返現(xiàn)成功;如果返現(xiàn)失敗,則更改返現(xiàn)關(guān)聯(lián)表中的返現(xiàn)狀態(tài)為返現(xiàn)失敗。
總結(jié)
從前端看,一個(gè)生成二維碼的頁面,輸入手機(jī)號(hào),點(diǎn)擊生成二維碼,用戶掃碼下單、支付成功就結(jié)束了,但是后端卻做了很多事情。
在一個(gè)完整的返現(xiàn)流程中,包括二維碼的生成、參數(shù)的落地、返現(xiàn)功能的實(shí)現(xiàn)三個(gè)大的步驟。
在整個(gè)流程中,做了多次校驗(yàn)和判斷和接口的調(diào)用。每一個(gè)校驗(yàn)、判斷、接口調(diào)用,都會(huì)影響整體返現(xiàn)閉環(huán)的功能實(shí)現(xiàn)。前端一個(gè)小小的功能,都需要后端一個(gè)完整的閉環(huán)流程的支撐。最后,本文從實(shí)戰(zhàn)的角度介紹了具體的后端項(xiàng)目經(jīng)歷,希望能夠和大家一起學(xué)習(xí)進(jìn)步。
本文由 @我是范甘迪 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載
題圖來自 Unsplash ,基于 CC0 協(xié)議
- 目前還沒評(píng)論,等你發(fā)揮!