Select Page

SAP – 3 way match PO, GRN, Invoicing

Testing 3 way match in SAP : Walk-Through and Configuration testing.


3 way matching is one of the most important control in Purchase to Pay Cycle. Is this fails, there is a very high chance of fraud in the company.
Read about 3 way matching at Accounting Coach 

SAP out of the box does not provide the required configuration for effective implementation, hence checking configuration is critical in this control.

As we discussed in our introduction post about Application controls, we test 2 things in every automated and IT dependent control. This (3 Way match) being an automated control, I have divided the testing in Walk-Through and Configuration.


Create PO

1. Observe organizational data in PO header tab (Pur org, Company code)
2. Inspect ‘GR-Bsd IV’ field in Invoice tab at Item level.
[Check if ‘GR bsd IV’ field is freezed. If it is not freezed and the same is unchecked, then this can result in creation of invoice without GRN. If not freezed, then pull out relevant data to check cases where invoicing was done without GRN.(Table – EKPO Filed – WEBRE)]
3. Inspect ‘Over delivery tolerance’ field and ‘Unlimited Over delivery’ check-box in Delivery tab at Item level . Check if these two fields are freezed. If it is not freezed then we need to pull out relevant PO data where excessive over delivery tolerances and PO’s with unlimited over delivery check.
(Table – EKPO Fileds – UEBTO and UEBTK)

Create a GRN

1. Create a GRN against PO and observe if system allow booking GRN for quantity in excess of PO quantity. (This is called as Negative testing)
(TCode – MIGO is used for GRN)


1. Create a vendor invoice against PO and observe if system allow changing amount and quantity in excess of GRN or PO.
[Negative testing – if its editable, check tolerance setting in TCode -OMR6 for ‘PP’ and ‘DQ’ key. Check whether invoice is going for a payment block when exceeding tolerance limit]
 2. In the ‘Details’ tab within the MIRO screen, observe if ‘Inv. party’ field can be edited
[This might result in creation of vendor invoice in name of vendor different from PO, if its editable, check whether invoice is going for a payment block]
3. Check ‘G/L Account’ tab within MIRO and observe whether direct posting to any other G/L account can be possible while vendor invoice posting
[In case direct posting allowed, check tolerance setting in OMR6 for ‘AN’ key]
4. Inspect SOD between access to release payment block (MRBR, FB02) and access to process vendor invoice (MIRO, MIR7)
5. Accounting entries at the time of GRN and Vendor Invoice posting.


In configuration we check the following

PO Screen Layout

Menu path – IMG / Materials Management / Purchasing / Purchase Order / Define Screen Layout at Document Level

Layout should be:
• Overdelivery Tolerance – Display
• Unlimited Overdelivery Indicator – Display
• GR based IV verification – Display
[Display only when mandatory in all vendor master (Table – LFM1), otherwise ‘Required’ and ‘Display’ for all document types in scope]

Path to View Screen layout
View Screen layout for – ME21N, ME22N, ME21, ME22
View config for “GR/IR Control”
Layout config for ME21

‘GR-Bsd IV’ can also configued at vendor master level, extract LFM1 table for company code in scope and observe Filed – WEBRE
Since SAP apply most restrictive setting in case of layout, we need to check layout setting at following three level:
1. Transaction code (ME21N, ME22N, ME21, ME22)
2. Activities type (AKTH, AKTV)
3. Field selection key (Table – T161 Field – BREFN) based on document types in scope.

A field selection key determines whether a field is:

  • A mandatory-entry field (input required)
  • An optional-entry field (input possible)
  • A display field (field displayed only, input not possible)
  • Suppressed (Not visible)

Purchasing value key – For default tolerance setting

Menu path – IMG /Materials Management / Purchasing / Material Master / Define Purchasing Value Keys (T405)
Inspect configuration to assess whether for any of the purchasing value keys (PVK), the following scenarios
1. “Over delivery tolerance” is set to a reasonable percentage.
2. “Unlimited over delivery” indicator is unchecked.
[These PVK are assigned to material master (Table -MARA Filed – EKWSL)]
Hence, first from MARA table, get list of all “PV key” assigned to materials. Then view config for these PV keys.

Path to view list of PV keys defined
PV keys defined in my SAP

Config for PVKey – “1”

Purchasing value key determines the following things:
1) Reminders keys- There are 3 keys which determine in how many days before or after the vendor has to be reminded or urging letters for the material procurement.
2) Over and under deliveries tolerances.
3) Order acknowledgement requirements in PO. 

This blog is owned by CA Adarsh Madrecha. All rights reserved.

About The Author

CA, ISA, CISA, BCAF. Friends call me Techno Savvy Chartered Accountant. I work at EY in System Audit


  1. There is noticeably a lot to know about this. I believe you made certain nice points in features also.

  2. very nice article, I love this website, keep sharing


Subscribe To my Newsletter

Subscribe To my Newsletter

Join the mailing list to receive the latest news and updates from the blog

You have Successfully Subscribed!