Java生鲜电商平台-优惠券系统设计详解

时间:2023-01-20 19:38:22

Java生鲜电商平台-优惠券系统设计详解

优惠券作为电商最常用的营销手段,对于商家而言可以起到拉新、促活、提高转化的作用,对用户而言也可以获得实惠,今天就来谈谈优惠券系统的设计逻辑。

我对于优惠券系统的理解就是:创建什么样的优惠券,发给哪些人?所以Java生鲜电商平台优惠券系统主要分为两大块:优惠券的创建&优惠券的发放。

优惠券的创建

优惠券的创建可以理解为:需要创建什么样的优惠券?即要设置优惠券的基本属性:优惠券的名称、面额和类型、有效期、使用范围、互斥性、使用平台。

优惠券名称

优惠券当然要有名字啦,比如:感恩节回馈券、周年庆券等等

面额和类型

优惠券根据面额可以分为:固定面额(满减券、立减券)和浮动面额(折扣券)。

满减券:满XXX减XX,订单的金额必须达到满减金额才可以使用

立减券:没有使用限制,下单可以直接抵扣券的面额,如果订单金额低于券的面值,支付0元就可以了。

折扣券:根据订单金额进行打折的券,如8折券,用户需要支付的金额=订单金额*0.8,另外针对折扣券也可以设置使用门槛,比如8折券,满500可用,最高可抵扣100元。

随机券:是一种比较特殊的优惠券,用户领取之前不知道优惠券的面额以及使用限制,领取之后才知道领取的优惠券面额以及使用限制。

有效期

优惠券的有效期限,只能在有效期内使用,一般有两种设置方式:1.领取后xx天有效,这类主要用于长期活动,比如美团外卖的订单分享活动长期有效,用户领取优惠券后3天内可使用;2.固定有效期限,这类主要用于固定日期的活动,比如双十一天猫发放的优惠券,仅限于11月11日使用。

使用范围

优惠券可以使用的范围,一般限制品类、业务、商户、单品、地域等,可根据自己平台的运营情况进行设置。

品类:主要限制在某些品类下可使用,比如京东的女装品类券就只能在购买女装的时候使用,购买其他品类就无法使用。全品券就是不限制品类的券。品类针对的是商品维度的限制。

业务:主要限制在某些业务下可使用,比如美团的外卖优惠券只能在点外卖的时候使用,不能在跑腿业务下使用。业务是针对业务维度先的限制。

商户:平台类的电商,上面有很多商户,商户可以发自己的商户券,A商户发的券就只能在购买A商户的商品时使用,不能用于其他商户。针对商户进行限制。

单品:使用范围比较窄,只能在购买某个单品的时候使用。

地域限制:哪些城市城市可以用?

互斥性

互斥性决定了优惠券能不能和其它的优惠券或者优惠活动叠加。比如京东的全品券可以和店铺券叠加使用,但是不能其它全品券叠加;还有如果某件商品参与了其他活动(比如全场满2件打9折,3件打8折),是否还可以继续使用优惠券?

使用平台

主要针对平台进行限制,一般起到导流的作用,比如luckin coffee的新人免单券只能在App上使用,无法在微信小程序使用,这样就可以促使用户去下载App,也可以规避掉刷新人券的情况(App可以根据设备号去限制,一台设备只能使用一张新人券、微信小程序无法获取设备号,限制设备)。

 
Java生鲜电商平台-优惠券系统设计详解
 

优惠券的发放

优惠券的方法简单理解为,就是将券发放给什么样的人?详细一点就是:将优惠券在什么时间内?用什么样的方式?发给什么人?每个人发多少?我们可以将这个优惠券的发放过程理解为一个活动。

所有优惠券的发放要设置这几个条件:活动名称、发放时间、发放对象、发放形式、发放数量、领取限制。

活动名称

活动当然要有名称啦,比如圣诞节感恩回馈,周年店庆等等

发放时间

这个发放需要持续多长时间?从什么时间开始到什么时间结束? 发放时间和优惠券有效期不一样,发放时间是指用户可以获取优惠券的时间,优惠券有效期是指用户领取到优惠券在什么时间内可以使用。

