【电商】电商后台---采购管理模块

news2024/12/24 3:20:15

从供应商的管理到合同的管理,再到商品系统的模块的介绍、商品价格与税率维护策略,不知不觉已经完成了几篇文章,前期的准备工作完成后,接下来就应该进入到采购管理模块了。
几天来一直在构思如何写,写的内容让大家看过觉得真的是那么回事,而不是常规的叙述,本篇就按着我所理解的采购管理过程继续来总结,每次开篇时都力求变化,无奈胸中无墨,只能尽力而为之,请多包涵。

在这里插入图片描述

一、采购管理过程

在这里插入图片描述

流程有正向的采购进货、有逆向的采购退货两个主流程,接触过进销存系统的人都清楚,读到这里你可能在说“你是不是逗我玩呢?”

把上图列在这里的目的是后续我将按照正向、逆向两个大方向去说,在流程内按照我们的工作的过程来一步一步的说明每个过程中涉及到的模块以及个人的一些想法。

先声明一下,我不打算用Viso去画具体的流程了,主要是本人尝试画了一下,涉及的模块多,一个图把全流程和相关子流程呈现出来太复杂,而且大家看的时候也可能会乱(里面肯定有考虑不周的,画的过程不顺畅的),废话少说,我们步入正题。

二、采购进货流程

1. 采购单

采购单的创建无非就是开发一个单据录入界面,录入相关信息,点击保存即可,如下图。
在这里插入图片描述
(1)流程说明

我们要确定的有以下几部分内容:

A 选择供应商:系统自动带出相关信息(此部分在前面供应商管理时已经介绍过)。

B 采购单类型:这个是需要确定的,一般包括正常采购单、赠品采购单、补货采购单以及价格调整单等几种类型。

  • 正常采购单:常规采购订单,多数订单都是这种类型,这里补充说明一下,在供应链中一般都把采购单简称为PO单,即Purchase
    Order的简称。
  • 赠品采购单:此部分商品是供应商赠送给我们的,一般进价是0.01(税务上好像不允许0元采购);如果在商品库存中设有赠品库存,则赠品采购单就入到这里。我个人觉得单据可以区分,库存上区分没有什么卵用。在商品库存中多一个字段来区分,在商品成本计算时或出入库时以及商品库存服务中都会增加复杂度。
  • 补货采购单:为了补货而创建的采购单,手动可以创建采购补货单,系统也可以根据自动补货逻辑创建。
  • 价格调整单:这个是为了调整采购成本的而生成的,一般是根据价格调整单生成的空进空出采购单。

C 选择采购单对应的合同和到货仓库

一个采购单只能对应一个仓库、一个合同;对于合同部分说明一下,由于供应商在一个时间范围内只有一个生效的合同,如果供应商有多种合作模式,可以通过供应商子账号方式实现。

所以在此处,可以不需要选择合同,在财务结算时由FMS财务管理系统部分后续处理。

D 商品录入:主要是确定采购进价,这里默认的是基准进价,采购价不能高于基准进价。如果有促销进价则系统优先选取(对于价格部分可以参照价税管理部分,此处不做解释);

采购进货数量可以手动录入,默认为零,如果按箱进货,可以录入箱数,系统根据箱规自动转换成数量。

(2)采购单的来源

如果按上面做,就太简单了,这里我们要先确定采购单的来源有哪些?

我考虑有以下几种:
在这里插入图片描述
手动创建的过程就是上面的流程,没有问题,只要系统设计的简洁,按提示进行就可以。

A 系统创建的补货单:当系统运行一段时间后,有了数据积累,就需要考虑自动补货了;自动补货需要考虑日均销售数量(一般取4周)、安全库存、在途库存、采购送货时间、供应商生产周期等因素来进行计算建议的补货数量,由系统生成采购单,下面的公式供参考,这个应该属于移动平均法是比较常用的也是最简单的。

建议补货数量=(SUM(前28天销量)/28*目标周转天数-可售库存-采购在途库存-调拨在途-已审核未发货采购数量)

