The published document gives overall view of OTC, is the end-to-end business process for receiving and processing customer orders. It also gives accounting and technical insight for Oracle application R12 OTC cycle.
1. End to End overview of ERP systems
- Chetan Khanzode
Order to Cash
1
2. Overview
Order to Cash, is the end-to-end business process for
receiving and processing customer orders (sales).
1. The Order to Cash process is initiated with the
establishment of a new customer. The customer
enters an agreement with the company, a sales
contract is created and a credit rating is established.
Orders are then received from customer, allowing
business to begin fulfilling the orders, invoicing and
collecting cash. Businesses save the data from this
process and use it to develop analytics to better
understand and plan for future fulfilment of
organization customer’s needs and expectations.
2
3. Overview (Cont..)
2. The fulfilment portion of the Order to Cash process
is particularly important – this is where order taking
meets supply chain delivery. Products ordered by
the customer must be physically removed from stock
or manufactured, prepared for shipment, and
delivered to the customer. Your inventory
management, production/operations and logistics
functions are key to ensuring that the order can be
fulfilled and meet customer needs for on time
delivery.
3
4. Overview (Cont..)
3. The final steps in the process include invoicing,
collections and cash application. Once customer
receives the products ordered and is provided with
an invoice or bill, they must then pay for the
products they have received.
4. The billing and collections process involves
monitoring all inbound invoice payments and
working with customers to collect any payments in
arrears.
4
6. ERP System flow
Customer Entry
Credit worthiness of customer for existing Customer
Order entry (creation of order / booking of order)
Order fulfilment (physical & digital fulfilment)
Distribution
Invoicing
Customer payments / collection
Cash Application
Deductions (If invoice Short Paid by Customer).
Collection
6
7. Order to Cash – Oracle Apps
Modules
Oracle Order Management: Customer places the order.
Oracle Inventory: Check the available unit and the quantity ordered by
the customer.
Oracle Order Management: You ship the product to customer site and
decreases the Finished Goods inventory.
Oracle Receivables: The customer receives the product and you
invoice the customer.
Oracle General Ledger: You record your revenue and receivables.
Oracle Receivables: The customer pays and you receive the
cash/check.
Oracle Cash Management: Oracle Receivables sends the customer
receipt for Bank Reconciliation. After reconciliation, Oracle Cash
Management send the actual bank balance or Oracle General Ledger.
Oracle General Ledger: You have the actual bank balance.
7
8. Order to Cash – Some
Challenges
Challenges Solutions
Payment
Terms
Ensuring payment terms are
appropriate to the risk
profile.
Monitoring collections when
different orders have
different payment terms
Customer management system
(CMS) and credit process to apply
appropriate payment terms.
Training of sales staff and processes
to ensure that payment terms
reflect credit risk whilst being
attractive to customers. Supply
chain finance solutions, such as
receivables financing. Automated
collections solution which includes
this capability.
8
9. Order to Cash – Some
Challenges
Challenges Solutions
Purchase
Order
Recording order details
accurately in company's
systems with limited
resources.
Electronic order processes such as
order scanning and automated data
dissemination. Remote order input by
customers directly to company’s order
management/ERP system e.g. data
originating from customers’ systems.
Invoicing Postage can be expensive
and delay payment.
Invoices need to include
customers’ purchase
order reference.
Electronic invoicing (eInvoicing)
including collaborative approach with
customers. For example, eInvoices able
to be imported directly into customers’
systems.
9
10. Order to Cash – Some
Challenges
Challenges Solutions
Collection Late payment is damaging
to suppliers partly
due to the unpredictability
of cash flow.
Chasing payments is not
always systematic
when conducted on a
distributed basis and/or
by individuals with other
responsibilities, so
cash may be received later
than necessary.
Modification of ERP or order
management system to record this
information and allow it to
be reproduced on invoices.
Early payment discounting
encourages timely or
early payment and increases
predictability of collection.
Centralised collections process, either
through shared service centre or
dedicated collections
factory.
10
11. Order to Cash – Some
Challenges
Challenges Solutions
Reconciliation
& Working
Capital
Difficulties in identifying
when cash has been
received into different
accounts etc.
Impact on customer
relationships and liquidity/
working capital
Work with banking partners to
ensure that invoice number is
shown on bank statement for
reconciliation.
Cash centralisation to allow
greater visibility of collections and
control over liquidity.
11
13. ERP – Oracle Application R12
Generic Order to Cash flow for
shippable item
Below details is to provide an overall understanding and assistance with
Setup, Process, Troubleshooting and Debugging the Order to Cash
Business Process.
13
14. Order to Cash
Required Setups
Create Customer
Create Item
Organization Overview
Available Inventory
Price List
Defaulting Rules
Create Order
Shipments
Pick Release
Ship Confirm
Interface Trip Stop (ITS)
Invoice
14
15. Order to Cash
Defaulting Rules:
Defaulting rules determine the values that you want to get
defaulted into a sales order to reduce the amount of
information
15
16. Order to Cash
Navigate to Customers > Standard. In the Find/Enter Customer screen, enter your customer name
and click on Find.
In the next Match Results screen, make sure you place the cursor on the row with a value in the
Customer Number field, and click on OK.
In the Addresses tab, place the cursor on the row for your address and click on Open.
In the Business Purpose tab, place the cursor on the row for the usage ‘Bill To’ and click on Open. This
is the ‘Invoice To’ level we saw in the previous step.
Go to the Order Management tab, and enter the Order Type ‘Mixed’. Save.
16
19. Order to Cash
Enter the Customer details Line items includes item and quantity
19
20. Order to Cash
Create Sales Order
When the Order is Created in the system EBS inserts data into Order headers and Order Lines. Once
you enter the details and save the Order, Data is inserted into OE_ORDER_HEADERS_ALL with
FLOW_STATUS_CODE = ENTERED, BOOKED_FLAG = N.
The line details goes and sits in OE_ORDER_LINES_ALL with FLOW_STATUS_CODE = ENTERED,
BOOKED_FLAG = N, OPEN_FLAG = Y. One Order header can Have multiple lines with header_id as the
reference column with headers.
After the Order is Booked the FLOW_STATUS_CODE on OE_ORDER_HEADERS_ALL changes to Booked
from Entered and BOOKED_FLAG to Y.
The OE_ORDER_LINES_ALL gets updated to FLOW_STATUS_CODE as AWAITING_SHIPPING and BOOKED_FLAG
updated to Y.
The WSH_DELIVERY_DETAILS gets populated with DELIVERY_DETAIL_ID and RELEASED_STATUS ‘R’ ready to
release, order Lines’s LINE_ID comes as SOURCE_LINE_ID.
The WSH_DELIVERY_ASSIGNMENTS gets populated as DELIVERY_ASSIGNMENT_ID is assigned for
DELIVERY_DETAIL_ID present in WSH_DELIVERY_DETAILS, DELIVERY_ID remains blank till this stage.
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, here LINE_ID
come as a reference in DEMAND_SOURCE_LINE.
20
21. Order to Cash
The item to be ordered is available in the Inventory by clicking on Availability
Button
21
24. Order to Cash
Key in the details in Shipping Tab,
Autocreate Delivery: Yes,
Auto Pick Confirm: Yes,
Autopack Delivery: Yes
24
25. Order to Cash
Sub inventory, location and org details in Inventory tab as required and then
select Execute Now button.
25
26. Order to Cash
Reservation:
This step is required for doing reservations. SCHEDULE ORDER PROGRAM runs in the background and
quantities are reserved. Once this program get successfully completed, the MTL_DEMAND and
MTL_RESERVATIONS tables get updated. LINE_ID gets updated in DEMAND_SOURCE_LINE_ID in both
the tables.
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 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.
After the Pick Release for the Order is done WSH_NEW_DELIVERIES a new record gets inserted with
SOURCE_HEADER_ID= order header ID, STATUS_CODE=OP (Open).
WSH_DELIVERY_ASSIGNMENTS gets updated with DELIVERY_ID which comes from WSH_NEW_DELIVERIES.
WSH_DELIVERY_DETAILS gets updated with RELEASED_STATUS ‘S’ ‘submitted for release’.
MTL_TXN_REQUEST_HEADERS, MTL_TXN_REQUEST_LINES gets populated with Order Lines’s LINE_ID as
TXN_SOURCE_LINE_ID Move order tables. Here request is generated to move item from Source (Stores) sub-
inventory to staging sub-inventory.
MTL_MATERIAL_TRANSACTIONS_TEMP links to MTL_TXN_REQUEST_HEADERS and OE_ORDER_LINES_ALL tables
through MOVE_ORDER_HEADER_ID and LINE_ID respectively. This table holds the record temporally.
26
27. Order to Cash
MTL_SERIAL_NUMBERS_TEMP gets populated if item is serial controlled at receipt then record goes in
this table.
MTL_SERIAL_NUMBERS (enter value in GROUP_MARK_ID )
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.
Note: If Reservation is not done then MTL_RESERVATIONS gets populated at this Step.
Pick Confirm/ Move Order Transaction:
Items are transferred from source sub-inventory to staging Sub-inventory. Here material transaction occurs.
Sales Order lines status is changed to ‘Picked’ and in the Shipping Transaction Form the status is shown as
‘Staged/Pick Confirmed’.
After the Transact Move Order is done MTL_MATERIAL_TRANSACTIONS_TEMP the Record gets deleted from
here and gets posted to MTL_MATERIAL_TRANSACTIONS.
OE_ORDER_LINES_ALL gets updated with FLOW_STATUS_CODE updated to ‘PICKED’ from ‘Awaiting
Shipping’.
MTL_MATERIAL_TRANSACTIONS gets populated with Order Lines LINE_ID as TXN_SOURCE_LINE_ID.
MTL_TRANSACTION_ACCOUNTS gets populated with Cogs Account which is setup at the Transaction type.
WSH_DELIVERY_DETAILS gets updated with RELEASED_STATUS as ‘Y’ (Released).
WSH_DELIVERY_ASSIGNMENTS, MTL_ONHAND_QUANTITIES gets updated.
MTL_SERIAL_NUMBERS_TEMP a new record gets inserted after putting details for the item which are serial controlled at
‘Sales order issue’.
MTL_SERIAL_NUMBERS a new record gets inserted after putting details for the item which are serial controlled at ‘Sales
order issue’.
This step can be eliminated if we set Pick Confirm=YES at the time of Pick Release (Which is Done in the Flow).
27
28. Order to Cash
Ship Confirm
After Ship Confirm the items on the delivery gets shipped to customer at this stage.
OE_ORDER_LINES_ALL gets updated with FLOW_STATUS_CODE as ‘Shipped’ from Picked.
WSH_DELIVERY_DETAILS gets updated with RELEASED_STATUS to ‘C’ (Shipped), SERIAL_NUMBER if quantity is ONE.
WSH_SERIAL_NUMBERS a new records gets inserted with the DELIVERY_DETAIL_ID reference, only in case of shipped quantity is two or more.
MTL_TRANSACTION_INTERFACE, MTL_MATERIAL_TRANSACTIONS are linked through Transaction source header id.
MTL_TRANSACTION_ACCOUNTS
Data will be deleted from MTL_DEMAND, MTL_RESERVATIONS and Item deducted from MTL_ONHAND_QUANTITIES.
MTL_SERIAL_NUMBERS_TEMP the records gets deleted from this table.
MTL_SERIAL_NUMBERS records are updated with Serial number stauts to CURRENT_STATUS as 4 which is ‘Issued out of store’.
Create Invoice
When the work flow Background Process is run it 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.
After the Workflow background Process is run RA_INTERFACE_LINES_ALL (interface table into
which the data is transferred from order management). Then Autoinvoice program imports data
from this table which get affected into this stage are receivables base table. At the same time
records gets inserted into RA_CUSTOMER_TRX_ALL gets inserted with TRX_NUMBER ia the
invoice number with INTERFACE_HEADER_ATTRIBUTE1 as Sales Order Number.
RA_CUSTOMER_TRX_LINES_ALL gets populated with LINE_ATTRIBUTE_1 and
LINE_ATTRIBUTE_6 are populated with Sales order number and order lines LINE_ID respectively.
After this the OE_ORDER_LINES_ALL gets updated with FLOW_STATUS_CODE to ‘Closed’ and
OPEN_FLAG to ‘N’.
28