Order to Cash Cycle Techno Functional Overview

21
Oracle Order to Cash Cycle in R12 (Techno Funtional Overview) 23-Dec-13

description

o2c

Transcript of Order to Cash Cycle Techno Functional Overview

Page 1: Order to Cash Cycle Techno Functional Overview

Oracle Order to Cash Cycle in R12(Techno Funtional Overview)

23-Dec-13

Page 2: Order to Cash Cycle Techno Functional Overview

Order to Cash Overview

Order to cash cycle is the business process which is concerned with the process

of selling of goods to the customer and receiving the corresponding payment

for the sold goods. It is the basic cycle which is the backbone of operation in

any supply chain business.

A simple and generic order to Cash Cycle will have will have the below

mentioned steps

1. Enter Order

2. Book Order

3. Pick Release the Order

4. Ship Confirm

5. Invoice Creation

6. Payment Receipt

In order to process with the cycle the user must be aware of the standard

sales order screen.

ENTER ORDER

23-Dec-13

Page 3: Order to Cash Cycle Techno Functional Overview

Navigation: Order Management Super User -> Orders, Returns -> Sales Orders

This is the first stage of the Order to Cash cycle. Order entry is concerned with

the process of entering the order related information in the system, no

processing is done on the entered information the data is only saved in Oracle.

Order entry is performed only when a purchase requisition is received from

the customer.

Order entry can be performed manually or automated through EDI or

programmatically via API's.

When entering an order the user needs to provide certain basic information,

the remaining information is automatically fetched by Oracle as per the

defaulting rules specified in the Setup (Order Management Super User -> Setup

-> Rules -> Defaulting).

Enter the information in the screen and press Ctrl + S or click the save button

on the top of the screen.

When the order information is entered and saved the data is entered in the

OE_ORDER_HEADERS_ALL and OE_ORDER_LINES_ALL table.

The order header status: Entered

Order Line status: Entered

When the order information is entered and saved, an order number is

generated by Oracle.

Order Header Snapshot:

23-Dec-13

Page 4: Order to Cash Cycle Techno Functional Overview

Order header provides us information about

The customer, to whom goods will be sold.

The type of Order

Shipping and Billing Location Information

The total order amount etc.

Order Line Snapshot:

Order line provides us details of the order.

The item to be sold

Pricing information ( the items cost and charges/discount applied)

The warehouse from which we plan to ship the data etc.

Freight and Discount Calculation:

If discounts or any charges are applied on the order then an entry is made in

the table OE_PRICE_ADJUSTMENTS to reflect that adjustment. To check if any

discount has been applied to an order this can be checked by querying the

table on the basis of the header_id of the Order.

Tables Affected on ORDER ENTRY:

1.OE_ORDER_HEADERS_ALL: Containing order header information

2.OE_ORDER_LINES_ALL: Containing order line information

3.OE_PRICE_ADJUSTMENTS : stores information of any discounts or charges

applied to the order

In case any charges are applied to the Order the user can check the same

following the below navigation

Order Line --> Actions Button --> Charges

The user will be able to see the applied charges.

23-Dec-13

Page 5: Order to Cash Cycle Techno Functional Overview

Details on the applied modifier to calculate the charges can be checked by

viewing the charge modifier.

Navigate to: OM Super User -> Pricing -> Modifiers and

OM Super User -> Pricing-> Pricing Formulas -> Formula Setup

BOOK ORDER

Order booking is the process of validating the information entered by the user

and if the data is valid book the order for further processing.

This is done by clicking on the Book Order button present on the Order screen.

Order can be created in booked state if the user is creating the order

programmatically.

Clicking on the Book Order Button will book the order, subject to that all the

processing constraints and checks performed by Oracle are successful.

The Order Header Status changes to: Booked

The line Status Changes to : Awaiting Shipping

When Oracle tries to book the order, checks are performed to check if the

order is eligible for booking or not.

Credit check validation is performed against the customer for whom the

order is booked to check if the credit limit for the customer exceeds on

booking the order, If so then the order is put on hold with the entries

being made in OE_ORDER_HOLDS table, the entry can be tracked using

the header_id of the order.

23-Dec-13

Page 6: Order to Cash Cycle Techno Functional Overview

Oracle checks if a Customer item cross reference exists for the item

being booked for the customer. If not the Order will be booked and will

be put on hold.

If the Customer is enabled only for EDI order creation then the order is

put on hold, since manual booking is not permissible for this customer.

Oracle checks if the requested item is active, eligible for Sale.

All these validations are defined in the Order Management setup,

processing constraints based on which specific checks are performed

whenever the user tries to perform any action.

In case the order is put on hold the user needs to check which hold has been

applied on the order and then take corrective actions and release the holds.

To check the holds applied at Order Header level Go to Order Header and click

on the Actions Button, select Additional Order Information

Line level holds can be checked by navigating to order lines --> Actions -->

Additional Line Information -> holds tab of the form

In case the user is eligible to release the holds the user can release the