B 以销定采:此种场景一般是对应预售或预订商品的,即用户先下单支付后,系统根据有效的销售订单进行商品集单,生成采购订单,然后由供应商发货到仓库,然后仓库根据用户下单时间依次发货(具体规则可以根据实际场景设计)。

这部分采购单的采购价完全是根据基准进价、促销进价或双方确定的采购价下单(也可以按最近采购价),数量是依赖有效订单的商品数量。

C 供应商直发:此种场景系统创建采购单是有前提的,即合同的结算模式是“按采购额结算”即经销模式;同时这部分商品是不需要入仓是直接发送给C端用户的。

这种场景生成的采购单是根据订单由系统补的,采购价的确定与以销定采类似,一般是在供应商发货时同步生成。

为什么需要生成采购单?主要是为了在财务应付结算,对于代销依赖的是销售订单,这部分可以根据发货时间系统去获取成本价或结算价。

由于商品没有实际的出入仓所以此部分采购订单的出入库是没有成本计算的;这部分涉及到FMS财务系统存货管理及应付结算,有兴趣的可以关注笔者的电商财务系列文章。

D 价格调整单:采购的价格调整单是为了调整采购单上单价错误或采购成本的,就是一种红冲单据。

举个简单的例子:

  1. 采购单P001进货商品A 进价是 10元钱,进了100件,并且已经入库到仓。
  2. 采购与供应商确认进价10元钱单价有问题,与市场偏差太大,经谈判可以调整为9元。
  3. 这时就可以创建一张价格调整单,即A商品原价10元,调价后为9元。
  4. 价格调整单审批后生成两张单据(一出一入),即以10元做个出库,再以9元做个入库,此时成本价是9.
  5. 财务应付结算时,由于已经红冲了10元那张单据,所以实际上是按9元结算。

E 商家到仓:这部分由于是需要入仓,就需要入仓凭证,所以需要创建一种特殊类型的采购单,但是采购价可以根据约定确认。

由于这种单据比较特殊,所以单独列出来,它可以手动创建、也可以系统创建;本篇不对这种类型做过多讨论。

解决了以上的相关问题,我们就创建了一张采购单,此时采购单首先要在内部进行审批,主要是审核采购单价与采购数量;对于系统生成的“价格调整单、直发、以销定采”内部审核流程可以略去。

接着聊下一环节,供应商及仓库的发与收过程。

2. 供应商及仓库

确定与供应商的数据交互方式可以分为两种:

  1. 线下邮件的方式:这也是最原始最简单的,我们内部已经创建了采购单,可以把单据导出来通过Email发给供应商。缺点就不说了,大家都清楚,所以我们采用第二种方式。
  2. 供应商&商家管理平台:这个系统是与供应商&商家进行数据交互的平台,使用者为供应商或商家。它的主要功能应该包括供应商资质、商品资质信息的上传与审核、采购与退货单据确认与发货操作、财务结算对账等。附一张流程图,画得不严谨,您凑合着看吧,里面的流转用不同颜色的线条表示,同时这里包含了采购单创建部分。
    在这里插入图片描述
    流程节点说明

(1)采购单的创建及业务部门内部先审核完毕(审核采购单价与采购数量)。

(2)系统推送已经审核的单据到“供应商&商家管理平台”,供应商审核数量、进价是否有问题,如果需要修改则会与采购沟通,然后修改并审核。

  • 采购数量:供应商商品数量不足,无法保证采购单的数量。
  • 采购进价:由于人工或市场变化等因素,进价需要调整。

(3)业务最终确认采购单信息,并审核,审核通过后,单据状态会同步到“供应商&商家管理平台”为“待发货”。

同时单据信息需要同时下发到WMS系统,以便采购单到货后仓库收货。

(4)供应商根据采购单进行生产发货,同时单据状态会同步到内部SCM系统,在发货前供应商可以根据预计送达时间与仓库进行预约到货的申请。

预约到货管理属于供应链系统中的一个子模块,它是针对于每个仓库的作业能力、空间以及时间等综合考虑是否可以收货,目的就是防止货到了仓库没有人收或没有地存放。

