Welcome to the Industrial Automation website!

NameDescriptionContent
HONG  KANG
E-mail  
Password  
  
Forgot password?
  Register
当前位置:

OMS: The core of the retail e-commerce system

来源: | 作者:佚名 | 发布时间 :2023-12-15 | 330 次浏览: | Share:

1. OMS and middle console

1. OMS

OMS is mainly engaged in the "in-storage and out-storage" of various business documents to quickly transfer and process information with the upstream and downstream systems. Order is its core data, and it is also the part with the largest quantity and the highest efficiency requirements.

In the figure above, the first layer belongs to the internal related systems, such as the commodity system, procurement management, sales orders generated by the front-end shopping process, return orders initiated after sales, and business documents such as receipt - this we can call the "upstream system" or ERP; Of course, OMS should also be part of the ERP system.

OMS is mainly for the processing of orders, including the rapid flow of upstream systems; But the real production is in the warehouse. Therefore, OMS interacts most closely with the WMS system, and the information transmission with the WMS system is completed through the API interface of the warehousing system, which can be called the "downstream system".

OMS is the composition of an intermediate system service. Horizontally, it will transfer data with the financial invoices-inventory system, so it is surrounded by many systems in the middle, and it is not too much to call it an order center.

2. Middle Desk

The figure above is the system architecture introduction of an OMS product that I saw online. The order center here belongs to the business center.

The picture above is based on a friend sent me a plan for the middle desk, made some simplification; Order management is also part of the business center.

2. Related services and functions

1. Message delivery

Commodity information

The OMS is not only responsible for the issuance and upload of sales orders, but also the transmission of purchase order and return order data, as well as the underlying product information.

The receiving of goods is the initial work of WMS, and the inventory of goods can only be generated after the receiving of goods.

Before using WMS, it is necessary to initialize data, that is, basic information such as commodity information, category and supplier, and inventory initialization. In addition, it is necessary to create and maintain information such as reservoir area and cargo location in the WMS system.

If the warehouse needs to be processed and produced according to raw materials, it needs to be configured in the commodity system, such as the father and son commodity configuration, and the raw material configuration of processed products, which will be issued to the WMS system in advance in the form of BOM.

Supplier information

Supplier information is created in the supplier management module, which includes supplier ID, number, name and status. WMS needs to obtain this part of information when receiving goods for data verification.

In addition, there are supplier inventories in the upstream and downstream systems, and the calculation and statistics of the supplier's commodity costs should be carried out.

There are commodity batch data in the WMS system, and the batch code can be created according to the relevant rules to ensure that the commodity can be distinguished when a product is multiple.

receipt

The documents here refer to the business creation purchase order, return order, and also include the user's sales order, return and exchange order.

After the purchase order and return order are created in the SCM system, they need to be synchronized to the warehouse by the OMS, so that the data verification and statistics can be carried out in the WMS system according to the collected purchase order after the supplier arrives. At the same time, receiving arrangements can also be made when the supplier has booked the delivery application before.

After the sales order is paid and dismantled, it should be sent to WMS, and the warehouse can start processing, picking, packing and sending the invoice after receiving it.

The delivery of documents is generally divided into header and row data, and commodity data is verified according to BOM in the WMS system according to the information of the delivered documents.

All these are completed through the API interface, and our original system will save the message information every time the data is sent and uploaded, so that problems can be viewed, analyzed and solved.

Therefore, when data is synchronized between the OMS and WMS, the XML information sent or returned by the interface must be kept intact.

2. Information upload

There should be a return to the data.

In this example, the OMS receives the data and status sent back by the WMS system. After receiving the data and status, the OMS performs some service processing.

Take the purchase order as an example, when the warehouse completes warehousing, the actual warehousing quantity will be sent back; In this case, the OMS system needs to generate the warehouse entry order based on the returned data and update the inventory of the upstream system. At the same time, it is also necessary to calculate the cost and generate the storage flow, because the data flow to a node needs to be calculated, the system is generally through MQ to achieve asynchronous processing.

Similar to message delivery, the returned information details need to be retained. Some of the returned information needs to be parsed and saved in a relational database for statistical query and display.

3. Order distribution coordination

The rules and policies apply when sending and uploading information.

With the outbreak of services, the number of units increases very fast. Therefore, some rules should be configured in the OMS system to speed up data flow, speed up system response, and give users a better representation.

