Vous êtes sur la page 1sur 17

How To Match Invoices to Purchase Orders

Michael V. Milano
Cheryl Ludwig
Oracle Corporation

• 2-way matching (quantity billed <=


Abstract quantity ordered)
• 3-way matching (adds quantity billed <=
Improve your understanding of invoice quantity received)
matching and provide an overview of invoice • 4-way matching (adds quantity billed <=
matching and setup requirements in both quantity accepted
Oracle Payables and Purchasing.
Purchase orders are created for Inventory
Items or Expense Items. The accounting
Scope entries created by matching invoices to PO’s
will be different for Inventory Items as
I. Overview of Invoice Match Functionality
compared to Expense Items depending on
II. Review of various Setup Screens
whether you accrue expense items on receipt
III. Invoice Match Process
or at period end.
IV. Overview of the Accounting Entries
V. Troubleshooting Tips
You can match a single invoice to multiple
purchase order shipments, or you can match
multiple invoices to a single purchase order
I. OVERVIEW shipment. Oracle Payables ensures that you
match only to purchase orders for the supplier
Oracle Payables shares purchase order on the invoice and that the purchase order and
information from your purchasing system to invoice currencies match.
enable online matching with invoices.
Invoiced or billed items are matched to the
original purchase orders to ensure that you pay II. SETUP
only for the goods or services you ordered
and/or received. If you are billed for an item The first setup step is determining which
over the amount and quantity tolerances you match option you are using, i.e. 2-way, 3-way
define in the Invoice Tolerance window, or 4-way matching. This option can be setup
during Approval, Oracle Payables applies a as a default in Purchasing Options, Supplier or
hold to the invoice, which prevents payment. Supplier Site or on the PO Shipment Line.
Oracle Payables supports three levels of
matching which verify that purchase order and (In Purchasing, Setup > Organization >
invoice information match within defined Purchasing Options > Default)
tolerances as follows:

1
(In Purchasing, Supplier Base > Suppliers >
Sites > Receiving)

2
(In Purchasing, Purchase Orders > Purchase
Orders > PO Shipments > More)

Note that in 11i, there is now the option to


match to purchase order receipts as well as
purchase order shipments. This option is
available in the PO Shipment form “Invoice
Match Option”.

If you are using 4-way matching you must also


enable inspection of the goods when they are
received. To do this you can set the default in
Receiving Options or set inspection at the PO
Shipment level.

3
(In Purchasing, Setup > Organizations >
Receiving Options > Receipt Routing) (In Purchasing, Purchase Orders > Purchase
Note that to require inspection, “receipt Orders > PO Shipments > Receiving Controls)
routing” should be set to “inspection
required”.

4
To require inspection, change receipt routing (In Purchasing, Setup > Organizations >
to “inspection required for this one purchase Organizations). Place your cursor on the
order. inventory org and click the “others” button.
Select Inventory Information. Select alternate
You must also define a Purchase Price region “other accounts”.
Variance Account. This account shows the
variance between the purchase price on the In Payables, the important setup steps are
purchase order and the standard cost for all Payables Options and Tolerances. In Payables
items you receive and deliver into inventory Options you will need to setup the following:
and work in process. Inventory records • Allow Final Matching. Select this option to
purchase price variance on delivery into a allow final matching of purchase order
subinventory. Work in Process records matched invoices. You can indicate a final
purchase price variance on delivery into the match when you match an invoice to a
job or repetitive schedule. purchase order during invoice entry or
when you adjust a matched invoice
You must also define an Invoice Price distribution. Select this option only if you
Variance Account. This account shows the want to allow the option of permanently
difference between the purchase price on the closing the purchase orders. Once a
purchase order and the purchase price on the purchase order is permanently closed, you
invoice. cannot reopen the purchase orders.

5
• Allow Distribution Level Matching. Select You cannot override the account for a
this option if you want to allow matching matched invoice distribution if you use
to purchase order distributions. If you encumbrance accounting or perpetual
select this option, you can match an receipt accrual.
invoice to one or more purchase order • Transfer PO Descriptive Flexfield
distributions. If you do not select this Information. Select this option if you want
option, you can match an invoice to a to automatically transfer the descriptive
purchase order Shipment. flexfield information from the purchase
• Allow Matching Account Override. Select order distribution to the invoice
this option if you want to allow override of distributions when you match an invoice to
the account for an invoice distribution a purchase order.
created from matching to a purchase order.
You can override the account for a
matched invoice distribution in the
Distributions window.

(In Payables, Setup > Options > Payables > The other important setup in Payables is the
Matching). Invoice Tolerance. Invoice Tolerances are
defined to allow for variances between

6
invoices and purchase orders and for In the Price field, enter the percentage
differences in tax calculation. If a tolerance is difference above purchase order shipment line
exceeded, the invoice will go on hold during unit price that you allow suppliers to invoice.
the invoice approval process.
In the Exchange Rate Amount Field, enter the
The Define Tolerance form displays the name amount of variance you allow between an
of the Hold that Oracle Payables will place on invoice amount and the amount of the
the invoice for each tolerance that is exceeded. purchase order shipment to which it is
If an invoice is on hold, the invoice cannot be matched. Enter a value in this field only if you
paid. enter foreign currency invoices in Oracle
Payables.
In the Invoice Tolerances window, select the
check box for each tolerance you want to In the Shipment Amount field, enter the
enforce, and enter tolerance levels for your amount of variance you allow between and
purchase order matching transactions and your invoice amount and the amount of the
invoice taxes. purchase order shipment to which it is
matched.
In the Maximum Quantity Ordered field, enter
either the percent or the quantity difference In the Total Amount field, enter the total
above purchase order shipment line quantity amount of variance you allow for both the
ordered that you allow suppliers to invoice. Exchange Rate Amount variance and the
Shipment Amount combined. If you do not use
In the Maximum Quantity Received field, foreign currency, do not enter a value in this
enter either the percent or the quantity field.
difference above purchase order shipment line
quantity ordered that you allow suppliers to (In Payables, Setup > Invoice > Tolerances)
invoice.

7
III. INVOICE MATCH PROCESS leave the item blank and enter a category, i.e.
MISC.MISC. Enter a description, unit of
The first step in the invoice match process is to measure, quantity, price and need by date.
create a purchase order. There are several
types of purchase orders, including Standard, Click the “Shipments” button.
Planned and Blanket purchase orders. For the
purposes of illustration, this paper will use Enter your shipment information: the
Standard Purchase Orders for all examples. inventory org, ship to location and quantity.

In Purchasing, navigate to Purchase Orders > The “Receiving Control” button allows you to
Purchase Orders. Enter the PO Header enter receiving information like the receipt
information like Supplier, Site, etc. routing (direct delivery, standard delivery or
inspection required). Remember the value for
If you are purchasing an Inventory Item, select receipt routing needs to be ‘inspection
the item from the list of values in the item required’ to enable 4-way matching.
field. If you are purchasing an expense item,

8
9
Click the “Distributions Button”. Enter the processor is run. The process transfers the
quantity and charge account information. Note accounting entries to the GL_INTERFACE
the distribution line type default to expense or table where General Ledger can import the
inventory depending on the item(s) being transactions and then post them to the general
purchased. ledger.

Save your work. Close the distribution and The profile option RCV: Processing Mode
shipment forms to get back to the purchase determines when the receiving transaction
order header click the “Approve” button. processor is run. There are three values for this
profile option, on-line, immediate and batch. If
If you are using 3-way or 4-way matching, you you select online or immediate, the receiving
must receive the items. transaction processor is kicked off as soon as
the receipt is saved. If you select batch, then
In Purchasing, Receiving > Receipts. In the you must run the process as a concurrent
line tab, click the checkbox to the left of the request.
quantity. This indicates which line(s) you wish
to receive. Enter the quantity to be received. Now you can log into Payables and enter an
Save your work. invoice to be matched to either the purchase
order shipment line or the receipt.
It should be noted that accounting entries are
generated when the receiving transaction

10
the next field. Oracle Payables will not allow
In Payables, Invoices > Entry > Invoices or the entry of invoices in closed periods, so
Invoices > Entry > Invoice Batches (if depending on which database you are in, you
batching is enabled in Payables Options). may have to use old dates or open newer fiscal
periods.
Enter invoice header information including
supplier name, supplier site, invoice date, Enter the Invoice Number from the Supplier’s
invoice number, and optionally, invoice Invoice, or accept the default (today’s date) by
description. using the Tab key to move to the next field.

The Invoice Type defaults to Standard. To Oracle Payables will not accept duplicate
enter a basic invoice, choose Standard. invoice numbers for the same supplier.
Enter the Supplier or Supplier Number. Enter the Invoice Amount.
Choose the Supplier Site to which you will
send payment of the invoice. Oracle Payables Next to the “Match” button is a field that
will print the address for this site on the displays the default invoice match option. In
payment. 11i you can match to purchase order shipments
or to receipts. Your choice of which is your
Enter the Invoice Date, or accept the default default is displayed here, although you can
(today’s date) by using the Tab key to move to change this value when matching.

11
Query the purchase orders to which you want Quantity Invoiced, Unit Price, or Match
to match the invoice. For each shipment you Amount. Oracle Payables automatically
want to match, enter two of the following: calculates the remaining field.

12
If you want to match in further detail, you can generated, unless you are using
match to purchase order distributions by encumbrance accounting, which is
choosing Distribute. If the Distribute button is discussed in another white paper.
enabled, that is the indication that there are Accounting entries are generated when the
multiple distributions for the shipment. Receiving Transaction Processor
completes. Since this is a 2-way match
You can also match to the receipt rather that there will be no receipt for this transaction.
the purchase order shipment. To do this select When the invoice is matched, the invoice
receipt match option (the field next to the distribution will default from the PO
match button on the Invoice Workbench). distribution. It will also populate the
PO_DISTRIBUTION_ID in the
Click the “Match” button and enter a receipt AP_INVOICE_DISTRIBUTIONS_ALL
number in the find window. table. To actually create the accounting
entries, you must run the Create
Common Nomenclature: Accounting process.

Charge A/C – account to be affected by the Invoice Matched/Approved, Run Create Acct
PO or invoice distribution Account Debit Credit
Charge A/C 10
IPV A/C – Invoice Price Variance Account AP LIAB 10

AP LIAB – Accounts Payable Liability 2) 3-way match. Create a $20 purchase order
Account for an expense item (period end accrual) and
match it to an invoice for $20. Upon approval
Cash – cash account of the purchase order no accounting entries are
generated. Receive the items Once the
Rec. A/C – receiving account Receiving Transaction Processor has
AP Exp Accr – Accounts Payable expense completed, accounting entries are generated
accrual account. and populated in the GL_INTERFACE table.

