Drop shipments is a method of fullfilling sales order by selling products without the order taker handling, stocking, or delivering them. The seller buys a product and the supplier ships the product directly to the seller's customer. Drop shipments are done because of the following reasons
Customer requires an item that is not normally stocked
Customer requires a large quantity of the item which is not available with you
It is more economical when the supplier ships directly to the customer
In drop ship cycle, the seller receives a sales order from the customer and sends a purchase order to the supplier. The supplier ships directly to the customer. The seller receives an invoice from the supplier and sends an invoice to the customer. The seller receives an invoice from the supplier and sends an invoice to the customer.
Required Set UP
Consider establishing a logical warehouse to receive drop shipments. This will isolate the costs of drop shipped items from items you physically stock. Order Management does not require you to use a special shipping org for drop shipments, but you can choose to do so. In that case, define the logical warehouse as a shipping org, and enable the items you want to be drop shipped in that warehouse.
Order Type/Line Type
Define line type/order types for your drop shipment orders that have a workflow containing the Create Supply activity.
Define defaulting rules, based on conditions that make sense to your business process, for the source type attribute of the Order Line. If you want a line to be drop shipped, make the source type equal to External. In addition, if you defined a special warehouse for drop shipped items, you might want to create a defaulting rule to default that shipping org to your order line.
Always enter the deliver to location.
1. Enter and book an order.
Defaulting Rules may set source type attribute to External, or you can manually choose External source type.
The Purchase Release concurrent program or workflow in Order Management creates rows in the Requisition Import tables in Purchasing. Then Purchasing's Requisition Import process creates the requisitions. Drop Shipments are marked with the Source Type of External in Order Management and Supplier in Purchasing.
2. Run Requisition Import in Purchasing to create the requisition.
3. Approve the requisition to generate the Purchase Order.
4. Create a PO or autocreate a Blanket PO release from the approved requisition. A drop ship order can be changed or canceled in Order Management after it has been sent to Oracle Purchasing but before receipt. However, the changes are not automatically communicated to Purchasing. A report, Sales Order/Purchase Order Discrepancy Report, shows what orders have changed. These changes need to be manually updated in Purchasing and then communicated to the
When the vendor ships product to your customer, you may receive an ASN, or even an invoice, to indicate shipment to the customer. The receipt triggers automatic receipt of the line in Purchasing. If the vendor does not send ASN, receipt can be entered manually (passive receiving). Inbound and outbound material transactions are automatically created for accounting purposes. Order Management workflow proceeds to next step, typically invoicing of the end customer.
How to roubleshoot Creating Requisitions from Drop Ship Orders
Most of the time, I find end users bringing drop ship problems that are similar in nature because of their heavy involvement in either OM activities or PO activities but not both. Therefore, I can diagnose drop ship problems easily by taking steps mentioned below:
1. First, I verify that an order is booked and does not have hold so that the ‘Purchase Release’ program can pick the order line and create records in the PO_REQUISITIONS_INTERFACE_ALL table. I can see if the hold is applied on an order or its order line by looking at the ‘Holds’ tab on ‘Additional Order Information’ screen. Finally, I make sure that the order line’s source type is ‘External’ on the ‘Shipping’ tab of order line.
I can also run the following query to know if the order line is eligible for ‘Purchase Release’:
FROM oe_order_headers_all h,
WHERE h.order_number =
-- AND l.line_number||’.’||l.shipment_number =
-- If I have line number, I can use the above condition.
AND h.header_id = l.header_id
AND l.header_id = ho.header_id (+)
AND l.line_id = ho.line_id(+)
AND ho.hold_source_id = s.hold_source_id (+)
AND s.hold_id = d.hold_id (+)
AND s.hold_release_id = r.hold_release_id(+) ;
2. Many times, I have end users calling that the ‘Requisition Import’ program does not populate the ‘Import Source’ parameter as ‘Order Entry’ or the ‘Requisition Import’ program ran but it did not generate requisition. Sometimes it can be very simple that the ‘Purchase Release’ program was not run. In such cases, I find the workflow status for the order line as ‘Purchase Release – Deferred.’ I have also noticed that the ‘Workflow Background Process’ must be run after ‘Purchase Release’ program in order to generate requisition interface record for an order line. The ‘Workflow Background Process’ is scheduled program which runs every 5 minutes at our site. Users normally run the ‘Requisition Import’ program immediately after running the ‘Purchase Release’ program and the requisition interface record does not get generated until the ‘Requisition Import’ program is run next time.
I can use following query to find the status of requisition interface record:
FROM oe_drop_ship_sources s,
WHERE s.line_id(+) = l.line_id
AND l.header_id = h.header_id
AND l.line_type_id = t.transaction_type_id
AND h.order_number =
AND l.line_number||'.'||l.shipment_number =
In the above query, the first column DROP_SHIP_SOURCE_ID is the INTERFACE_SOURCE_LINE_ID column in the PO_REQUISITIONS_INTERFACE_ALL table. I also use this query after running the ‘Requisition Import’ program as it shows the requisition ids as well as purchase order line and shipment ids once the purchase order is created out of the requisition.
3. I know the ‘Requisition Import’ program will generate the requisition for the order line if the DROP_SHIP_SOURCE_ID has some value. I can use this value to view the record in the PO_REQUISITIONS_INTERFACE_ALL table:
-- I can add/remove segment fileds based on accounting structure.
FROM po_requisitions_interface_all r,
WHERE r.interface_source_line_id =
AND r.item_id = i.inventory_item_id
AND r.charge_account_id = c.code_combination_id
AND r.destination_organization_id = i.organization_id;
This query shows status of the requisition interface record if it has been run before. If the above query has no value for ‘REQUEST_ID’ column, I know that the ‘Requisition Import’ program has not been run. After running the ‘Requisition Import’ program, the requisition number and its status are shown on the ‘Drop Ship’ tab of ‘Additional Line Information’ form. Once a purchase order is created, I check the purchase order number and its status on the ‘Drop Ship’ tab. I can also click the ‘Purchasing’ button on the ‘Drop Ship’ tab to view the purchase order information.
In addition, the charge account can be sometimes troublesome in approving the PO if it is incorrect. I have seen before that order line was created for an item with wrong inventory org which copies incorrect material account from inventory organization parameter for charge account. Therefore, I make it a point to the end users for selecting items from the correct inventory organization.
The above three sections can be very helpful for me in knowing drop ship information in Order Management as well as its related purchasing records.