How bill matching keeps spot and futures apart
After a bill of materials is imported, spot and futures quantities stay in separate warehouses. Matched lines go to the cart or a requisition.
Which columns the match reads
A bill needs a part number and a quantity. Delivery can be blank, and the result marks that the row has no delivery. Spot and futures warehouses are separate columns. In-transit, inspection, and on-order quantities stay in their own states and are not added to available spot stock.
One part can sit in both warehouses. The match shows both columns. The buyer chooses spot, futures, or a split. Futures quantity is not added to spot to fill the request.
Matched rows and unmatched rows
Matched rows go to the cart. When internal approval is required, the cart is exported as a requisition with the same part, quantity, and warehouse. Unmatched rows stay on the result with a reason: unknown part, not enough spot stock, or futures only.
The buyer can import a corrected table. The earlier reasons remain available to compare. After a requisition file is downloaded, later stock changes are read again in the cart. The downloaded file is not rewritten.
What the admin prepares first
Admins maintain the part master, the warehouses, and available stock. A part that is not published is skipped. Contract price and list price are stored apart, and the match uses the price for that buyer account.
Matching does not create a contract. The contract waits until part, quantity, and delivery are set on an order, so a requisition still in approval is not treated as a sale.
Common questions
Can futures be shown as spot?
No. Futures stay in the futures warehouse, in their own column.
Do unmatched rows disappear?
No. The result keeps the row and the reason.
Is a requisition an order?
No. A requisition is for internal approval. An order is the trading record after quantity and delivery are set.
Is there a row limit?
Each row of the customer’s table gets a result. A row missing a part number or quantity is marked, and the rest of the table is kept.