Oracle Sales Order Import with FBDI and the Oracle Fusion Sales Order Import Template from Customer PO PDFs

Oracle Fusion Order Management imports sales orders in bulk through FBDI, and FBDI only takes rows.

PDF, JPG, PNG, BMP, HEIC, TIFF

Submit your purchase orders

PDF, scan, or email attachment
Every order line captured
Header and line rows kept in step
Plans from $49 a month

Overview

Oracle Fusion Order Management imports sales orders in bulk through FBDI, and FBDI only takes rows. Upload the purchase order a customer emailed and get the PO number, buyer, ship-to and every line with part, quantity, unit of measure and price, ready for the order header and order line tabs.

Why customer POs still get keyed into order management

Oracle gives you a solid bulk route for sales orders. It starts from a spreadsheet, and most customers still send a PDF.

Four required tabs, one key

The import template splits an order across header, line, address and transaction attribute tabs. Every row has to carry the same source transaction identifier and system, or the order breaks apart.

Identifiers must be unique per source

Source Transaction Identifier plus Source Transaction System is how Oracle recognizes an order. Reuse one by accident and the import treats a new PO as a revision of an old one.

Buyer part numbers are not your items

Customers order by their own part numbers. Product Number has to be your item, so every line needs a mapping before it loads.

The customer PO number gets lost

If nobody fills CUSTOMER_PO_NUMBER, the order desk cannot find the sales order when the buyer calls with only their own reference.

From customer PO to FBDI order rows

Upload the purchase order your customer sent. The AI reads the header and every line and returns a spreadsheet with one row per line and the header values repeated, ready to split into the DOO_ORDER_HEADERS_ALL_INT and DOO_ORDER_LINES_ALL_INT tabs.

Reads any PO layout

No per-customer template. Digital PDFs, scans and photographed pages from any buyer system come back in the same column layout.

Line sequence preserved

Lines return in document order with a sequence number, which becomes your source line identifier and line number with one formula.

Customer PO in its own column

The buyer PO number lands in a dedicated column that maps straight to CUSTOMER_PO_NUMBER, so every order is searchable by the customer reference.

Quantity and unit together

Ordered quantity and the unit of measure the buyer printed come back side by side, so you can map EA, CS or BX to your Oracle UOM before the load.

An order team at a desk checking printed purchase orders against a laptop

How Oracle Fusion imports sales orders

Oracle Fusion Cloud Order Management has two standard ways to create sales orders without someone in the order entry screen. The first is File-Based Data Import (FBDI). You download the SourceSalesOrderImportTemplate.xlsm workbook from the FBDI guide for Oracle SCM, fill one worksheet per interface table, click Generate CSV File and save the result as a zip. Then you run the scheduled process Load Interface File for Import to move the files into the interface tables, and Import Sales Orders (older releases call it Manage Imported Sales Orders) to create the orders. The second route is the REST API, where the salesOrdersForOrderHub resource creates orders from JSON. Oracle also documents combining the two for very large volumes.

Both routes expect structured data. Neither one reads a PDF. Customers on EDI or a B2B portal can be wired in by your integration team; the customers who email a purchase order land on the order desk and get keyed by hand, one line at a time. PurchaseOrders closes that gap at the front. It reads the customer PO and hands you the rows. FBDI or your integration does the rest.

The template tabs that matter

The workbook has one tab per interface table. Four are required: DOO_ORDER_HEADERS_ALL_INT for the order header, DOO_ORDER_LINES_ALL_INT for the lines, DOO_ORDER_ADDRESSES_INT for ship-to and bill-to, and DOO_ORDER_TXN_ATTRIBUTES_INT for transaction attributes. The rest are optional, including sales credits, payments, lot and serial numbers, document references and manual price adjustments. Two of them, DOO_ORDER_CHARGES_INT and DOO_ORDER_CHARGE_COMPS_INT, become required when you do not let Oracle Pricing calculate the price, which is exactly the case when you want to load the price the customer printed.

On the header, the fields a customer PO feeds are SOURCE_TRANSACTION_ID and SOURCE_TRANSACTION_SYSTEM (together they identify the order), SOURCE_TRANSACTION_NUMBER, BUYING_PARTY_NAME or BUYING_PARTY_NUMBER for the sold-to customer, TRANSACTIONAL_CURRENCY_CODE and CUSTOMER_PO_NUMBER, which Oracle describes as the purchase order number the customer sends to identify the order. SUBMIT_FLAG decides whether the order is only created or also submitted to fulfillment. On the lines, each row repeats the source transaction identifier and system, then adds its own source line identifier, the product number, the ordered quantity and the ordered unit of measure.

Shaping the export for FBDI

The export from PurchaseOrders is one row per line with the header values repeated. Splitting it is mechanical: keep one row per customer PO for the header tab, keep every row for the lines tab, give each PO a source transaction identifier (the customer PO number prefixed with the customer code works well and stays unique), and use the line sequence as the source line identifier. Dates go in the format the template asks for, and amounts use a period for decimals. Most order desks build that workbook once and reuse it for every batch. For the purchase side of the same company, where you load the purchase orders you issue to suppliers, see purchase order FBDI template and Oracle purchase order import.

Matching customer part numbers to your items

The most common reason an imported line errors is the item. Buyers print their own part numbers, and Oracle validates the product against your item master. You can keep a mapping column in the import workbook that turns each buyer part into your item number, or maintain customer item cross-references in Oracle so the customer part resolves to the right item. Either way you set it up once per customer. The extracted data keeps the buyer part number and description side by side, which makes the first mapping quick. Errors show up under Manage Order Orchestration Messages; fix the source rows, regenerate the CSV and rerun until the status is Succeeded.

