本發(fā)明實施例涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種退款處理方法及裝置。
背景技術(shù):
目前,隨著互聯(lián)網(wǎng)技術(shù)的日益成熟和快速發(fā)展,越來越多的用戶開始傾向于利用互聯(lián)網(wǎng)消費平臺進行消費,提高了商品交易的便捷性,為廣大用戶提供了一種全新的消費方式。
在商品交易的過程中,買家用戶通常需要先通過第三方支付平臺來預(yù)支付所要購買商品的款項,在買家用戶確認(rèn)收到賣家的商品且收到的商品符合商品質(zhì)量要求后,在通過第三支付平臺完成商品款項的支付過程。但是,在實際應(yīng)用中,可能存在買家用戶已生成交易退款且付款成功,但出于種種原因,可能又不想購買該商品了。此時,第三方支付平臺也為用戶提供了相應(yīng)的“退款”流程,買家用戶可以申請退款?,F(xiàn)有技術(shù)中,在第三方支付平臺處理一筆退款的過程中,可能會存在同一筆退款被并發(fā)的多次請求退款,這樣將會出現(xiàn)一筆退款存在多筆主退款單,執(zhí)行多次退款操作的情況,導(dǎo)致退款處理的準(zhǔn)確度降低,退款處理的效率降低。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例的目的是提供一種退款處理方法及裝置,以優(yōu)化退款處理方案,提升退款處理的準(zhǔn)確度和效率。
一方面,本發(fā)明實施例提供了一種退款處理方法,包括:
在檢測到退款事件被觸發(fā)時,生成主退款單,所述主退款單的主退款單號包括當(dāng)前退款業(yè)務(wù)的退款業(yè)務(wù)標(biāo)識,所述退款業(yè)務(wù)標(biāo)識用于唯一標(biāo)識當(dāng)前退款業(yè)務(wù);
根據(jù)所述主退款單生成子退款單以及退款通道;
基于所述退款通道,根據(jù)所述子退款單執(zhí)行退款操作;
其中,在根據(jù)所述子退款單執(zhí)行退款操作步驟中,所述主退款單的退款狀態(tài)根據(jù)所述子退款單的退款狀態(tài)同步更新。
另一方面,本發(fā)明實施例提供了一種退款處理裝置,包括:
主退款單生成模塊,用于在檢測到退款事件被觸發(fā)時,生成主退款單,所述主退款單的主退款單號包括當(dāng)前退款業(yè)務(wù)的退款業(yè)務(wù)標(biāo)識,所述退款業(yè)務(wù)標(biāo)識用于唯一標(biāo)識當(dāng)前退款業(yè)務(wù);
子退款單生成模塊,用于根據(jù)所述主退款單生成子退款單以及退款通道;
退款操作執(zhí)行模塊,用于基于所述退款通道,根據(jù)所述子退款單執(zhí)行退款操作;
其中,在根據(jù)所述子退款單執(zhí)行退款操作步驟中,所述主退款單的退款狀態(tài)根據(jù)所述子退款單的退款狀態(tài)同步更新。
本發(fā)明實施例中提供的退款處理方案,在檢測到退款事件被觸發(fā)時,生成主退款單,所述主退款單的主退款單號包括當(dāng)前退款業(yè)務(wù)的退款業(yè)務(wù)標(biāo)識,所述退款業(yè)務(wù)標(biāo)識用于唯一標(biāo)識當(dāng)前退款業(yè)務(wù),根據(jù)所述主退款單生成子退款單以及退款通道,基于所述退款通道,根據(jù)所述子退款單執(zhí)行退款操作,避免了業(yè)務(wù)系統(tǒng)發(fā)起一筆退款出現(xiàn)存在多筆主退款單,導(dǎo)致一筆退款執(zhí)行多次退款的問題,可以準(zhǔn)確高效的處理退款業(yè)務(wù)。
附圖說明
圖1為本發(fā)明實施例一提供的一種退款處理方法的流程示意圖;
圖2為本發(fā)明實施例二提供的一種退款處理方法的流程示意圖;
圖3為本發(fā)明實施例三提供的一種退款處理裝置的結(jié)構(gòu)框圖。
具體實施方式
下面結(jié)合附圖并通過具體實施方式來進一步說明本發(fā)明的技術(shù)方案。可以理解的是,此處所描述的具體實施例僅僅用于解釋本發(fā)明,而非對本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
在更加詳細(xì)地討論示例性實施例之前應(yīng)當(dāng)提到的是,一些示例性實施例被描述成作為流程圖描繪的處理或方法。雖然流程圖將各步驟描述成順序的處理,但是其中的許多步驟可以被并行地、并發(fā)地或者同時實施。此外,各步驟的順序可以被重新安排。當(dāng)其操作完成時所述處理可以被終止,但是還可以具有未包括在附圖中的附加步驟。所述處理可以對應(yīng)于方法、函數(shù)、規(guī)程、子例程、子程序等等。
實施例一
圖1為本發(fā)明實施例一提供的一種退款處理方法的流程示意圖,該方法可以由退款處理裝置執(zhí)行,其中該裝置可由軟件和/或硬件實現(xiàn),一般可集成在電腦或服務(wù)器等終端中。如圖1所示,本實施例提供的退款處理方法包括:
步驟101、在檢測到退款事件被觸發(fā)時,生成主退款單。所述主退款單的主退款單號包括當(dāng)前退款業(yè)務(wù)的退款業(yè)務(wù)標(biāo)識,所述退款業(yè)務(wù)標(biāo)識用于唯一標(biāo)識當(dāng)前退款業(yè)務(wù)。
其中,該步驟可以包括:在檢測到退款事件被觸發(fā)時,接收退款業(yè)務(wù)模塊發(fā)送的當(dāng)前退款業(yè)務(wù)的退款業(yè)務(wù)標(biāo)識、退款金額和退款場景;根據(jù)所述退款業(yè)務(wù)標(biāo)識、退款金額和退款場景生成主退款單。所述退款業(yè)務(wù)模塊可以為當(dāng)前服務(wù)器中的用于發(fā)起退款的模塊,也可以為其他設(shè)備中的用于發(fā)起退款的模塊,優(yōu)選為當(dāng)前服務(wù)器中的退款業(yè)務(wù)模塊。所述退款業(yè)務(wù)可以為訂單首付了之后需要退款,或者已經(jīng)支付部分或者全部款項后根據(jù)已還賬單需要退款,或者發(fā)生了重復(fù)支付需要退款。本實施例提供的方法將退款處理與具體的業(yè)務(wù)結(jié)構(gòu)和業(yè)務(wù)系統(tǒng)解耦,通過向本服務(wù)器傳入預(yù)先規(guī)定的標(biāo)準(zhǔn)字段就可快速接入本實施例提供的退款處理方法,進行退款處理。所述標(biāo)準(zhǔn)字段是指退款業(yè)務(wù)標(biāo)識、退款金額和退款場景等。
所述檢測到退款事件被觸發(fā)包括:接收到退款業(yè)務(wù)模塊發(fā)送的退款請求,所述退款請求由退款業(yè)務(wù)模塊在檢測到當(dāng)前退款業(yè)務(wù)滿足退款資格時生成;或者,檢測到當(dāng)前退款業(yè)務(wù)為設(shè)定退款業(yè)務(wù),所述設(shè)定退款業(yè)務(wù)包括重復(fù)支付。
示例性的,退款業(yè)務(wù)模塊在接收到用戶發(fā)起的用戶退款請求時,驗證用戶請求退款的當(dāng)前退款業(yè)務(wù)是否滿足退款資格,若滿足退款資格則生成退款請求,將退款請求發(fā)送給服務(wù)器以使服務(wù)器在接收到退款請求后生成主退款單。所述退款資格包括退款金額是否正確,該退款業(yè)務(wù)是否允許退款等。
示例性的,當(dāng)前服務(wù)器在用戶支付完成后同步支付結(jié)果時,若檢測到當(dāng)前業(yè)務(wù)為重復(fù)支付,則自動發(fā)起退款生成主退款單。
所述主退款單號設(shè)置為主退款單的唯一鍵。通過將主退款單號字段設(shè)置為唯一鍵,可以保證主退款單號字段值不會出現(xiàn)重復(fù)?,F(xiàn)有技術(shù)中在同一筆退款被并發(fā)的多次請求退款的情況下,該筆退款是根據(jù)業(yè)務(wù)單號請求退款的,根據(jù)該業(yè)務(wù)單號可在每一次請求退款時生成一個主退款單,導(dǎo)致一筆退款存在多筆主退款單的情況。本實施例通過將主退款單的主退款單號做唯一性處理,利用數(shù)據(jù)庫唯一鍵特性,將主退款單號設(shè)置為唯一鍵,那么在并發(fā)的多次請求退款中的第一次之后的退款請求在生成主退款單之前,服務(wù)器會先查詢數(shù)據(jù)庫中是否存在該筆退款業(yè)務(wù)的主退款單數(shù)據(jù),若查詢結(jié)果為存在則認(rèn)為已發(fā)起過退款,則返回成功;若查詢結(jié)果為不存在,則在執(zhí)行生成第二個主退款單將第二個主退款單單號插入數(shù)據(jù)庫時會由于主退款單號已經(jīng)存在于數(shù)據(jù)庫中,數(shù)據(jù)庫會報主退款單號唯一鍵存在重復(fù)插入的警示,并不會生成該筆退款業(yè)務(wù)的第二個主退款單,這樣就可以避免出現(xiàn)一筆退款存在多筆主退款單,導(dǎo)致一筆退款執(zhí)行多次退款的問題。
所述退款業(yè)務(wù)標(biāo)識包括退款業(yè)務(wù)單號和退款業(yè)務(wù)類型。其中所述退款業(yè)務(wù)單號可以為該商品在交易時生成的業(yè)務(wù)單號,所述業(yè)務(wù)類型可以包括信用卡、電商、支付寶、微信等,所述業(yè)務(wù)類型可以數(shù)字的形式體現(xiàn)在主退款單號中的一位或幾位中。
步驟102、根據(jù)所述主退款單生成子退款單以及退款通道。
在生成子退款單后,還包括將該子退款單的狀態(tài)設(shè)置為有效。所述子退款單可以復(fù)制主退款單的信息,例如退款金額、退款場景等。所述子退款單具有子退款單號,主退款單數(shù)據(jù)中會保存當(dāng)前有效的子退款單號。本實施例中的主退款單對接各業(yè)務(wù)系統(tǒng)發(fā)起退款,可根據(jù)主退款單查詢退款狀態(tài),退款結(jié)果;子退款單用于對接第三方業(yè)務(wù)系統(tǒng),調(diào)用第三方業(yè)務(wù)系統(tǒng)退款接口,執(zhí)行退款操作。一個主退款單可存在多個子退款單,但是一個主退款單只能存在一個有效的子退款單。
步驟103、基于所述退款通道,根據(jù)所述子退款單執(zhí)行退款操作。在根據(jù)所述子退款單執(zhí)行退款操作步驟中,所述主退款單的退款狀態(tài)根據(jù)所述子退款單的退款狀態(tài)同步更新。
其中,所述子退款單的退款狀態(tài)與所述主退款單的退款狀態(tài)可以利用事務(wù)機制保持同步更新。主退款單狀態(tài)機與子退款單狀態(tài)機使用事務(wù)保證一致性,在主退款單狀態(tài)更改前使用事務(wù)鎖住主退款單狀態(tài),防止另外進來的其他進程修改主退款單狀態(tài),保證有效子退款單只存在一個。本實施例通過設(shè)置子退款單,在一筆退款發(fā)生退款失敗時,在保證原有退款數(shù)據(jù)的情況下,可以發(fā)起多次退款。
所述根據(jù)所述子退款單執(zhí)行退款操作包括:根據(jù)所述子退款單調(diào)用第三方業(yè)務(wù)系統(tǒng)退款接口,執(zhí)行退款操作;接收所述第三方業(yè)務(wù)系統(tǒng)返回的退款結(jié)果。其中,所述第三方業(yè)務(wù)系統(tǒng)包括支付寶、微信或者銀行等支付平臺。具體的,在根據(jù)子退款單調(diào)用第三方業(yè)務(wù)系統(tǒng)退款接口后,所述第三方業(yè)務(wù)系統(tǒng)在執(zhí)行完退款操作,將退款金額返回到用戶賬戶之后,可以回調(diào)本服務(wù)器提供的接口,返回退款成功結(jié)果。
根據(jù)所述子退款單執(zhí)行退款操作之后還包括:若退款結(jié)果為失敗,則生成新的子退款單以及新的退款通道;基于所述新的退款通道,根據(jù)所述新的子退款單再次執(zhí)行退款操作。若退款結(jié)果為失敗,還包括:將當(dāng)前子退款單的狀態(tài)設(shè)置為失效。所述新的退款通道可與上一個退款通道相同,也可以不同,所述退款通道可以包括支付寶退款通道、微信退款通道或者銀行退款通道等。所述退款通道可以根據(jù)業(yè)務(wù)類型設(shè)置。
本實施例提供的方法,在檢測到退款事件被觸發(fā)時,生成主退款單,所述主退款單的主退款單號包括當(dāng)前退款業(yè)務(wù)的退款業(yè)務(wù)標(biāo)識,所述退款業(yè)務(wù)標(biāo)識用于唯一標(biāo)識當(dāng)前退款業(yè)務(wù),根據(jù)所述主退款單生成子退款單以及退款通道,基于所述退款通道,根據(jù)所述子退款單執(zhí)行退款操作,避免了業(yè)務(wù)系統(tǒng)發(fā)起一筆退款出現(xiàn)存在多筆主退款單,導(dǎo)致一筆退款執(zhí)行多次退款的問題,可以準(zhǔn)確高效的處理退款業(yè)務(wù)。
實施例二
圖2為本發(fā)明實施例二提供的一種退款處理方法的流程示意圖,本實施例以上述實施例為基礎(chǔ)進行優(yōu)化,提供一種優(yōu)選的實施例。如圖2所示,本實施例的方法包括如下步驟:
步驟201、接收退款業(yè)務(wù)模塊發(fā)起的退款請求,所述退款請求中包括當(dāng)前退款業(yè)務(wù)的退款業(yè)務(wù)標(biāo)識、退款金額和退款場景。
步驟202、根據(jù)所述退款請求生成主退款單,待申請退款,所述主退款單的主退款單號包括當(dāng)前退款業(yè)務(wù)的退款業(yè)務(wù)標(biāo)識,所述退款業(yè)務(wù)標(biāo)識用于唯一標(biāo)識當(dāng)前退款業(yè)務(wù)。
在該步驟之后,所述主退款單的退款狀態(tài)為待申請退款。
步驟203、申請退款,設(shè)置退款通道。
步驟204、生成子退款單,待執(zhí)行退款操作。
在該步驟之后,所述子退款單的退款狀態(tài)為待執(zhí)行退款狀態(tài),所述主退款單的退款狀態(tài)與所述子退款單的退款狀態(tài)同步,也更新為待執(zhí)行退款狀態(tài)。
步驟205、執(zhí)行退款操作。
在該步驟之后,子退款單的退款狀態(tài)為待確認(rèn)退款,所述主退款單的退款狀態(tài)與所述子退款單的退款狀態(tài)同步,也更新為待確認(rèn)退款狀態(tài)。
步驟206、接收外部系統(tǒng)的退款回調(diào),獲取退款結(jié)果。
步驟207、判斷退款結(jié)果是否為成功,若是則執(zhí)行步驟208確定退款失敗,否則執(zhí)行步驟209確定退款成功。
步驟208、確定退款失敗。
若退款結(jié)果為失敗則繼續(xù)申請退款,設(shè)置新的退款通道,生成新的子退款單。
若退款結(jié)果為失敗,則子退款單的退款狀態(tài)為退款失敗,所述主退款單的退款狀態(tài)與所述子退款單的退款狀態(tài)同步,也更新為退款失敗狀態(tài)。
步驟209、確定退款成功。
在該步驟確定退款成功之后,子退款單的退款狀態(tài)為退款成功,所述主退款單的退款狀態(tài)與所述子退款單的退款狀態(tài)同步,也更新為退款成功狀態(tài)。
本實施例提供的方法,通過接收退款業(yè)務(wù)模塊發(fā)起的退款請求,根據(jù)所述退款請求生成主退款單,設(shè)置退款通道申請退款,所述主退款單的主退款單號包括當(dāng)前退款業(yè)務(wù)的退款業(yè)務(wù)標(biāo)識,生成子退款單,執(zhí)行退款操作,接收外部系統(tǒng)的退款回調(diào),獲取退款結(jié)果,避免了業(yè)務(wù)系統(tǒng)發(fā)起一筆退款出現(xiàn)存在多筆主退款單,導(dǎo)致一筆退款執(zhí)行多次退款的問題,可以準(zhǔn)確高效的處理退款業(yè)務(wù)。
實施例三
圖3為本發(fā)明實施例三提供的一種退款處理裝置的結(jié)構(gòu)框圖,該裝置可由軟件和/或硬件實現(xiàn),一般集成在電腦或服務(wù)器中,可通過執(zhí)行退款處理方法來進行退款處理。如圖3所示,該裝置包括:
主退款單生成模塊31,用于在檢測到退款事件被觸發(fā)時,生成主退款單,所述主退款單的主退款單號包括當(dāng)前退款業(yè)務(wù)的退款業(yè)務(wù)標(biāo)識,所述退款業(yè)務(wù)標(biāo)識用于唯一標(biāo)識當(dāng)前退款業(yè)務(wù);
子退款單生成模塊32,用于根據(jù)所述主退款單生成子退款單以及退款通道;
退款操作執(zhí)行模塊33,用于基于所述退款通道,根據(jù)所述子退款單執(zhí)行退款操作;
其中,在根據(jù)所述子退款單執(zhí)行退款操作步驟中,所述主退款單的退款狀態(tài)根據(jù)所述子退款單的退款狀態(tài)同步更新。
在上述實施例的基礎(chǔ)上,所述主退款單生成模塊包括:
當(dāng)前退款業(yè)務(wù)信息接收單元,用于在檢測到退款事件被觸發(fā)時,接收退款業(yè)務(wù)模塊發(fā)送的當(dāng)前退款業(yè)務(wù)的退款業(yè)務(wù)標(biāo)識、退款金額和退款場景;
主退款單生成單元,用于根據(jù)所述退款業(yè)務(wù)標(biāo)識、退款金額和退款場景生成主退款單。
在上述實施例的基礎(chǔ)上,所述檢測到退款事件被觸發(fā)包括:
接收到退款業(yè)務(wù)模塊發(fā)送的退款請求,所述退款請求由退款業(yè)務(wù)模塊在檢測到當(dāng)前退款業(yè)務(wù)滿足退款資格時生成;或者,
檢測到當(dāng)前退款業(yè)務(wù)為設(shè)定退款業(yè)務(wù),所述設(shè)定退款業(yè)務(wù)包括重復(fù)支付。
在上述實施例的基礎(chǔ)上,所述主退款單號設(shè)置為主退款單的唯一鍵。
在上述實施例的基礎(chǔ)上,所述子退款單的退款狀態(tài)與所述主退款單的退款狀態(tài)利用事務(wù)機制保持同步更新。
在上述實施例的基礎(chǔ)上,所述退款操作執(zhí)行模塊根據(jù)所述子退款單執(zhí)行退款操作包括:
根據(jù)所述子退款單調(diào)用第三方業(yè)務(wù)系統(tǒng)退款接口,執(zhí)行退款操作;
接收所述第三方業(yè)務(wù)系統(tǒng)返回的退款結(jié)果。
在上述實施例的基礎(chǔ)上,所述退款業(yè)務(wù)標(biāo)識包括退款業(yè)務(wù)單號和退款業(yè)務(wù)類型。
在上述實施例的基礎(chǔ)上,所述退款操作執(zhí)行模塊還用于:
在根據(jù)所述子退款單執(zhí)行退款操作之后,若退款結(jié)果為失敗,則生成新的子退款單以及新的退款通道;
基于所述新的退款通道,根據(jù)所述新的子退款單再次執(zhí)行退款操作。
上述實施例中提供的退款處理裝置可執(zhí)行本發(fā)明任意實施例所提供的退款處理方法,具備執(zhí)行該方法相應(yīng)的功能模塊,本實施例提供的裝置避免了業(yè)務(wù)系統(tǒng)發(fā)起一筆退款出現(xiàn)存在多筆主退款單,導(dǎo)致一筆退款執(zhí)行多次退款的問題,可以準(zhǔn)確高效的處理退款業(yè)務(wù)。未在上述實施例中詳盡描述的技術(shù)細(xì)節(jié),可參見本發(fā)明任意實施例所提供的退款處理方法。
注意,上述僅為本發(fā)明的較佳實施例及所運用技術(shù)原理。本領(lǐng)域技術(shù)人員會理解,本發(fā)明不限于這里所述的特定實施例,對本領(lǐng)域技術(shù)人員來說能夠進行各種明顯的變化、重新調(diào)整和替代而不會脫離本發(fā)明的保護范圍。因此,雖然通過以上實施例對本發(fā)明進行了較為詳細(xì)的說明,但是本發(fā)明不僅僅限于以上實施例,在不脫離本發(fā)明構(gòu)思的情況下,還可以包括更多其他等效實施例,而本發(fā)明的范圍由所附的權(quán)利要求范圍決定。