比如天猫双十一期间。用户从11月1日开始就可以领取优惠券,一直到11月11日结束,但是领取到的优惠券只能在11月11日使用,那么活动时间就是11月1日-11月11日,优惠券的有效期就是11月11日0:00分-11月11日23:59分

发放对象

哪些人可以领取?一般可以划分为用户属性、地域属性、用户行为等

用户属性(用户标签):可以根据RFM模型(用户价值模型)对平台用户进行分类,针对性的进行发券,还可以添加一些自身业务特性的属性。

地域属性:发给哪些城市的人?比如业务新扩展到了一个城市,发放的时候仅该城市的人可领取。

用户行为:用户满足一定行为之后发放。比如给30天未登录的用户发放召回优惠券,挽回流失用户。

发放形式

通过什么方式将优惠券发给用户?一般有4类:自动发放、手动领取、兑换码发放、手动发放

自动发放:满足条件的用户,系统自动会将优惠券发放到账户里面,比如新人注册送券,新用户注册之后,系统自动将优惠券发放到账户中。

手动领取:需要用户手动领取的优惠券,比如京东的领券中心,需要用户自己去领取优惠券。

兑换码发放:分为通用兑换码和非通用兑换码。通用兑换码是指这个兑换码可以被多次使用,比如Uber之前做的活动,圣诞节期间将兑换码通过图文消息推送出来,用户输入:圣诞快乐,就可以领取优惠券;非通用兑换码是指该兑换码只可被使用一次,一般用于异业合作,直接将兑换码批量导出给对方进行发放,也可以用户线下活动发放优惠券等。

手动发放:管理员在后台给指定的用户直接发放优惠券,比如用户对服务不满意产生了投诉,为了安抚用户,可以主动给用户发一张优惠券。

发放数量

总共计划发放多少张优惠券?

领取限制

符合活动对象的用户,每人每天可领取几次优惠券?活动期间累计可领取几次?

 
Java生鲜电商平台-优惠券系统设计详解
 

优惠券的创建配置

 
Java生鲜电商平台-优惠券系统设计详解
 
  • 优惠券名称:对用户展示,为了保证展示效果,需要限制输入字数。
  • 类型与面额
  • 立减券:只需要配置立减金额即可,立减券没有使用限制,即使订单金额低于券的面额也可以使用。
    -- 满减券:需要配置满减金额和优惠券面值,订单金额必须大于等于满减金额才可以使用。假设用户有一张满30元减30元的满减券和一张30元的立减券,当用户的订单金额≥30元的时候,两张都可用,但是如果用户的订单金额不足30元,就只可以用立减券。要注意立减券和满减券的区别。
    -- 折扣券:需要配置折扣值和折扣限制。折扣限制主要是使用门槛和折扣优惠上限。
    -- 随机券:可用分成多个金额区间,先设置每个金额区间的总概率,然后在区间内进行随机,这样有利于控制成本,可用将低面额的区间比例做大一些,大部分用户随机到的金额就会比较小。 设置的时候,可用根据需求灵活配置。
  • 优惠券的有效期
    -- 固定有效期,设置之后所有用户领到该优惠券的有效时间段是一样的。
    -- 相对有效期,根据用户领取优惠券的时间而定。所有用户领取到优惠券之后,可用时长是一样的。
  • 使用范围
    -- 可用业务,根据自己平台的业务设置,这里应该包含平台的所有业务。
    -- 可用品类,一般电商会设置品类,根据自身业务,品类可分多个层级,可设置到最小的品类层级,另外可以直接设置商品ID来创建单品券。
    -- 可用城市,设置优惠券的可用城市。
  • 互斥性
    -- 互斥优惠券,可以设置与所有优惠券互斥,也可以设置与部分优惠券互斥(输入互斥的优惠券ID即可)。如果不设置互斥,就默认与所有优惠券可叠加。
    -- 互斥活动,可以设置与所有活动互斥,也可以设置与部分活动互斥(输入互斥的优惠券ID即可)。如果不设置互斥,就默认与所有活动可叠加。
  • 可用平台,对应优惠券可以使用的平台。