header/line level holds by navigating to Order Header/Line --> Actions -->

Release holds

Order Line Delivery Information

When the order is booked Delivery lines are created for the order and entries

are made in the tables

WSH_DELIVERY_DETAILS and WSH_DELIVERY_ASSIGNMENTS.

In WSH_DELIVERY_DETAILS table entry is made with

23-Dec-13

Page 7: Order to Cash Cycle Techno Functional Overview

released_status =’R’ (Ready to Release).

The delivery line in the WSH_DELIVERY_DETAILS table can be tracked by using

any of the columns of the WSH_DELIVERY_DETAILS table.

Source_header_id = Order Header id

Source_line_id = Order line id

Source_header_number = order number.

Entry in the table WSH_DELIVERY_ASSIGNMENTS can be tracked by using the

delivery detail id from the table WSH_DELIVERY_DETAILS.

Tables Affected:

oe_order_headers_all : storing order header information

oe_order_lines_all : order line details

oe_order_holds : Order hold details in case hold is applied on the order

wsh_delivery_details : Order line delivery details

wsh_delivery_assignements

ORDER SCHEDULING

Order Scheduling is mechanism in which the system is informed about a

possible demand of the item and the reservations that need to be done for the

same.

A new row is inserted in MTL_DEMAND table with column

demand_source_line = Order line_id

23-Dec-13

Page 8: Order to Cash Cycle Techno Functional Overview

Order Reservation : refers to the activity in which the items are blocked in the

inventory for this particular order . The items are reserved to fulfil the

requirements for this order and is thus not available for the fulfilment of other

order requirements. Post Order reservation A new row is inserted in

MTL_RESERVATIONS table with column demand_source_line_id = Order

line_id

PICK-RELEASE

Pick release is the stage of the order cycle when the ordered items

are transferred to the staging area of the sub-inventory to be shipped.

When the pick release request is run we are informing the inventory about the

requirement of the item, the requested quantity is transferred from the source

sub-inventory to the staging sub-inventory signifying the reservation of items.

The quantity available in the staging sub-inventory is not available for

reservation for any other order.

Navigation:

Order Management Super User -> Shipping -> Release Sales Order -> Release

Sales Order

When pick release is done in oracle system,

move order is created for the specified items

the items from the inventory are allocated to the move order

move order is transacted which leads to the transfer of items from the

source sub inventory to the STAGE area of the warehouse

23-Dec-13

Page 9: Order to Cash Cycle Techno Functional Overview

Generally a pick release document set is defined , these documents are

also generated when pick release is performed

The documents generated on pick release are the basis on which the pick

release action / movement of goods is performed in the warehouse

System Changes after Pick Release Completes

The status of header: Booked.

Line Status: Picked

Move Order Creation and Transactions

Move orders get created in the system and the same is transacted to keep a

track of the item transfer from source sub-inventory to stage area of the

warehouse.

Details of the move orders are stores in the tables :

MTL_TXN_REQUEST_HEADERS and MTL_TXN_REQUEST_LINES

Inventory transfer :

In pick release since items are transferred between sub-inventories from

source sub-inventory to STAGE

Entries are made in the table MTL_MATERIAL_TRANSACTIONS table showing

the movement of goods between different sub-inventories. The transactions

for each order line can be traced using Column:

Trx_Source_Line_Id = Order Line_Id.

Entry is made in the table MTL_TXN_REQUEST_LINES for the picked orders.

Reference is Trx_Source_Line_Id = Order Line_Id

23-Dec-13

Page 10: Order to Cash Cycle Techno Functional Overview

Entry is also made into the MTL_ONHAND_QUANTITIES table regarding the

transfer of material from the corresponding sub-inventory to the Staging sub

inventory. A new row is inserted for the movement of requested item to the

Staging Sub-inventory.

Records can be traced through the column create_transaction_id which

corresponds to the transaction id of the MTL_MATERIAL_TRANSACTIONS

table which has the entry of the transfer of goods into the staging sub-

inventory.

Delivery line creation:

When a pick release of order line is done a delivery is created and on or more

order lines are associated to the same delivery.

The concept of delivery required detailed discussion which will be taken up in

the upcoming posts.

An entry is made in the WSH_NEW_DELIVERIES table for the delivery created.

Delivery_id field is updated in WSH_DELIVERY_ASSIGNMENTS table.

The Delivery Id is the shipment number assigned to that particular order.

Updation of table WSH_DELIVERY_DETAILS table takes place.

The transaction_id field value in WSH_DELIVERY_DETAILS table is same as the

transaction_id of MTL_MATERIAL_TRANSACTIONS table which is created for

the transfer of goods from the source sub-inventory to the staging sub-

inventory.

If Pick Release process is successful then the released_status field of

WSH_DELIVERY_DETAILS table is updated to ‘Y’, In case enough quantity is

23-Dec-13

Page 11: Order to Cash Cycle Techno Functional Overview

not available when the order is picked the order will be back-ordered due to