AP Inv. Accr – Accounts Payable Inventory Item Received/Receiving Transaction


account Processor completes
Account Debit Credit
Rec. A/C 20
IV. Overview of Accounting Entries AP Exp Accr. 20
The following are various examples of when Items Delivered/Receiving Transaction
encumbrance entries are created and what they Processor completes
should look like.
Account Debit Credit
Rec. A/C 20
Case Scenarios:
Charge A/C 20
1) 2-way match. Match a Standard purchase
Invoice Matched and Run Create Accounting
order for $10 (expense item) to a standard
Account Debit Credit
invoice for $10 with accrual at period end.
AP Exp Accr 20
When the purchase order is created and
AP LIAB 20
approved, no accounting entries are

13
3) Create a purchase order for $30 inventory the Invoice Price Variance account as defined
item (accrue on receipt). Match the purchase in Inventory Information form (Setup >
order to a standard invoice for $30. Organizations > Organizations).

Receive the Item/Receiving Transaction 5) Create a purchase order for an expense item
Processor completes (accrue on receipt) for $50. Match an invoice
Account Debit Credit for $60.
Rec A/C 30
AP Inv Accr 30 Item Received/Receiving Transaction
Processor completes
Deliver the Item/Receiving Transaction Account Debit Credit
Processor completes Rec A/C 50
Account Debit Credit AP Exp Accr 50
Rec A/C 30
Charge A/C 30 Item Delivered/Receiving Transaction
Processor completes
Invoice Matched/Approved, Run Create Account Debit Credit
Accounting Rec A/C 50
Account Debit Credit Charge A/C 50
AP Inv Accr 30
AP LIAB 30 Invoice Matched and Run Create Accounting
Account Debit Credit
4) Create a purchase order for an inventory AP Exp Accr 50
item, (accrue on receipt) for $40. Match a Charge A/C 10
standard invoice for $50.
AP LIAB 60
Item Received/Receiving Transaction Note: The difference in the purchase order
Processor completes price and the invoice price is not recorded to
Account Debit Credit the Invoice Price Variance account. For
Rec A/C 40 expense items, price variances are recorded to
AP Inv Accr 40 the charge account on the purchase order
distribution and not the invoice price variance
Item Delivered/Receiving Transaction account. When the Transfer to General Ledger
Processor completes is run the price variance will show as a
Account Debit Credit separate journal line, as shown above.
Rec A/C 40
Charge A/C 40 V. Troubleshooting Tips