优惠券的发放配置

活动名称

活动名称主要用于优惠券活动的管理,内部标识,不会对用户展示。

发放时间

开始时间:活动开始时间
结束时间:活动结束时间
一般精确到日即可,仅在此期间卡与领取,设置的时间需要和优惠券的有限期做对比,防止发放出已过期的优惠券。此对比由系统判断。

发放对象

  • 按用户属性发放
     
    Java生鲜电商平台-优惠券系统设计详解
  1. 用户属性可以是会员等级、或者系统/人工根据业务给用户打的标签,当选择多项的时候,发放对象取这些选项的并集。
  2. 按用户属性发放的时候,发放形式有四种:
    2.1 自动发放:活动生效后,系统自动为符合条件的用户发放
    2.2 手动领取:活动生效后,需要符合条件的用户手动领取(一般需要有领取入口,可设计专题活动或者商品详情页面放置领券入口)
    2.3 通用兑换码:活动生效后,符合条件的用户可以输入通用兑换码兑换优惠券(需要前台设计优惠券兑换功能)
    2.4 普通兑换码:创建活动后,系统自动生成兑换码,可将兑换码发给指用户,用户使用兑换码进行兑换优惠券(仅符合条件的用户可以兑换)
  3. 领取限制:通过活动期间每人每天限制以及累计领取量限制,可以组合多种玩法,比如每日签到领取优惠券等。
  • 按地域发放
     
    Java生鲜电商平台-优惠券系统设计详解
  1. 用户地域一般按照省市划分,精确到市级即可(可以只显示已开通业务的城市供选择)
  2. 发放形式、发放数量、领取限制同按用户属性发放
  • 按用户行为发放
     
    Java生鲜电商平台-优惠券系统设计详解
  1. 用户行为根据自身业务定制。如注册、首次下单、首次分享、超过30天未登录等等,即可用来拉新,也可以用来传播或者流失用户召回。
  2. 发放形式、发放数量、领取限制同按用户属性发放
  • 按用户发放
     
    Java生鲜电商平台-优惠券系统设计详解
  1. 按用户账号发放,可以直接输入用户账号,也可以批量导入。活动生效后,系统会将优惠券自动下发到用户账号中。
  2. 每人发放数量决定了每人发放的优惠券数量。

优惠券发放通知

可设置短信通知、App推送。

 
Java生鲜电商平台-优惠券系统设计详解

短信通知需要提示字数和短信条数,一般70个字为一条短信,如果超过70各自就会被拆分为两天,收费也是2条短信的价格。
另外还可以设置微信模板消息通知。(需要关注自己官方微信公众号并且绑定用户账号的用户才可以接收到)

联系QQ:137071249

QQ群:793305035