unavailability of the quantity and the released status is set to ‘B’.

Major Tables Affected

oe_order_lines: order line status is updated

wsh_delivery_details : released status chages to 'Y' if pick release is

successful, to 'B' in case the line is backordered

wsh_new_deliveries: details of the delivery created for the lines pick

released

wsh_delivery_assignments: association of delivery with order lines

mtl_txn_request_headers: move order header information

mtl_txn_request_lines: move order line details

mtl_onhand_quantities: entries made for the increase of onhand in

STAGE and updates for the goods moving out of the source sub-

inventory

mtl_material_transactions: entries tracking the movement of goods in

the warehouse

SHIP CONFIRM

After the Order has been picked next comes the stage of shipping of the Order.

Ship confirmation is the step in which the goods are shipped to the customer

site. This is the step where the inventory leaves the suppliers warehouse to be

sent to the customer.

Navigation: OM super User-> Shipping -> Transactions.

23-Dec-13

Page 12: Order to Cash Cycle Techno Functional Overview

The user needs to search the orders to be shipped and then perform the

shipping transaction.

When the shipping is done some supporting documents like Bill of Lading is

generated. These documents help in identification of the goods to be shipped

in the staging area and are used by the truckers when performing the actual

delivery of goods.

System Changes After Ship Confirmation

Order Header Status: Booked

Order Line Status: Shipped

The delivery which was associated to the order lines is closed.

Inventory reduces by the amount of units which are shipped

The releases_status for the lines in WSH_DELIVERY_DETAILS changes to 'C',

signifying shipment of the order line

Table Updates:

An entry is made into MTL_MATERIAL_TRANSACTIONS table signifying the

shipping of goods from the system; the transaction quantity is negative which

means that goods are moving out of the system.

The corresponding entry is deleted from MTL_ONHAND_QUANTITIES since the

goods have been shipped.

If the user queries for the item from the front end now the total available qty

in the staging sub-inventory is reduced by the quantity shipped.

INTERFACING FOR INVOICING

23-Dec-13

Page 13: Order to Cash Cycle Techno Functional Overview

After the shipment of the goods are complete, next comes the stage of

invoicing where invoices are created the sold goods.

For this to be achieved data needs to be interfaced to the AR related tables.

Run the workflow Background Process which picks up all the shipped order

lines, changes their status to ‘CLOSED’ and inserts corresponding records in the

ra_iterface_lines_all table.

To run the request Navigate:

System Administrator Responsibility and request submission screen.

Lines in the RA_INTERFACE_LINES_ALL can be referenced using column

INTRFACE_LINE_ATTRIBUTE1 = Order Number,

INTERFACE_LINE_ATTRIBUTE3 = shipment number/delivery_id

INTERFACE_LINE_ATTRIBUTE6 = Order Line Id

INVOICING

Workflow background engine picks the shipped records and posts them to

RA_INTERFACE_LINES_ALL. This is also called Receivables interface, that

means 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.

To generate invoice navigate to AR Super User -> Interface -> Auto Invoice

23-Dec-13

Page 14: Order to Cash Cycle Techno Functional Overview

Run the “autoinvoice master program” with the appropriate parameters. Once

the program is completed eligible data from the RA_INTERFACE_LINES_ALL

table is fetched, validations to be performed by oracle are carried out and new

records are inserted in the tables RA_CUSTOMER_TRX_ALL and

RA_CUSTOMER_TRX_LINES_ALL.

To track the invoices created in RA_CUSTOMER_TRX_ALL

Interface_header_attribute1 = order_number

Interface_header_attribute6= line_number

Interface_header_attribute3 = shipment number

Data in the RA_CUSTOMER_TRX_LINES_ALL table can be tracked either by the

cutomer_trx_id of the RA_CUSTOMER_TRX_ALL table or by

interface_header_attribute1 = order_number.

After the invoice is created user can see the invoices in front end by navigating

to AR Super User -> Transactions -> Transactions and query the screen by

giving the order number in the reference field on the form.

RECEIPTS

When payment is received from a customer the corresponding needs to be

entered in Oracle. This is done from the Receipts screen.

AR Super User -> Receipts -> Receipts

Here the user needs to enter the amount received from the customer and

apply it to the corresponding invoices to which he desires.

The receipt amount can either be applied to a single invoice or multiple

invoices.

23-Dec-13

Page 15: Order to Cash Cycle Techno Functional Overview

In each of the case the outstanding amount for the invoice to which the receipt

is applied reduces by the amount applied. The details of the receipt applied to

the invoices can be searched in the view AR_RECEIVABLE_APPLICATIONS_V.

Data in the view can be searched by referencing any of these columns:

receipt_number = receipt number entered in the receipt screen

trx_number = Invoice number/Transaction number generated when the

invoice was created.

After performing the receipts for the Invoices , the whole cycle gets completed

since all the activities ie Receipt of Order --> Fulfilment of Order --> Raising

Invoice to Customer --> Receiving payments for the goods shipped is

completed.

23-Dec-13