(5)仓库收货:根据采购单及供应商的发货单进行到货确认。在仓库收货时要进行质检,确认入库后将入库信息回传给SCM系统中并生成验收入库单。

对于入库需要明确的是采购单全部入库完成后再统一回传给SCM,还是可以分批次入库,这个涉及到下位的WMS系统与SCM的数据传输问题。

为了简单,建议仓库完成一张采购单的收货后再执行关单操作,这时采购单与验收入库单是1:1的关系,否则是1:N,如果是分批次入库会影响统计查询、财务结算单的复杂度。

(6)最终产生库存,等待商品上架销售,至此采购进货的整体过程完成了。

三、采购退货流程

采购退货就是公司把卖不出去的、有质量问题(收货后)、损坏(可退)的商品返还给供应商的流程。
在这里插入图片描述

1. 采购退货商品确认

**哪些商品可以退还给供应商?**一般在签订合同或下采购单时可以确定是否可退货。

  • 在收货过程中如果发现有问题的商品可以拒收,不做入库处理。
  • 收货后发现商品有质量问题(销售给C用户的商品退货入仓),需要进行退货处理。
  • 销售不出去的商品需要做退货处理。

2. 退货发起方

由于一般的电商公司仓储系统都是用的第三方软件,而且有的仓储也是托管给他们的,我司只有部分人员在仓库。

所以是由仓储发起退货,还是由采购业务部门退货,需要明确(实物在仓,采购业务可能见不到商品)。

我的理解,首先要充分相信仓储人员的诚信度(生鲜水果等商品损耗率很高,可退或销毁),所以应该以实物为准。

由仓库确定可以退货的商品,然后通过商品的状态正转残或商品的库位来调整(正品库位调整到退货区)。
采购业务根据仓储同事反馈,创建采购退货单(仓储也可以直接操作SCM系统录入退货单)

3. 退货价格确认

商品在仓库主要是管理其数量,创建采购退货单时的价格如何确定?

  1. 由采购业务同事与供应商确定可退货的商品价格。
  2. 按采购基准价进行退货,系统自动获取
  3. 按最近一次采购价进行退货,系统自动获取。

4. 退货单流转

  1. 创建采购退货单(价格、数量)
  2. 业务内部审核后同步单据到 “供应商&商家管理平台”
  3. 审核后采购退货单同步到WMS系统进行退货操作
  4. WMS回传退货出库明细到SCM系统,上位系统扣减库存
  5. 最后系统根据出库明细生成验收出库单

其单据的流转与采购进货单相似,没有什么特别的,但这里要补充说明一下,对于采购退货单的商品成本核算。

假设我们采用的是“移动加权成本价”的方法进行成本计算,有两种场景:

(1)采退单参与移动加权成本的核算

移动加权价=(库存数量商品移动加权价-出库数量采退出库单价)/(库存数量-出库数量)

这种方式需要注意最后商品库存金额会不会出现负数的情况。

(2)采退单不参与移动加权成本的核算

采用这种方式,在财务成本核算过程中时,需要进行特殊处理,因为无论商品有多少次出入库,整体上要保证商品存货金额的平衡公式,即:期末金额=期初金额+期间变化的金额。

解释一下,为什么这种方式要特殊处理?

因为采购的退货价没有参与移动加权成本核算,那么对于供应商结算时进货金额-出库金额<>库存金额了。

具体这个不是一句两句能说清楚了,大家有兴趣的可以留言。

四、总结

简单的把采购的相关环节进行了说明,系统的设计要根据业务场景来设计,此部分依赖于供应商、合同、商品各个模块,而且有很多的属性或规则都要提前设置好,供应链称之为链,就是每个部分都是链接在一起,环环相扣的。

采购流程设计的简单流程(不单单是系统操作流程),可以降低供应链的链路从而降低公司的成本,成本降低是盈利的一个重要保证。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/126814.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用天地图加载Geoserver的图层