Who uses this

Distributors and manufacturers on Oracle Fusion Cloud whose larger customers still send purchase orders as PDF attachments: industrial and electrical distributors, medical and lab supply companies, packaging suppliers and contract manufacturers. Typical volume runs from a few dozen to several hundred customer POs a week, enough that hand entry ties up people and puts quantity and price errors into orders. Running the same workflow on another system? The steps carry over to NetSuite sales order import and JD Edwards sales order import, and the general version lives on the sales order entry automation page. If Monday starts with 40 POs in the shared inbox, use bulk purchase order upload to run them in one pass.

What it does not do

PurchaseOrders does not connect to Oracle Fusion, does not upload files to Oracle, does not run scheduled processes and does not write to the interface tables. It reads customer purchase orders and returns Excel, CSV or JSON. You load the rows with FBDI, a REST integration your team or partner builds, or an integration platform you already use. Your Order Management pricing, credit checks and orchestration rules stay exactly as they are.

Customer PO field to Oracle FBDI column

What comes off the customer document and which interface table column it usually fills. Confirm against the template version for your Oracle release before the first load.

Column Tab Where it comes from Notes
SOURCE_TRANSACTION_ID Headers and lines An ID you assign per customer PO. Unique together with the source system
SOURCE_TRANSACTION_SYSTEM Headers and lines The source system code set up in Oracle for imported orders. Same value on every row of the batch
SOURCE_TRANSACTION_NUMBER Headers Your order reference, often the customer PO number. Shown as the source order
BUYING_PARTY_NAME Headers The buyer on the PO, matched to a customer account. Or BUYING_PARTY_NUMBER
CUSTOMER_PO_NUMBER Headers The purchase order number the customer printed. Searchable customer reference
TRANSACTIONAL_CURRENCY_CODE Headers The currency on the PO. USD for most US customers
Ship-to and bill-to Addresses The ship-to and bill-to blocks on the PO, matched to customer sites. Required tab
Source line identifier Lines The line sequence from the document. Unique within the order
Product number Lines Your item, from the buyer part number via a mapping or cross-reference. Validated against the item master
Ordered quantity Lines Quantity on each line. Numeric
Ordered UOM Lines The unit the buyer printed, mapped to your Oracle unit. EA, CS, BX and similar
Unit price Charges The price on the PO, loaded only if Oracle Pricing does not price the line. Charges tabs become required

How the import runs

Four steps from the customer attachment to sales orders in Oracle Order Management.

1

Upload the customer PO

Drop in the PDF, the scan or the email attachment. Up to 50 files per bulk upload, with no per-customer setup.

Tip: Portal downloads and forwarded attachments work the same way.

2

Review and Map

Check the header and lines on screen, then map the buyer to a customer account, each part to your item and each unit to your UOM.

Tip: Save the mapping per customer and reuse it on every later order.

3

Fill the template and zip it

Paste one row per PO into the header tab and every row into the lines tab, add addresses, then click Generate CSV File.

Tip: Keep the source transaction identifier identical across tabs.

4

Load, import and check

Run Load Interface File for Import, then Import Sales Orders, and review errors in Manage Order Orchestration Messages.

Tip: Test with one two-line PO before a full batch.

Why order desks use this in front of Oracle Fusion

1
Row per line item
3
Export formats, Excel, CSV and JSON
50
POs per bulk upload

Security and privacy

  • Bank-grade TLS encryption in transit
  • Your PO data is never sold or shared
  • US-based cloud infrastructure

Oracle sales order import questions

Download SourceSalesOrderImportTemplate.xlsm, fill the header, lines, addresses and transaction attribute tabs, click Generate CSV File and save the zip. Run Load Interface File for Import, then Import Sales Orders. The REST resource salesOrdersForOrderHub is the API alternative for an integration.

It is SourceSalesOrderImportTemplate.xlsm, listed in the Order Management chapter of the File-Based Data Import guide for Oracle SCM. Each worksheet maps to one interface table, such as DOO_ORDER_HEADERS_ALL_INT for headers and DOO_ORDER_LINES_ALL_INT for lines.

Four: DOO_ORDER_HEADERS_ALL_INT, DOO_ORDER_LINES_ALL_INT, DOO_ORDER_ADDRESSES_INT and DOO_ORDER_TXN_ATTRIBUTES_INT. The charges and charge components tabs become required when Oracle Pricing does not calculate the price, for example when you load the price the customer printed.

In CUSTOMER_PO_NUMBER on the header tab, which Oracle describes as the purchase order number the customer sends to identify the order. Fill it from the PO and the order desk can find the sales order by the buyer reference.

Open Order Management, Manage Order Orchestration Messages, and query the imported orders to read each error. Correct the rows in the template, click Generate CSV File again and rerun the scheduled processes until the status is Succeeded.

It decides whether the imported order is only created, so a person reviews it in Order Management first, or created and submitted straight to fulfillment. Most teams start with orders created but not submitted until the item and price mapping has proven reliable.

Not through FBDI or the REST API, which expect rows or JSON. A customer PO that arrives as a PDF has to become structured data first, either keyed into the order screen or extracted, before Oracle can create the sales order in bulk.

No. PurchaseOrders reads the customer purchase order and returns structured data as Excel, CSV or JSON. It does not connect to Oracle or run the import. You load the rows with FBDI, a REST integration or an integration platform you already run.