Data flow for Order-to-Cash cycle

Data flow for Order-to-Cash cycle  

Hello friends, here we are having one of the contribution from “Devendra Gulve” , very precise and useful explaination on O2C cycle. hope this be helpful to you.

For more details please visit


1. Order Entry 
This is first stage, When the order is entered in the system, it creates a record in order headers and Order Lines table.

  • Enter header details: Once you enter details on the order header and save it or move it to lines, record goes to one table oe_order_headers_all
    • No record exists in any other table for this order till now.
  • Enter Line details for this order: Enter different item numbers, quantity and other details in line tab. When the record gets saved, it goes to one table. Order header details will be linked with line details by order HEADER_ID.

2. Order Booking 
This is next stage, when Order is booked then the Flow status changed from Entered to Booked. At this stage, these below table get affected.

  • oe_order_headers_alL
  • oe_order_lines_all
  • wsh_delivery_details
  • wsh_delivery_assignments

*In shipping transaction form order status remains “Ready to Release”.

At the same time, Demand interface program runs in background and insert into inventory tables mtl_demand.

3. Reservation 
This step is required for doing reservations SCHEDULE ORDER PROGRAM runs in the background and quantities are reserved. Once this program get successfully get completed, the mtl_demand and mtl_reservations table get updated.

4. Pick Release 
Pick Release is the process of putting reservation on on-hand quantity available in the inventory and pick them for particular sales order.

Pick release can be done from ‘Release Sales Order’ form or ‘Pick release SRS’ program can be scheduled in background. In both of these cases all lines of the order gets pick released depending on the Picking rule used. If specific line/s needs to be pick release it can be done from ‘Shipping Transaction form. For this case Pick Release is done from ‘Release Sales Order’ form with Pick Confirm=NO. 
Once pick release is done these are the tables get affected:

  • If step 3 is not done then MTL_RESERVATIONS gets updated now.
  • wsh_new_deliveries
  • wsh_delivery_assignments
  • wsh_delivery_details
  • Mtl_material_transactions_temp

*In shipping transaction form order status remains “Released to Warehouse” and all the material still remains in source sub-inventory. We need to do Move Order Transaction for this order. Till this no material transaction has been posted to MTL_MATERIAL_TRANSACTIONS

5. Pick Confirm/ Move Order Transaction

Items are transferred from source sub-inventory to staging Sub-inventory. Here material transaction occurs.

Order line status becomes ‘Picked’ on Sales Order and ‘Staged/Pick Confirmed’ on Shipping Transaction Form.

  • oe_order_lines_all
  • mtl_transaction_accounts
  • wsh_delivery_details
  • wsh_delivery_assignments

* This step can be eliminated if we set Pick Confirm=YES at the time of Pick Release 

6. Ship Confirm 
Here ship confirm interface program runs in background. Data removed from wsh_new_deliveries. 

The items on the delivery gets shipped to customer at this stage.

  • oe_order_lines_all
  • wsh_delivery_details
  • mtl_transaction_interface
  • mtl_material_TRANSACTIONS
  • mtl_transaction_accounts
  • mtl_demand, MTL_reservations

7. Enter Invoice 

After shipping the order the order lines gets eligible to get transferred to RA_INTERFACE_LINES_ALL. Workflow background engine picks those records and post it to RA_INTERFACE_LINES_ALL. This is also called Receivables interface, that mean information moved to accounting area for invoicing details. Invoicing workflow activity transfers shipped item information to Oracle Receivables. At the same time records also goes in the table RA_INTERFACE_SALESCREDITS_ALL which hold details of sales credit for the particular order.

ra_interface_lines_all (interface table into which the data is transferred from order management) Then Auto-invoice program imports data from this table which get affected into this stage are receivables base table. At the same time records goes in ra_customer_trx_all and ra_customer_trx_lines_all

8. Complete Line 
In this stage order line level table get updated with Flow status and open flag. 

9. Close Order 
This is last step of Order Processing. In this stage only oe_order_lines_all table get updated. These are the table get affected in this step. 


 You will get the details of column values getting updated at different stages and table joins information at

devendra gulve — Expert’s page – click here

special Thanks TO dEVENDRA gULVE ( )

Thanks – Shivmohan Purohit

23 thoughts on “Data flow for Order-to-Cash cycle

  1. Very good article which brings confidence on O2C cycle in technical aspects.

    Please give very common and importantly effected tables in financial modules.


  2. Hi,
    This is wonderful article for people who are looking for Technical Aspects of O2C cycle….

    Please do the same for Other Modules if possible


  3. Dear

    Tell me about the inventory items and Fixed asset items. Can i include my fixed assets in inventory module. Can i depereciate the fixed assets in inventory module. An fixed Assets can be in Inventory and Fixed assets.


Want to give some comment to author ( Shivmohan Purohit )

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s