一、写在前面 在项目中往往使用地图作为底图(比如 天地图卫星图等)&#xff0c;再其上覆盖你的通过geoserver发布自定义图层。本文记录了我的实现方法。 二、过程 2.1 我遇到的难题 遇到难题1&#xff1a;使用无人机拍摄制作的正射影像图有几百MB甚至1个G&#xff0c;直接展示图…

YOLO系列目标检测算法——PP-YOLOE

YOLO系列目标检测算法目录 - 文章链接 YOLO系列目标检测算法总结对比- 文章链接 YOLOv1- 文章链接 YOLOv2- 文章链接 YOLOv3- 文章链接 YOLOv4- 文章链接 Scaled-YOLOv4- 文章链接 YOLOv5- 文章链接 YOLOv6- 文章链接 YOLOv7- 文章链接 PP-YOLO- 文章链接 …

深入浅出面向对象设计模式(Java)

设计模式是什么 设计模式是面向对象的一种思想。 设计模式的基本原则&#xff1f; 单一职责原则开放封闭原则里氏替换原则接口隔离原则依赖翻转原则 基本分类和为什么分为3类&#xff1f; 创建型&#xff08;怎么优雅创建对象&#xff09; 结构性&#xff08;对象的结构&am…

巧用Hibernate 完成多数据库的DDL脚本创建

巧用Hibernate 完成多数据库的DDL脚本创建 spring boot jpa 默认的orm框架就是Hibernate。 由hibernate完成数据库的读写也是主流的方式之一。但是不同数据库之间&#xff0c;建表、建索引的方言语句都有较多差别&#xff0c;很难做到一套SQL在所有数据库上进行执行。 那么Hibe…

C++11之线程库

文章目录一、thread二、mutex三、lock_guard 与 unique_lock1. lock_guard2. unique_lock四、atomic五、condition_variable在 C11 之前&#xff0c;涉及到多线程问题&#xff0c;都是和平台相关的&#xff0c;比如 Windows 和 Linux 下各有自己的接口&#xff0c;这使得代码的…

PHP另类判断 - 数组是一维还是二维

之前有一个需求&#xff0c;需要判断一个数组是一维还是二维数组&#xff0c;如果是二维的话就要使用foreach循环来处理 在网上搜了一下给出来的都是下面所写的方式&#xff1a; if(count($updata) count($updata,1)) {// 一维 } else {// 二维 }首先我要说的是&#xff0c;上…

第三十七章 数论——博弈论(1)

第三十七章 数论——博弈论&#xff08;1&#xff09;一、Nim游戏1、题目2、结论3、结论验证4、代码二、集合——Nim游戏1、问题2、思路—SG()函数2、代码实现&#xff08;记忆化搜索&#xff09;一、Nim游戏 1、题目 2、结论 这里直接说结论&#xff1a; 假设有nnn堆石子&am…

【LeetCode每日一题】——275.H 指数 II

文章目录一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【解题思路】七【题目提示】八【时间频度】九【代码实现】十【提交结果】一【题目类别】 二分查找 二【题目难度】 中等 三【题目编号】 275.H 指数 II 四【题目描述】 给你一个整数数…

Jmeter分布式测试

因为jmeter本身的性能问题&#xff0c;有时候为了尽量模拟业务场景&#xff0c;需要模拟大量的并发请求&#xff0c;此时单台压力机就显得力不从心。针对这个情况&#xff0c;jmeter的解决方案是支持分布式压测&#xff0c;即将大量的模拟并发分配给多台压力机&#xff0c;来满…

三优两重政策解读

什么是三优两重&#xff1a; 优秀大数据产品、优秀大数据解决方案、优秀大数据应用案例和重点大数据企业、重点大数据资源&#xff1b; 1、申报主体 在山东省内注册登记&#xff0c;具备独立承担民事责任的能力&#xff0c;包括各类政府机关、企事业单位及社会组织。 ①.大数据…

【从零开始学习深度学习】33.语言模型的计算方式及循环神经网络RNN简介