At the same time, there are a lot of states some of which are internal to the warehouse, some of which are business systems, which need to be set up during order processing, which need to be selectively shielded and converted.

4. Order number generation, pulling and dismantling

These services are familiar to everyone, and the single number product is to rely on defined rules to generate a single number that cannot be repeated, which is provided to the front-end shopping process or the background business system call.

At the same time, the rule of the single number will also be associated with the sub-library and sub-table service, so the rule of the single number is very important, it must meet the outbreak of a single amount of growth, can not be repeated, you can save and query order data of different dimensions through the single number.

The pull order is to pull the invoices generated by front-end users to the back-end production database, which is the source of sales order data. For the pull order, you can view the OMS| Order pull previously summarized. The description is not repeated here.

5. Invoice service

Now the paper invoice is less and less, the invoicing information of the electronic invoice does not need to be synchronized to the WMS system, but the calculation of the invoice amount is essential, and needs to be synchronized to the electronic invoice tax platform.

Invoicing services are also required to calculate some after-sale reissues, reissues involved in returns, etc. - although these are closely related to finance, they are inseparable from the OMS system, so they should be part of the OMS.

6. Status update and template

The status of the order is constantly changing according to the fulfillment process, there are changes in the upstream system, there are updates in the WMS system. The whole-process tracking of orders is the statistics and analysis based on the flow of states, and the business department will make improvements according to the life cycle of orders. Status change not only involves logical processing of other business processes, but also requires message notification, such as SMS, email, or wechat.

In the basic service layer of the retail e-commerce system, there is a corresponding gateway to interconnect with the SP. However, the interaction with the user needs to pay attention to the copy and format. Therefore, the template configuration needs to be set in advance so that the OMS can be invoked.

As long as it is related to the user, then we should pay attention to the user experience, not missing or multiple, nor disorderly, to set the relevant rules.

7. Running Water

Here I divide the incoming and outgoing warehouse flow into the OMS system, because it receives all the warehousing operation data, as long as there is an incoming and outgoing warehouse, it involves the increase or decrease of inventory; However, the API interface provided by WMS or the returned data may not distinguish the bill type, which needs to be reprocessed by the upstream system. This problem was needed several years ago when the inventory was checked with the LSCM "warehouse docking platform".

Although the WMS has document types, after LSCM, there are only two major types: outgoing and incoming. The specific information needs to be parsed according to XML packets and reprocessed by the upstream system.

Pipelining is also the basis for the interaction between SCM and the financial system. The financial department calculates the financial cost and generates related statements according to the input and exit process and inventory.

So if you are in charge of OMS, you need to pay attention to this part, some WMS is carried out in the form of adjustment orders, and the documents need to be generated upstream.

8. Inventory

In the retail e-commerce system, inventory is generally divided into three parts, internal ERP, WMS and finance. It has been said before that WMS comes first, ERP is increased or decreased by OMS according to the incoming and outgoing warehouse documents, and finance is generated again according to the incoming and outgoing warehouse flow of OMS.

Therefore, reconciliation is necessary, WMS and ERP work in real time, inventory changes in real time, and there will be time differences, and finance is generated according to the current flow, so there can be accurate ending inventory.

Contact with several WMS systems are through the snapshot backup of the end inventory, if the WMS system is not, need to be developed, as long as there is a pen of data can be calculated the end inventory.

However, when the number of SKUs and the amount of documents is very, very large, the calculation needs time, and the system design needs to be divided into warehouses, categories and other distributed calculation, of course, I only propose here; In the actual production system, we have encountered at most hundreds of thousands of single, hundreds of thousands of SKU scenes a day, and Jingdong and other platforms such as this design is certainly not satisfied, interested students can consider, you can exchange private messages.

Iii. Summary

We all know the term OMS, but in different companies OMS has different functions and covers different services; As long as it is more reasonable to plan according to the business and meet the changes in the business, it is not necessary to care too much about whether it is the order center.

