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