目录1. 语言模型1.1 语言模型的计算1.2 nnn元语法的定义2. 循环神经网络RNN2.1 不含隐藏状态的神经网络2.2 含隐藏状态的循环神经网络2.3 应用&#xff1a;基于字符级循环神经网络的语言模型3. 总结1. 语言模型 语言模型&#xff08;language model&#xff09;是自然语言处理…

多媒体服务器核心实现(流管理)

多媒体服务器比较多&#xff0c;实现的功能也很复杂&#xff0c;但其核心就是是转协议&#xff0c;流管理&#xff0c;连接管理&#xff0c;就是一个时序状态机和信令结合的系统。现在的生态有很多现成的轮子&#xff0c;c/c go实现的均可以拿来就用&#xff0c;只需要按一定的…

插槽,依赖注入,动态组件,异步组件,内置组件

插槽&#xff1a;父组件和子组件内容的一个通信 子组件使用<slot>接收父组件传入的内容 如果内容有多个标签时&#xff0c;使用<template>包裹 默认插槽&#xff1a; <template v-slot:default><h2>标题</h2><p>插槽内容</p> <…

Windows——编写jar启动脚本和关闭脚本

文章目录前言启动脚本编写关闭脚本restart.bat 重启脚本前言 假设项目打包后&#xff0c;项目结构为&#xff1a; 此时如果需要再windows环境中进行项目的启动或关闭&#xff0c;需要频繁的手敲命令&#xff0c;很不方便。此时可以编写.bat脚本文件进行项目的控制。 启动脚本…

就业信息追踪|基于Springboot+Vue开发实现就业信息追踪系统

作者主页&#xff1a;编程指南针 作者简介&#xff1a;Java领域优质创作者、CSDN博客专家 、掘金特邀作者、多年架构师设计经验、腾讯课堂常驻讲师 主要内容&#xff1a;Java项目、毕业设计、简历模板、学习资料、面试题库、技术互助 收藏点赞不迷路 关注作者有好处 文末获取源…

双向链表,添加,删除一个节点

文章目录前言一、创建双向链表&#xff08;重命名&#xff09;二、添加一个节点1.添加头指针&#xff1a;2.若 头指针为空3.若头指针非空三、删除一个节点1.找到某节点2.将节点从链表中删除四. 展示所有的节点五. 实验效果总结前言 链表有几种&#xff0c;大致分为&#xff1a…

小程序之会议OA项目--其他界面

目录一、tabs组件及会议管理布局1、tabs.js2、tabs.wxml3、tabs.wxss4、app.wxss5、list.js6、list.json7、list.wxml二、个人中心布局1、ucenter/index/index.js2、ucenter/index/index.wxml3、ucenter/index/index.wxss一、tabs组件及会议管理布局 1、tabs.js // component…

UDS - 15.2 RequestDownload (34) service

15.2 请求下载(34)服务 来自&#xff1a;ISO 14229-1-2020.pdf 15.2.1 服务描述 客户机使用requestDownload服务发起从客户机到服务器的数据传输(下载)。 在服务器接收到requestDownload请求消息之后&#xff0c;服务器应该在发送积极响应消息之前采取所有必要的操作来接收数据…

常用图像像素格式 NV12、NV2、I420、YV12、YUYV

文章目录目的RGBYUVYCrCb采样格式YUV 4:4:4 采样YUV 4:2:2 采样YUV 4:2:0 采样YUV 存储格式YUV422&#xff1a;YUYV、YVYU、UYVY、VYUYYUV420&#xff1a;I420、YV12、NV12,、NV21扩展目的 了解常用图像像素格式 RGB 和 YUV,像素格式描述了像素数据存储所用的格式&#xff0c;…

Spring MVC框架学习

前言:本篇博客将从三个方面来写我们要学习SpringMVC的什么: 连接:当用户在游览器中输入一个url之后,能将这个url请求映射到自己写的程序,也就是访问一个地址时,能够连接到门自己写的服务器. 获取参数:用户访问时如果带一些参数,我该怎样获取.返回数据:执行业务代码之后…