Business-driven technology development, in the design to apply the domain model, which is recently learned from reading, business, technology, data, field, how to do, need to constantly refer to the application cases of successful enterprises combined with actual scenarios to practice.


  • ABB UNS4681V511 3BHE004074R0511 Expansion Unit Module
  • ABB PFTL101B 10KN 3BSE004197R1 high-performance weighing sensor
  • ABB CI532V02 3BSE003B27R1 Communication Module
  • ABB COM0034 control module
  • ABB 216VC626/P1000 HESG324442R112 processor unit relay card
  • ABB 216MB66 HESG324510M1 PLC Memory Expansion Module
  • ABB SPAJ140C overcurrent and ground fault relay
  • ABB DI840 3BSE020836R1 Digital Input Module
  • ABB AI845 3BSE023675R1 Analog Input Module
  • ABB B5LA HENF327886R0001 DC power module
  • ABB P7LA HNEF105323R0002 High Performance Control Module
  • ABB PPC322AEV01 HIEE300697R1 excitation control board
  • ABB REF620C_F NCFNAAAAABC2DNN1XF Feeder Protection and Control
  • ABB P72140-4-0788740 CTI21-P Input/Output Module
  • ABB DYTP123A 61430001-TW Ethernet Connection Module
  • ABB DYSF118B 61430001-XG Communication Interface Module
  • ABB DYPS154C 61430001-YP Serial Communication Module
  • ABB DTCC901B 61430001-FU Ethernet Communication Module
  • ABB SB510 3BSE000861R1 Backup Power Supply 110/230V AC
  • ABB CI535V26 3BSE022161R1 Communication Interface Module
  • ABB RAO02 redundant analog output module
  • ABB RAI02J redundant analog input module
  • ABB 1MRK002133-ABr02 analog-to-digital module
  • ABB UNITRAL1010 3BHE035301R0004 voltage regulator
  • ABB 3BHB019265R0410 Analog Input/Output (I/O) Module
  • ABB UNC4672AV1 HIEE205012R1 multi-functional input/output analog module
  • ABB REC650 1MRK008514-CB multifunctional circuit breaker
  • ABB RER 103 bus connection module
  • ABB REF545KB133AAAA High Performance Protection Relay
  • ABB REC670 1MRK002814-AC High-Performance Relay Module
  • ABB DASD001 3ASC25H241 Industrial Digital Input Module
  • ABB RED670 touchpad film
  • ABB NTAC-02 fiber optic cable
  • ABB XVC768AE102 3BHB007211R0102 Analog Input Module
  • ABB AD02 multi-channel integrated I/O module
  • ABB TU842 3BSE020850R1 module terminal unit
  • ABB APBU-44C 64669982 High Performance Controller Module
  • ABB REM611 panel
  • ABB RED615 panel
  • ABB L003748-AR 3BSX108237R300 Voltage Regulating Control Module
  • ABB COM0034 2RCA023019A0004C control module
  • ABB REU615E-D HBUAEAADNCA1BNN1XD Voltage Protection and Control Relay
  • ABB S-113H 3BHB01808R0003 Hydraulic Control Module
  • ABB REU615 panel
  • ABB TB840A 3BSE037760R1 modular cluster modem
  • ABB XVC770BE102 3BHE02103R0102 Controller Module
  • ABB LTC391AE01 HIEE401782R0001 Interface Module
  • ABB XVC770AE 3BHE006414R0001 fieldbus control system multifunctional module
  • ABB XVC768101 3BHB007211R101 Controller Module
  • ABB PM858-C 3BSE093350R1 Process Control System Module
  • ABB UAC389AE01 HIEE30088R0001 module controller
  • ABB AI02J high-performance I/O module
  • ABB IC698CPE030/IC698CPE020 series battery cover
  • ABB KSD211B 3BHE022455R1101 Input Coupling Unit ICU
  • ABB DSCA190V 57310001-PK Communication Processor
  • ABB GFD563A102 3BHE046836R0102 Analog I/O module
  • ABB XVC768115 3BHB007211R115 Industrial Control Module
  • ABB AI815 3BSE052604R1 I-O Module
  • ABB 5SGY3545L0010 3BHB006485R0001 Controller Module
  • ABB DAPI100 3AST000929R109 Ethernet Communication Interface Module
  • ABB SYN5201A-Z,V277 3BHB006714R0277 Auto single channel Syn
  • ABB KUC755AE117 3BHB005243R0117 System Controller
  • ABB CMA130 3DDE300410 Display Front Panel
  • ABB 07DC92D GJR525220R0101 Digital I/O Module
  • ABB PCD237A101 3BHE028915R0101 excitation control module
  • ABB CI627A 3BSE017457R1 Communication Interface
  • ABB 5SHY4045L0004 3BHB021400R0002 3BHE039203R0101 GVC736CE101 thyristor IGCT
  • ABB SYN5202A Controller Module
  • ABB LWN2660-6E 3BHL000986P7002 Power Conversion Module
  • ABB PFCA401SF 3BSE024387R4 Control Unit
  • ABB HIEE401807R0001 Advanced Power Electronics Module
  • ABB VBS01-EPD High Performance Digital Signal Processing Module
  • ABB LWN2660-6EG 3BHL000986P7002 Industrial Control Module
  • ABB SYN5201A-Z 3BHB006714R0217 Hydraulic Servo Module
  • ABB SYN5200a-Z,V217 SYNCHROTACT5 3BHB006713R0217 Dual channel synchronization device
  • ABB SAM3.0 Surge Arrester Monitoring System
  • ABB UNITROL 1005-0011 ECO 3BHE043576R0011 Automatic Voltage Regulator
  • ABB 3BHE032025R0101 PCD235B101 Exciter Control Module
  • ABB 3BHE006373R0101 XVC769AE101 INVERTER MODULE
  • ABB UFC765AE102 3BHE003604R0102 High-Performance PC Board
  • ABB 3BHE004573R0143 UFC760BE143 INTERFACE BOARD
  • ABB KUC720AE101 3BHB003431R0101 3BHB000652R0101 Controller Module
  • ABB HIEE300927R0101 UBC717AE101 High Voltage Inverter Board
  • ABB UFC721AE101 3BHB002916R0101 PC Board
  • ABB 5SHY4045L0003 3BHB021400 3BHE019719R0101 GVC736BE101 Diode and grid drive circuits
  • ABB 3BHE019719R0101 GVC736BE101 IGCT Module
  • ABB REM620A_F NAMBBABA33E5BNN1XF Protective Relay
  • ABB PPD113B03-26-100110 3BHE023584R2634 Power Distribution Module
  • ABB MB810 Module Mounting locations
  • ABB 3BHL000986P7000 LXN1604-6 POWER SUPPLY
  • ABB VBX01BA I/O Control Module
  • ABB AI03 AI module, 8-CH, 2-3-4 Wire RTDs
  • ABB 1TGE120010R1300 Industrial Control Module
  • ABB 216BM61b HESG448267R1021 Advanced Process Control Module
  • ABB BDD110 HNLP205879R1 Digital I/O Module
  • ABB IEMPU02 Power Supply Module
  • ABB G3FE HENF452697R1 High performance control module
  • ABB G3FD HENF452692R1 High-Performance Industrial Control Module
  • ABB B5EC HENF105077R1 Electronic Motor Protection Relay
  • ABB G3EFa HENF450295R2 Industrial Automation Module
  • ABB B5EEd HENF105082R4 Electronic Motor Protection Relay
  • ABB O3EId HENF452777R3 Digital Output Module
  • ABB NWX511a-2/R HESG112548R12 Industrial Automation Module
  • ABB E3ES Power communication module
  • ABB O3EX HENF315845R2 Industrial Control Module
  • ABB O3EHa HENF315087R2 Digital Output Module
  • ABB E3ED High-Performance Industrial Controller
  • ABB O3EGb HENF315118R2 Digital Output Module
  • ABB O3ED Digital Input Module
  • ABB O3ES HENF445789R1 Digital Input Module
  • ABB G3ESa HENF318736R1 control module
  • ABB 8025-235 Industrial Control Module
  • ABB 216NG61A HESG441633R1 HESG216875/K main control board
  • ABB SCYC51020 58052582G programmable Logic Controller
  • ABB RED670 Line differential protection
  • ABB PP825A 3BSE042240R3 Touch Screen Panel
  • ABB SCYC51020 58052582/G pulse trigger board
  • ALSTOM COP232.2 VME A32/D32.029.232 446 Controller Unit
  • ABB AO2000 LS25 Laser analyzers
  • ABB LM80 Laser level transmitter
  • ABB PM803F 3BDH000530R1 Base Unit 16 MB
  • ABB SD822 3BSC610038R1 Power Supply Device
  • ABB PCD235B1101 3BHE032025R1101 Industrial Control Module
  • ABB AZ20/112112221112E/STD Control Module
  • ABB UAD142A01 3BHE012551R0001 Industrial Control Module
  • ABB 5SHY35L4503 3BHB004693R0001 3BHB004692R0002 5SXE01-0127 main control board
  • ABB FET3251C0P184C0H2 High-Performance Power Module
  • ABB CAI04 Ability ™ Symphony ® Plus Hardware Selector