Invoice Matched and Run Create Accounting A. Essential Table Level Detail
Account Debit Credit
AP Inv Accr 40 1. Purchase Orders
IPV A/C 10 PO_HEADERS_ALL
AP LIAB 50 Fields: po_header_id
Segment1=’PO Number’
Note: The difference between the purchase wf_item_type
order price and the invoice price is charged to wf_item_key

14
C: How to remove a final matching hold.
2. Purchase Orders
PO_LINES_ALL If you have an invoice distribution which has
Fields: po_line_id been matched to a final closed PO, the invoice
po_header_id will get a FINAL MATCHING hold.
closed_code
There are 2 ways of final closing a PO line:
3. Purchase Orders
PO_LINE_LOCATIONS_ALL 1. When you match an invoice to the PO line,
Fields: line_location_id you can set the field "final match" to Yes. This
po_header_id is on the same form where you enter the
po_line_id amount and quantity you are matching.
closed_code
quantity_received 2. You can manually Final Close a PO through
quantity_accepted purchasing. The form is called Control
quantity_billed Purchase Orders.

4. Purchase Orders Once you have final closed a PO, the very
PO_DISTRIBUTIONS_ALL NEXT time that you try to match an invoice to
Fields: po_distribution_id the PO, you will get the final matching hold.
po_header_id The hold is placed on the invoice when you
po_line_id run AutoAapproval.
line_location_id
quantity_ordered Example:
quantity_billed 1. Match an invoice to a PO. Choose yes
quantity_cancelled for Final Match.
This invoice will pass AutoApproval.
5. Accounts Payable
AP_INVOICE_DISTRIBUTIONS 2. Match a second invoice to the same
Field: po_distribution_id PO. When you try to match to the line that is
already closed, you will receive a warning
B: New Required Field. message telling you that the line is already
closed. When you try to approve the invoice,
11i has a new required field in the the invoice will be put on final matching hold.
po_line_locations_all table called
match_option. Since this is a new field, when There is no way to manually remove the hold;
upgrading this field will be NULL. After the the system must remove the hold.
upgrade you will need to run the following
script to populate this field. There are two workarounds for this situation:

update po_line_locations_all Workaround #1:


set match_option = ‘P’ --------------
where match_option is NULL; You need to reverse the distribution line that
has the final match hold.
commit; You can then create a new PO line, and then
match to that line.

15
Workaround #2: E: What do the values of the final match
-------------- flag mean?
You can manually create a distribution line on
the invoice that is not matched to the PO, but In the
is charged to the correct GL account. AP_INVOICE_DISTRIBUTIONS_ALL table,
the FINAL_MATCH_FLAG codes mean:
NOTE: You may want to use this second
workaround if the goods were already N - The PO shipment line has not been
received against the original PO line. matched.

D: Price Holds on Invoices. Y - The PO shipment line has been


matched, AND one of the invoices for this PO
Several clients have stated that they had POs has been final matched. When a PO is final
with several invoices already matched to the matched to an invoice, all other invoices for
POs. They enter an invoice where the invoice that PO are updated, too. So you cannot
price is the same or lower than the PO price, tell from this flag, which invoice was final
and they get a PRICE hold. matched.

Basically, the problem is as follows. The D - The PO shipment line is closed. You
PRICE hold is because the average price of all cannot invoice this distribution line.
the invoices matched to the PO is compared to
the PO price. Since the average price is F: Descriptive Flexfields.
greater than the PO price, the PRICE hold
comes on, even though the price on the current Descriptive flexfields that appear on the
invoice is the same or lower than the PO price. purchase order header and purchase order lines
do not transfer to Accounts Payables when
NOWHERE in the documentation does it state matched. Only descriptive flexfields on the
that the "average price of all the invoices purchase order distribution will be transferred
matched to that PO" is used. The doc only to Oracle Payables.
states that the invoice price is compared to the
PO price and the tolerance used. The Conclusion
documentation needs to be updated to include
the correct calculation. It is our desire that this paper has helped you
understand the fundamentals of Invoice
Currently, in the Matching Holds table it Matching. Breaking Invoice Matching down
states: should help you understand the process. We
hope that you are now better equipped to
PRICE hold Invoice unit price > [purchase troubleshoot problems and determine what
order unit price x needs to be done to resolve the issue.
(1 + % tolerance)]
In addition, if you encounter a problem that
The "invoice unit price" needs to be changed requires assistance, please remember to log an
to specify the weighted average calculation of iTAR with Oracle Support. They may have
all the invoice prices on all invoices matched seen the issue before and may already have a
to that PO. solution for the issue!

16
About the Authors

Michael Milano is a Technical Analyst with


the Oracle Support Payables group. He has
been working for Oracle Support for over 3
years.

Cheryl Ludwig is a Technical Analyst with the


Oracle Support Purchasing group. She has
been working for Oracle Support for over 3
years.

17

Vous aimerez peut-être aussi