Java生鲜电商平台-优惠券系统设计详解的更多相关文章

  1. Java开源生鲜电商平台-盈利模式详解(源码可下载)

    Java开源生鲜电商平台-盈利模式详解(源码可下载) 该平台提供一个联合买家与卖家的一个平台.(类似淘宝购物,这里指的是食材的购买.) 平台有以下的盈利模式:(类似的平台有美菜网,食材网等) 1. 订 ...

  2. Java生鲜电商平台-优惠券功能设计与开发(小程序/APP)

    Java生鲜电商平台-优惠券功能设计与开发(小程序/APP) 说明:Java生鲜电商平台-优惠券功能设计与开发(小程序/APP) 目录 1.项目背景与需求分析 2.需求目的与功能点列表 3.业务逻辑 ...

  3. Java生鲜电商平台-优惠券系统的架构设计与源码解析

    Java生鲜电商平台-优惠券系统的架构设计与源码解析 电商后台:实例解读促销系统 电商后台系统包括商品管理系统.采购系统.仓储系统.订单系统.促销系统.维权系统.财务系统.会员系统.权限系统等,各系统 ...

  4. Java开源生鲜电商平台-优惠券设计与架构(源码可下载)

    Java开源生鲜电商平台-优惠券设计与架构(源码可下载) 说明:现在电商白热化的程度,无论是生鲜电商还是其他的电商等等,都会有促销的这个体系,目的就是增加订单量与知名度等等 那么对于Java开源生鲜电 ...

  5. Java生鲜电商平台-生鲜系统中商品订单系统售后系统设计

    Java生鲜电商平台-生鲜系统中商品订单系统售后系统设计(服务订单履约系统) 说明: 电商之下,我们几乎能从电商平台上买到任何我们日常需要的商品,但是对于很多商品来说,用户购买发货后,只是整个交易流程 ...

  6. Java生鲜电商平台-商城优惠券设计要点复盘与总结

    Java生鲜电商平台-商城优惠券设计要点复盘与总结 Java生鲜电商平台本文将从优惠券设计用户端,需求端,业务流程全方案解析优惠券设计方案 为什么要设计优惠券 设计优惠券的核心:拉新和促活 新产品上线 ...

  7. Java生鲜电商平台-SpringCloud分布式请求跟踪系统设计与实践

    Java生鲜电商平台-SpringCloud分布式请求跟踪系统设计与实践 Java生鲜电商平台微服务现状 某个服务挂了,导致上游大量报警,如何快速定位哪个服务出问题? 某个核心挂了,导致大量报错,如何 ...

  8. Java生鲜电商平台-Java后端生成Token架构与设计详解

    Java生鲜电商平台-Java后端生成Token架构与设计详解 目的:Java开源生鲜电商平台-Java后端生成Token目的是为了用于校验客户端,防止重复提交. 技术选型:用开源的JWT架构. 1. ...

  9. Java生鲜电商平台-积分,优惠券,会员折扣,签到、预售、拼团、砍价、秒杀及抽奖等促销模块架构设计

    Java生鲜电商平台-积分,优惠券,会员折扣,签到.预售.拼团.砍价.秒杀及抽奖等促销模块架构设计 说明:本标题列举了所有目前社会上常见的促销方案,目前贴出实际的业务运营手段以及架构设计,包括业务说明 ...

随机推荐

  1. CSS float

    我们来看看CSS重要属性--float. 以下内容分为如下小节: 1:float属性 2:float属性的特性     2.1:float之文字环绕效果 2.2:float之父元素高度塌陷 3:清除浮 ...

  2. angularJS支持的事件

    AngularJS提供可与HTML控件相关联的多个事件.例如ng-click通常与按钮相关联.以下是AngularJS支持的事件. ng-click ng-dbl-click ng-mousedown ...

  3. windows下安装laravel简单步骤以及碰到的问题

    1.下载并安装composerhttp://pkg.phpcomposer.com/ ========================================================= ...

  4. jstack使用-倒出线程堆栈

    jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使 ...

  5. 隐藏gvim中的工具栏和菜单栏

    在vim的配置文件.vimrc中添加如下代码: "Toggle Menu and Toolbar set guioptions-=m set guioptions-=T map <si ...

  6. 文件操作类CFile

    CFile file; CString str1= L"写入文件成功!"; wchar_t *str2; if (!file.Open(L"Hello.txt" ...

  7. swift 弹窗

    直接拷贝使用即可 let alert = UIAlertController(title:nil,message:"输入不能为空",preferredStyle: .Alert) ...

  8. 开源Math&period;NET基础数学类库使用&lpar;13&rpar;C&num;实现其他随机数生成器

    原文:[原创]开源Math.NET基础数学类库使用(13)C#实现其他随机数生成器                本博客所有文章分类的总目录:http://www.cnblogs.com/asxiny ...

  9. JAVA学习:内部类

    一.内部类的访问规则: 1.内部类可以直接访问外部类中的成员,包括私有.格式为外部类名.this 2.外部类要访问内部类,必须建立内部类对象. 代码: class Outer { private in ...

  10. Segments POJ 3304 直线与线段是否相交

    题目大意:给出n条线段,问是否存在一条直线,使得n条线段在直线上的投影有至少一个公共点. 题目思路:如果假设成立,那么作该直线的垂线l,该垂线l与所有线段相交,且交点可为线段中的某两个交点 证明:若有 ...