How to Audit the SAP S/4HANA Forecast-to-Stock Cycle

Audit Controls for the SAP S/4HANA Forecast-to-Stock Cycle

Inventory audits are rarely just about counting boxes.

They are about trust. Trust that the quantities in SAP S/4HANA reflect physical reality. Trust that movements are valid. Trust that scrapped material is actually scrapped. Trust that stock in transit exists. Trust that inventory valuation is right, period cutoffs are right, and adjustments are not hiding mistakes or theft.

That is why the forecast-to-stock cycle matters so much, even when most audit work in this area ends up focusing on inventory management rather than forecasting.

I have seen inventory environments where the count procedures looked disciplined but the underlying movement controls were weak. The result was predictable. Repeated write-offs. Unexplained adjustments. Warehouse frustration. Management arguing over whether the issue was process, system, or people. I have also seen the reverse. Well-designed movement controls, cycle counting discipline, material master governance, and better reporting reduced inventory noise sharply before year-end counts ever began.

This article gives you a practical framework for auditing the SAP S/4HANA forecast-to-stock cycle, with emphasis on inventory management. It covers the key S/4HANA changes, enterprise structure, material master, movement types, security, configurable controls, and the most useful audit reports. As requested, I include transaction codes, key tables, technical field names, and practical implementation guidance throughout.




Understanding the core framework for a SAP S/4HANA forecast-to-stock audit

Most organizations say they want accurate inventory.

What they usually mean is something more complicated.

They want accurate quantity. Accurate valuation. Accurate timing. Accurate movement history. Accurate status. Accurate ownership. Accurate location. And they want all of that without slowing operations down.

That is the real challenge in the forecast-to-stock cycle.

Component 1: Forecast-to-stock is operational first, but inventory control is financially significant

Forecasting and planning often sit close to operations leadership and supply chain specialists. Inventory itself sits at the meeting point between operations and finance.

A material receipt can affect stock, GR/IR, valuation, and later expense recognition. A scrap posting can hit both warehouse accuracy and the income statement. A delayed goods receipt can distort period cutoffs. That is why inventory management is one of the most audit-relevant parts of the cycle.

Original implementation tip: In scoping discussions, separate forecast risk from inventory accounting risk, but do not separate them too far. Weak forecasting often shows up later as obsolescence, emergency transfers, and odd adjustment behavior.

Component 2: SAP S/4HANA changed valuation and the inventory data model in useful ways

S/4HANA improved inventory in at least two ways that matter for audit work.

First, valuation is more flexible. Actual costing and multiple valuation views are possible in ways that were harder before. Second, the underlying data model changed. Material movement data is now driven through MATDOC and summarized through MATDOC_EXTRACT, improving report performance and simplifying some analytics.

If you audited inventory on older SAP releases, you will feel the difference. Especially on movement reporting.

Original implementation tip: Revisit your legacy audit analytics after migration. Some old logic still works, but SAP S/4HANA often allows broader and faster population analysis than teams realize.

Component 3: Inventory risk often hides in movement types, not just in counts

Many audits over-focus on the count and under-focus on the movement population.

That is a mistake.

Inventory can be distorted through:

  • Reversals
  • Scrap postings
  • unusual transfers
  • direct inventory difference postings
  • initial stock movement types
  • adjustments tied to production or quality
  • custom movement types no one revisited after implementation

Original implementation tip: Always start the inventory audit with movement type analytics. The count process may be strong, but movement behavior often reveals where the real control pressure sits.

What Changed in SAP S/4HANA for Inventory Management

Two areas carry significant changes from SAP ERP.

Valuation. SAP S/4HANA allows inventory valuation at actual cost, not just moving average or standard cost. Multiple currency valuation is now supported (up to three currencies versus one). Three levels of valuation provide legal entity, group, and profit center valuations directly from SAP rather than requiring external systems or manual spreadsheets.

The underlying data model. Material-related tables MARC and MARD still exist and contain master data, but the values previously stored directly in those tables are now calculated on the fly using table MATDOC_EXTRACT, which contains material transaction values. Table MATDOC contains material movement header and detail data previously found in tables MKPF (Material Document Header) and MSEG (Material Document Segment). MATDOC_EXTRACT is a summarized version of MATDOC. Reports run dramatically faster.

Many transactions starting with MB (like MB01 and MB1A) have been replaced by transaction MIGO, which uses a new locking concept during parallel posting. SAP Note 2210569 documents this change.

Original implementation tip: If you performed audit analytics on SAP ERP using tables MKPF and MSEG, the same queries still work in SAP S/4HANA because those tables still present data in the original format. But for new analytics development, build against table MATDOC for better performance. The difference is dramatic. Transaction MB51 (Material Document List), which routinely crashed or required heavy filtering in material-rich SAP ERP environments, now runs efficiently because the underlying data storage has been restructured. This means full-population analytics that were previously impractical are now feasible.

Forecast-to-Stock Risks That Drive Your Audit Scope

Most auditors think of inventory counting when they think of inventory auditing. Counting matters. But the risks extend far beyond count accuracy.

Costs recorded in the wrong period. Costs associated with sales, manufacturing consumption, and inventory loss must be recorded in the period incurred. Improper counts shift costs outside the correct period, creating incorrect financial statements and potentially ill-informed management decisions. Year-end physical inventory counts sometimes produce unnecessary adjustments from counters unfamiliar with the inventory. Without proper review, recounting, and approval, these adjustments create significant valuation errors.

Portions of inventory excluded from counting. Cycle counts set to cover only single storage locations can create dramatically fluctuating inventory levels if materials are moving between locations and the adjusted inventory is simply in a different place.

Inaccurate or incomplete inventory adjustments. Adjustments outside cyclical counts occur when product is damaged during movement or when employees find uncounted goods. Without review, these adjustments can create expenses or inflate inventory value. I have seen scrapped material (removed for quality issues) found by an employee and recorded back to the original inventory item and value, not realizing it was intended to be scrapped.

Theft. Transactions that move inventory out of the system can mask physical theft. Scrapping transactions reduce inventory value to zero and justify moving material to a dumpster or external location for later retrieval. Movement type 309 was designed to correct batch numbers but allows a user to transform one material into another in the system. Someone could convert a laptop computer into a USB flash drive, ship the flash drive, and the cost difference would either inflate the average cost of flash drive inventory or, under standard costing, disappear into a variance bucket spread across all sales.

Obsolete or expired inventory. Obsolete inventory remaining on the books overstates asset values and defers costs. I have seen managers keep obsolete inventory on the books to meet bonus targets or create the appearance that their operation runs more effectively than it does. SAP S/4HANA provides expiration date fields. Monitoring inventory past expiration identifies material that should be adjusted.

Overvalued consignment inventory. Consignment inventory moves outside the company's custody. Without physical observation and third-party confirmation, consignment inventory can be overstated.

Improper storage of hazardous materials. Hazardous or restricted-access materials require special storage locations and proper security. If not coded correctly in SAP S/4HANA, materials may be stored in inappropriate locations.

Implementation tip: Do not focus exclusively on inventory overvaluation. Understatement is equally risky and often overlooked. The plant manager story I opened with is not unusual. I have also seen receiving docks where goods were staged but not entered into SAP until after month-end close, deliberately suppressing the inventory balance and the corresponding accounts payable recognition. If your audit only looks for phantom stock, you will miss manipulation in the other direction.



Understanding the Enterprise Structure

The forecast-to-stock cycle does not introduce new enterprise structure elements beyond those discussed in previous chapters. The relevant assignments can be viewed through transaction SPRO, SAP Reference IMG, Enterprise Structure, Assignment.

Primary assignments affecting inventory include plant to company code (linking materials management to financial accounting), purchasing organization to company code (linking procurement to financial accounting), and purchasing organization to plant (linking procurement to specific material locations).

Two points about inventory-related organizational units deserve emphasis.

Plants can be a location, a building, a warehouse, or a corporate office. They are not restricted to manufacturing facilities. Using a corporate office as a plant allows purchase orders to be set for delivery to that office and assignment of users as purchasers for that location.

Storage locations are unique to a plant and required to store valuated material within the system. Each storage location exists within exactly one plant.

Key Concepts for Inventory Auditors

Movement Types: The Complete Risk Framework

Movement types are the driving force behind all inventory transactions in SAP S/4HANA. Understanding their risk profile is essential for any inventory audit.

Movement types 101 through 199 cover goods receipts. Receipt from vendors, from other warehouses or plants, or from production of finished goods. Types ending in 1 receive. Types ending in 2 reverse previous movements. The reversal types (like 102) deserve audit scrutiny because in production, a 102 reversal puts raw materials back into stock and reverses a finished goods production posting. This could be used erroneously to record defective product or to hide stolen finished goods.

Movement types 201 through 299 cover consumption. Internal movements between cost centers or projects, movements applied to sales orders or production orders. Movement type 231 applies to sales orders involving package-type selections. Movement type 261 shifts inventory to a production department for manufacturing. These movements offset within the organization.

Movement types 300 through 399 and 641 through 649 cover transfers. These do not change inventory values. Common manufacturing transactions include 321 (move into quality inspection) and 322 (move out of quality). These are status changes only, not quantity or value changes.

Movement types 401 through 499 cover group-to-group transfers. Movement types 411 and 412 move items between storage locations within the same plant. These are necessary for operations but generally represent noise during an audit. They may be interesting when investigating specific storage location discrepancies.

Movement types 501 through 599 are the highest-risk category. They relate to exceptional situations like receipt without a purchase order or delivery at no cost. Movement types 555 and 556 allow scrapping, which writes material off the books entirely and makes theft easy to conceal. Movement types 561 through 566 allow movements that skip normal sequential states, such as making material ready for production when it was never received through the standard receiving process. These types are designed for go-live when material already exists physically but is not yet in SAP. After go-live, access should be removed.

Movement types 600 through 639 cover deliveries to customers. Most activity is 601 (delivery) and 602 (return). Because these tie to sales orders, they represent more controlled movements.

Movement types 700 through 799 cover inventory differences. Physical inventory count adjustments, cycle count adjustments, and day-to-day inventory corrections. This is the highest-risk range for adjustments and should always require approvals or entry by inventory managers.

Movement types 800 through 899 cover special stock including consignment (820s), returnable packaging (840s), and tax-related activity.

Movement types starting with 9, Y, or Z are custom and not supplied by SAP.

Movement type names are context-dependent. The same movement type (like 101) has different descriptions depending on whether it is used for a purchase order goods receipt, a production order receipt, or another context. Table T156T contains all variations, filtered by login language, with different values for Special Stock Indicator, Movement Indicator, Receiving Indicator, and Consumption Indicator. Movement type 101 alone has 19 different description variations and 41 total behavioral variations.

Material Documents

Material documents are the journal entries of the inventory system. A material document number can include one or multiple lines. Multiple lines exist because they relate to one another. A production order consumption posting includes all raw materials consumed in one transaction. Receipt of finished goods from that production order creates a separate material document. View material documents through transaction MB51.

Valuation Area

The valuation area determines how inventory value is set and can be defined as either a plant or a company code. Once established during initial configuration, this setting cannot be changed. SAP recommends plant-level valuation, and it is mandatory for organizations using production planning, costing functionality, or SAP S/4HANA retail.

View the configuration through transaction SPRO, SAP Reference IMG, Enterprise Structure, Definition, Logistics General, Define Valuation Level.

Valuation areas can be configured to allow negative stocks. A negative balance requires three conditions: the valuation area allows negative stocks, the storage location allows them, and the plant data of the material master allows negative stock quantity (the latter is not required for special stock).

View negative stock configuration through transaction SPRO, SAP Reference IMG, Materials Management, Inventory Management and Physical Inventory, Goods Issue/Transfer Postings, Allow Negative Stocks. Drill into related plants to see which storage areas also allow negative posting.

Original implementation tip: Movement types 561 through 566 are implementation movement types designed for initial stock uploads. After go-live, access should be revoked from all users. I found an organization with 4,200 postings using movement type 561 in the 18 months after go-live. None had corresponding purchase orders. The warehouse team used them as a shortcut when goods arrived without matching POs, bypassing all purchasing controls including the three-way match. The root cause was never addressed because nobody monitored these movement types after the implementation team disbanded.

Master Data: Material Master for Inventory Audits

View material master data through transaction MM03. SAP S/4HANA has more than 20 different material data views.

Basic Data 1 View

Material type determines whether a material is finished goods, raw materials, packaging, supplies, or another category. The material type configuration determines the cost calculation method (standard or average) and whether that method can be changed per material. After initial creation, the material type is not visible on any standard view. Click the information icon to the right of the material ID to see additional details including material type. A standard audit procedure validates governance over material type assignment and independently verifies a sample of assigned values.

Material group controls the valuation class assignment (which determines GL account postings for different movement types), purchasing value keys (defining reminder days, tolerance limits, shipping instructions, and order acknowledgment requirements). Validate governance and sample-test assigned values.

Authorization group restricts which user IDs or roles can interact with the material through authorization object M_MATE_MAT (or M_MATE_CHP for batch record maintenance).

Plant Data / Storage 1 View

Haz. material number indicates the material is dangerous and can link to regional hazardous goods data for tracking.

CC Phys. Inv. Ind. defines the ABC indicator for cycle counting, driving how frequently the material is selected. A materials are counted most frequently, C materials least frequently.

CC fixed, once checked, prevents the cycle counting ABC indicator from being changed once the count has started. This prevents someone from moving a material to a less frequent count category mid-cycle.

Batch Management determines whether batches are used for tracking the material in smaller groups.

The plant-specific material status indicator restricts material usage. View configuration through transaction SPRO, SAP Reference IMG, Logistics General, Material Master, Settings for Key Fields, Define Material Statuses. A material assigned status 05 (obsolete) with message type B (error) cannot be purchased, used in a BOM, used in routing or recipe, considered for MRP, or used in production.

MRP Views

Key fields affecting upstream ordering processes include reorder point (triggering MRP acquisition), ABC indicator based on consumption value (driving cycle count frequency), planned delivery time in days (determining order lead time), goods receipt processing time in days (time from receipt to final inspection), safety stock level (preventing depletion of critical inventory), and maximum inventory level (limiting total purchase quantity to prevent excess holdings).

Original implementation tip: When auditing material master data, build a query that identifies materials where the price control field on the Accounting 1 view is set to S (standard cost) but the standard price has not been updated in more than 12 months. Standard costs that are not periodically reviewed drift from actual costs, creating valuation distortions that accumulate over time. I found an organization with 3,400 materials on standard cost where the standard price had not been updated since go-live 26 months earlier. Raw material market prices had changed by 15-40% during that period. The inventory valuation on the balance sheet was materially misstated.

Security Considerations

Limiting Access to Powerful Transactions

Restrict the following to minimal personnel: Transaction MBPM (delete held data from MIGO), transaction MIAD (delete or archive inventory documents), transaction MM17 (mass maintenance of material data), transaction MSL2 (delete logs for mass changes), transaction MI07 (post inventory differences), and transaction MI32 (block a material for physical inventory).

Monitor usage of these transactions independently of the authorized group.

Inventory-Specific Authorization Objects

Authorization object M_SKPF_VGA (Inventory Sampling: Transaction) limits activities related to inventory sampling. M_SKPF_WRK (Inventory Sampling: Plant) limits physical inventory actions within a plant. M_ISEG_WDG (Physical Inventory: Difference Posting in Plant) restricts who can post physical inventory differences. M_ISEG_WZB (Physical Inventory: Count and Difference Posting in Plant) restricts who can post counts and differences.

Authorization object M_MSEG_BWA (Goods Movements: Movement Type) is the most critical for inventory audits. Use it to limit who can create high-risk movement types including 309 (material-to-material transfer), 551-556 (scrapping), and 561-566 (implementation movement types). SoD conflicts can exist within this single authorization object. A user with both movement type 101 (goods receipt) and 102 (goods return) within M_MSEG_BWA can receive goods and reverse their own receipts.

Original implementation tip: Movement type 309 deserves special attention in every inventory audit. It was designed to allow correction of batch numbers or incorrect entries during receiving. But it also allows a user to transform one material into another material within the system. Under standard costing, the cost difference flows to a variance account that gets spread across all sales. The transformation is invisible in the material consumption reports. The only way to detect it is through analysis of movement type 309 transactions, comparing the source material to the target material and questioning whether the transformation makes business sense. If your organization has no legitimate use for movement type 309, block it through security. If it has legitimate use, restrict it to a small number of users and monitor every transaction.

Testing Common Controls: Erroneous or Fraudulent Inventory Adjustments

Freezing Book Inventory During Counts

SAP S/4HANA is real-time. In plants with high inventory turnover, quantities change constantly. Between when an employee finishes counting and when they enter the count into SAP, goods movements can alter the system balance.

Consider this scenario. SAP shows 100 items. The counter finds 99. Normally, entering 99 creates a 1-unit adjustment. But if a goods receipt of 20 items posts between the count completion and data entry, SAP now shows 120 items. Entering 99 creates a 21-unit reduction. The inventory is now understated by 20 units.

Freezing book inventory mitigates this. When frozen, SAP batches movements in memory and applies them only after the count is entered. Two requirements: the storage location must be configured to allow freezing, and someone must run transaction MI33 before the count begins. After count entry, MI33 is rerun with the Reset book inv. Balance option to unfreeze.

View which storage locations allow freezing through transaction SPRO, SAP Reference IMG, Materials Management, Inventory Management and Physical Inventory, Physical Inventory, Allow Freezing of Book Inventory Balance in Storage Location. The configuration shows a simple list of storage locations with checkboxes.

To verify that freezing actually occurred during counts, check the security audit log for transaction MI33 execution. If transaction starts are enabled for relevant employees, you can see who ran MI33 and when.

Inventory Adjustment Tolerances

Tolerance groups define the maximum amount of an inventory adjustment a user can post in a single document, plus the maximum per line item. One or more tolerance groups are assigned to a company code, then assigned to user IDs.

Users not assigned to a tolerance group can post unlimited adjustments. Company codes not assigned to a tolerance group allow any authorized user to post unlimited adjustments.

View tolerance group configuration through transaction SPRO, SAP Reference IMG, Materials Management, Inventory Management and Physical Inventory, Physical Inventory, Define Tolerances for Physical Inventory Differences. Select Physical Inventory Tolerance Group. If your company code does not appear, no tolerances are configured.

Double-click the tolerance group to see values. The configuration includes maximum per line item and maximum per document, both in company code currency.

View user assignments through the same IMG path, selecting the User Name option. Watch for the asterisk value, which assigns all user IDs to that tolerance group. If a catch-all asterisk assignment exists, the associated tolerance group should be the most restrictive. Setting the asterisk tolerance group to $0.01 means every user defaults to essentially zero adjustment capability unless consciously assigned to a specific tolerance group.

The configuration screen sorts alphabetically by tolerance group then by company code. If a company code is assigned to multiple tolerance groups, you must scroll through the entire list to see all assignments.

Original implementation tip: The most common observation on inventory adjustment controls is that organizations simply do not use them. Many people I have spoken with did not know SAP S/4HANA had these capabilities. While detective review of inventory adjustment reports remains the primary control, enabling these preventive settings catches problems before they reach the review stage. In the rare cases I find inventory tolerances configured, I regularly see only one tolerance group (defeating the purpose of differentiation) or the same amount across all company codes (failing to account for currency differences). A $5,000 tolerance in USD is very different from $5,000 in a currency with significantly lower purchasing power.

Other Configurable Controls Worth Testing

Change Documents for Physical Inventory

A plant-level setting controls whether change documents are created when someone modifies a physical inventory document or count. If disabled, changes go unrecorded in the SAP change log, allowing fraud or suspicious activity to go undetected.

View through transaction SPRO, SAP Reference IMG, Materials Management, Inventory Management and Physical Inventory, Plant Parameters. Double-click the plant. Check whether the Change Document field is selected. If unchecked, no changes to physical inventory documents are being recorded.

This is a straightforward but critical finding. Without change documents on physical inventory, you cannot determine whether someone altered a count after it was entered, changed the material on an inventory document, or modified quantities after supervisory review.

Cycle Count Indicators

Cycle count indicators drive counting frequency through ABC analysis. View through transaction SPRO, SAP Reference IMG, Materials Management, Inventory Management and Physical Inventory, Physical Inventory, Inventory Sampling, Cycle Counting.

Configuration shows indicators assigned to each plant. The Percentage column must sum to 100% across all indicators. When ABC analysis runs, SAP sorts materials from highest consumption to lowest. Materials accounting for the top percentage (typically 56% for A) receive the most frequent counting. The No.of phys.inventories column shows how many counts are expected during the fiscal year. Phys.inv.interval is calculated by SAP. Float time provides a grace period before a material is tagged for automatic counting.

Verify that the volume of inventory being counted at each frequency provides sufficient assurance for the reliance management intends to place on inventory values.

Preventing Reversal of Goods Receipt After Invoice

If using goods receipt-based invoice verification, SAP can prevent reversal of a goods receipt after the related invoice has been posted. Without this control, a goods receipt could be reversed after the vendor has been paid, removing the inventory from the books while the payment stands.

View through transaction OMJJ, selecting Movement Type. Review configuration for movement type 102 (goods receipt reversal) and any custom reversal movement types. The RevGR Despite IR indicator controls this behavior. If set to allow reversal despite posted invoices, the control is not effective.

Material Status Restrictions

Material status indicators can prevent usage of materials across multiple functions. A material marked as obsolete with error-level messages cannot be purchased, used in BOMs, used in routing, considered for MRP, or used in production.

Verify that materials with status restrictions are actually restricted. Query the material master for materials with status indicators and cross-reference against recent transaction activity. A material flagged as obsolete but still appearing in purchase orders or production orders indicates either a configuration problem or a process bypass.

Useful Audit Reports

Change Reports

Program RSSCD200 mines SAP change document tables for material master changes across all materials within a date range. Run with object class MATERIAL. This program requires transaction SA38 to execute. I recommend creating a custom transaction that calls this program for the material object class to avoid granting SA38 access.

The output shows which materials were changed, who made the change, when, and the old and new values for each changed field. Focus on standard price changes, material type changes, valuation class changes, and material status changes.

Transaction MI12 shows changes to physical inventory documents by fiscal year. Filter by user ID for targeted investigations. Drill into line items to see specific quantity changes with old and new values.

Transaction MM04 shows changes to individual material master records but requires specifying a material number.

Stock Value and Selection Reports

Transaction MB52 (Display Warehouse Stocks of Material) shows current stock quantities and values. Filter by material, plant, storage location, or batch number. Restrict by stock type such as zero-quantity materials or special stocks. The limitation is that MB52 provides only current-date data with no historical capability.

Transaction MB5B (Stocks on Posting Date) shows stock movements over a selected period. Filter by material number, manufacturer part number, GL account, storage location, valuation type, or movement type. Display in total or detail view. For valuated stock, the detailed view includes accounting document numbers and local currency amounts. Clicking material document or accounting document numbers opens the related documents.

Material Document Reports

Transaction MB51 (Material Document List) provides all movements or filtered subsets. Filter on header data (posting date, user ID) or item data (material number, supplier, movement type). Click the Detail List icon for analysis-friendly output. From the detail view, the Environment menu provides direct links to the purchase order, stock overview, and accounting document.

For audit analytics, focus MB51 on specific high-risk movement types: 309 (material transformation), 551-556 (scrapping), 561-566 (implementation movements), and 700-series (inventory adjustments). Filter by user ID to identify concentration patterns. Filter by time of day to detect after-hours activity.

Exception and Reconciliation Reports

Transaction MB5L (List of Stock Values: Balances) compares valuated inventory balances in materials management to financial accounting balances. Variances highlighted require investigation. SAP Note 1846376 notes that differences can result from inventory balances not carried over from the prior year. Double-click records for detail by valuation area and material.

Transaction MB5K (Material Consistency Check) identifies inconsistencies in material data. Anything appearing in the output should be investigated and resolved promptly. Management should run this report regularly.

Other Useful Reports

Transaction MB5T shows stock in transit for the current day. Transaction MB5TD shows stock in transit for past dates. Transaction MIDL with the Blocked option shows inventory items blocked from physical inventory. Transaction MI24 displays physical inventory documents. Transaction MI23 displays physical inventory data for a specific material. Transaction MI20 displays physical inventory differences.

SAP S/4HANA Audit Program: Forecast-to-Stock Cycle (Inventory Management)

Audit Objectives

This audit program provides a structured approach for evaluating the Forecast-to-Stock cycle, with primary focus on inventory management, in an SAP S/4HANA environment. The program is designed for auditors, compliance professionals, and operations specialists who need to assess the reliability, integrity, and effectiveness of inventory processes, including material movements, valuation, physical inventory, and related controls. The primary objectives are to:

  • Evaluate the design and operating effectiveness of controls over inventory transactions, including goods receipts, issues, transfers, and adjustments

  • Assess configuration settings and master data that impact inventory valuation and movement processing

  • Review security controls that protect inventory transactions from unauthorized or fraudulent activity

  • Validate physical inventory processes, including cycle counting and year-end counting procedures

  • Identify control weaknesses and provide recommendations for remediation, particularly focusing on fraud prevention and inventory accuracy

This program follows a risk-based approach consistent with COSO Internal Control Framework, COBIT 2019, and common external audit practices . The procedures should be tailored to your organization's specific risk profile, industry requirements, and system complexity.


Section 1: Understanding the SAP S/4HANA Forecast-to-Stock Environment

1.1 SAP S/4HANA Specific Features Impacting Inventory Management

Audit Objective: Understand the unique SAP S/4HANA features that affect inventory management processes and identify any related risks.

Background: SAP S/4HANA introduces significant changes to inventory management compared to legacy SAP ERP systems. Key changes include enhanced valuation capabilities (actual cost, multiple currencies, multiple valuation levels), a redesigned data model (MATDOC/MATDOC_EXTRACT tables), and the consolidation of material movement transactions into MIGO .

Audit Procedures:

  • Identify which SAP S/4HANA-specific inventory features are implemented:

    • Actual cost valuation (if applicable)

    • Multiple currency valuation (up to three currencies)

    • Multiple valuation levels (legal entity, group, profit center)

    • MATDOC/MATDOC_EXTRACT table structure for material documents

  • Review SAP Notes related to retired functionality:

    • SAP Note 2210569 - Consolidation of MB* transactions into MIGO

  • Verify that the organization is using current, supported transactions (e.g., MIGO instead of legacy MB transactions)

  • Review documentation of inventory processes that leverage new S/4HANA functionality

  • Assess whether the migration to SAP S/4HANA has introduced any new risks or control gaps

Important Consideration: If you audited SAP ERP inventory management, you will appreciate the speed improvements in SAP S/4HANA. Transaction MB51 (Material Document List) now runs much more efficiently using table MATDOC_EXTRACT, a summarized version of MATDOC. Table MATDOC contains material movement header and detail data previously found in tables MKPF and MSEG .


Section 2: Risks in the Forecast-to-Stock Cycle

Audit Objective: Identify and understand the key risks affecting inventory processes and related financial reporting.

Background: Inventories can be a significant portion of an organization's balance sheet, with transactions impacting the income statement and statement of cash flows in high volumes and amounts. While forecasting and MRP are operationally critical, most audit focus tends to be on inventory management, which starts once materials are procured and ends when they are incorporated into finished goods, sold, or scrapped .

Risk Categories and Audit Focus:

Risk CategoryDescriptionAudit Focus
Costs recorded in wrong periodSales, manufacturing consumption, and inventory loss not recorded in period incurredReview period-end cutoffs; analyze physical inventory adjustments
Portions of inventory excluded from countingCycle counts only covering specific locations, missing inventory elsewhereReview cycle count scope and coverage
Inaccurate inventory adjustmentsDamaged goods, found goods, or obsolete materials incorrectly valuedReview adjustment approvals; analyze adjustment patterns
TheftUnauthorized removal of inventory masked by system transactionsMonitor high-risk movement types; review segregation of duties
Obsolete or expired inventoryInventory overvalued due to obsolescence or expirationReview expiration dates; analyze slow-moving inventory
Overvalued consignment inventoryInventory outside company custody not properly verifiedConfirm consignment inventory with third parties
Improper storage of hazardous materialsHazardous materials not properly coded or securedReview hazardous material designations and storage locations

Important Consideration: Don't just focus on inventory overvaluation. There is also risk that the company owns goods not included in the SAP S/4HANA inventory list. For example, a plant manager might store material outside the warehouse near period close to deflate inventory and prevent expense recognition .


Section 3: Enterprise Structure Review

Audit Objective: Verify that the enterprise structure supporting inventory management is appropriately configured and aligned with organizational and operational requirements.

3.1 Inventory Management Organizational Units

Background: Inventory management relies on proper assignment of organizational elements including plants, storage locations, and valuation areas. These assignments drive the flow of materials through the forecast-to-stock cycle .

Audit Procedures:

  • Using Transaction SPRO, navigate to SAP Reference IMG • Enterprise Structure • Assignment

  • Review the following assignments affecting inventory management (see Figure 9.1):

    • Assign plant to company code (affects financial posting)

    • Assign purchasing organization to plant (affects procurement)

    • Assign standard purchasing organization to plant (affects procurement defaults)

    • Assign plant to sales organization/distribution channel (affects sales)

Key Concepts:

  • Plants can be a location, building, warehouse, or even a corporate office. They are not restricted to manufacturing facilities.

  • Storage locations are set within a plant, unique to that plant, and required to store valuated material.

3.2 Valuation Level

Background: Valuation areas determine how inventory value is set—either at plant level or company code level. This setting cannot be changed after initial configuration .

Audit Procedures:

  • Determine valuation level configuration:

    • Transaction SPRO • Enterprise Structure • Definition • Logistics – General • Define Valuation Level - see Figure 9.2

    • Document whether valuation is at plant or company code level

  • Note: SAP recommends plant-level valuation, and it is mandatory for:

    • Organizations using production planning or costing functionality

    • SAP S/4HANA retail systems

3.3 Negative Stock Configuration

Background: Negative stock balances can only exist if multiple conditions are met: valuation area configured for negative stocks, storage location allows it, and material master plant data configured to allow negative stock .

Audit Procedures:

  • Review negative stock settings:

    • Transaction SPRO • Materials Management • Inventory Management and Physical Inventory • Goods Issue/Transfer Postings • Allow Negative Stocks

    • Check if "Negative Stocks" checkbox is selected for valuation areas

    • Drill into plants to see which storage locations allow negative postings

Common Findings:

  • Negative stock allowed without business justification

  • Inconsistent configuration across plants

  • Material master settings not aligned with valuation area settings


Section 4: Key Concepts

Audit Objective: Understand key inventory management concepts that impact audit procedures and control evaluation.

4.1 Movement Types

Background: Movement types classify the type of goods movement (receipt, issue, transfer, adjustment, etc.). Each movement type has specific financial and operational implications .

Movement Type Categories and Audit Focus:

No. RangeCategoryCommentaryAudit Focus
101–199Goods ReceiptReceipt from vendor, another plant, or production. Types ending in "2" reverse previous movements.Monitor reversal movements (102, etc.) for unusual activity
201–299ConsumptionInternal movements to cost centers, projects, sales orders, or production orders.Review production consumption (261) for accuracy; analyze cost center postings
300–399, 641–649TransfersDo not change inventory values. Moves between plants or stock types (e.g., 321 into quality, 322 out of quality).Low audit risk; status changes only
401–499Group to GroupTransfers between storage locations within same plant (411, 412).Mostly noise for audits; exclude unless analyzing specific locations
501–599Exceptional MovementsHigh-risk category for exceptional situations.CRITICAL AUDIT FOCUS
600–639DeliveriesGoods to customers (601) and returns from customers (602).Tied to sales orders; more controlled
700–799Inventory DifferencesPhysical inventory adjustments, cycle count adjustments.CRITICAL AUDIT FOCUS - Require approval and monitoring
800–899Special StockConsignments (820s), returnable packaging (840s), tax activity.Review if regularly used
9, Z, Y*CustomCustom movement types not supplied by SAP.Understand purpose and validate controls

High-Risk Movement Types Requiring Enhanced Scrutiny:

Movement TypeDescriptionRisk
309Transfer posting (material to material)Can transform one material into another; potential fraud vehicle
551Scrapping (with GR)Writes off inventory; can mask theft
552Scrapping reversalReverses write-off
555Scrapping (no GR)Writes off inventory without receipt
556Scrapping reversal (no GR)Reverses write-off
561–566Initial stock uploadShould be restricted after go-live; can bypass normal processes

Important Consideration: Movement 309 was designed to allow correction of batch numbers or incorrect entries during receiving, but it also allows a user to transform one material into another within the system. For example, a user could convert a laptop into a USB flash drive and then ship the USB drive to a friend. With standard costing, the difference may be spread across all sales, potentially masking the fraud .

4.2 Material Documents

Background: Material documents are the journal entries of the inventory system, similar to accounting documents. A material document number is unique and can include multiple related lines (e.g., all raw materials consumed in one production order) .

Audit Considerations:

  • Material documents can be viewed in Transaction MB51

  • Each line item represents a specific movement

  • Related documents (e.g., consumption and subsequent receipt) have separate material document numbers

4.3 Storage Bins

Background: Storage bins allow for more specific inventory locations within a plant or storage location. In embedded EWM, storage bins are unique within a warehouse .

4.4 Valuation Area

Background: Valuation areas contain settings determining how inventory value is calculated. They can be configured to allow negative stocks (see Section 3.3) .


Section 5: Master Data Review

Audit Objective: Assess the controls over master data that impacts inventory processes, including material master settings that affect valuation, movement, and counting.

5.1 Material Master Record - Basic Data Views

Background: The material master contains extensive data across multiple views. Control-related settings can be changed in production without transport, requiring strong change management .

Audit Procedures:

  • Using Transaction MM03, review a sample of material master records

  • For each sample, verify the following fields:

Basic Data 1 View (see Figure 9.3):

  • Material Type (view by clicking the "i" icon next to material ID) - see Figure 9.4

    • Determines how item cost is calculated (standard or average cost)

    • Determines whether cost setting can be changed

    • Common audit procedure: Validate governance around material type assignment

  • Material Group

    • Controls valuation class (GL account assignment)

    • Associates purchasing value keys (tolerance limits, reminder days, etc.)

    • Common audit procedure: Validate governance around material group assignment

  • Authorization Group

    • Controls user access via M_MATE_MAT authorization object

    • Verify that authorization groups are used appropriately to restrict sensitive materials

Plant Data / Stor. 1 View (see Figure 9.5):

  • Haz. material number - Indicates dangerous materials; should link to hazardous goods data

  • CC Phys. Inv. Ind. - ABC indicator for cycle counting frequency

    • A = most frequent, B = moderate, C = least frequent

    • Verify indicators align with consumption patterns

  • CC fixed - Prevents changing ABC indicator once cycle counting has started

    • Should be checked to ensure counting frequency integrity

  • Batch Management - Determines whether batches are used for tracking

  • Temperature conditions, storage conditions, container requirements (if applicable) - Should be accurate for proper storage

Plant-Specific Material Status (not shown in figure):

  • Restricts material usage (e.g., obsolete materials cannot be purchased, used in BOMs, etc.)

  • View configuration: Transaction SPRO • Logistics – General • Material Master • Settings for Key Fields • Define Material Statuses - see Figure 9.6

  • Example: Status 05 (obsolete) with message type B (error) prevents all usage

MRP Views (if MRP in scope):

FieldAudit Focus
Reorder pointDetermines when MRP acquires new inventory
ABC indicatorBased on consumption value; drives cycle counting frequency
Planned delivery time (days)Affects order timing
Goods receipt processing time (days)Affects order timing
Safety stock levelPrevents key inventory depletion
Maximum inventory levelPrevents excess inventory

Common Findings:

  • Material types incorrectly assigned affecting valuation

  • Authorization groups not used for sensitive materials

  • CC fixed not checked, allowing frequency changes mid-cycle

  • Hazardous materials not properly identified

  • Material status not used to block obsolete materials

  • Safety stock and maximum levels not maintained

5.2 Material Master Change Monitoring

Audit Procedures:

  • Review changes to material master during audit period:

    • Program RSSCD200 (requires Transaction SA38) with object class MATERIAL - see Figure 9.11

    • Export results for analysis outside SAP (e.g., Excel)

  • Focus on high-risk changes:

    • Standard price changes (especially significant increases/decreases)

    • Valuation class changes

    • Material type changes

    • Authorization group changes

    • ABC indicator changes

  • For significant changes, trace to supporting documentation and approvals


Section 6: Security Considerations for Inventory Management

Audit Objective: Evaluate security controls that protect inventory processes and data from unauthorized access or manipulation.

6.1 Limiting Access to Powerful Transactions

Audit Procedures:

  • Identify users with access to powerful inventory transactions :

TransactionDescriptionRisk
MBPMDelete held data (MIGO)Destroy pending transactions
MIADDelete (archive) inventory documentsDestroy audit trail
MM17Mass maintenance of material dataUnauthorized mass changes
MSL2Delete logs for mass changesDestroy audit trail
MI07Post inventory differencesUnauthorized adjustments
MI32Block material for physical inventoryPrevent counting of targeted materials
  • For users with access to powerful transactions, verify:

    • Business justification exists

    • Access is limited to appropriate personnel

    • Usage is monitored by independent parties

    • Emergency access procedures (firefighter) are in place for highly critical functions

6.2 Restricting Authorizations to Adjust Inventory

Audit Procedures:

  • Review assignment of inventory adjustment authorization objects :

Authorization ObjectPurposeAudit Focus
M_SKPF_VGAInventory sampling: transactionLimit sampling activities
M_SKPF_WRKInventory sampling: plantRestrict by plant
M_ISEG_WDGPhys inv: difference posting in plantRestrict who posts differences
M_ISEG_WZBPhys inv: count and difference postingRestrict who posts counts and differences
M_MSEG_BWAGoods movements: movement typeLimit high-risk movement types (551, 561-566, etc.)
  • Verify that users with access to high-risk movement types (309, 551-556, 561-566, 700-799) are appropriately restricted

  • Check for segregation of duties conflicts:

    • Physical counter should not post differences

    • Inventory adjuster should not have unrestricted goods movement access

Common Findings:

  • Excessive users with access to high-risk movement types

  • No monitoring of powerful transaction usage

  • Segregation conflicts between counting and adjustment posting

  • Emergency access IDs used for inventory adjustments without review


Section 7: Configurable Controls - Inventory Adjustments

Audit Objective: Assess controls designed to prevent erroneous or fraudulent inventory adjustments.

7.1 Freezing Book Inventory During Counts

Background: When inventory is counted, there is a risk that movements occurring between the count and data entry can cause incorrect adjustments. Freezing book inventory batches movements in memory and applies them after count entry .

Audit Procedures:

  • Review storage location configuration for freeze capability:

    • Transaction SPRO • Materials Management • Inventory Management and Physical Inventory • Physical Inventory • Allow Freezing of Book Inventory Balance in Storage Location - see Figure 9.7

    • Document which storage locations have this enabled

  • Verify that freeze functionality is actually used:

    • Check security audit log for Transaction MI33 executions (if transaction start logging enabled)

    • Interview plant personnel about freeze procedures

  • Test that freeze/unfreeze procedures are followed:

    • MI33 to freeze before counting

    • MI33 with "Reset book inv. Balance" after count entry

Requirements for freeze functionality:

  1. Storage location must be configured to allow freezing

  2. Someone must run Transaction MI33 to freeze before counting

  3. Someone must run Transaction MI33 to unfreeze after count entry

7.2 Inventory Adjustment Tolerances

Background: Inventory tolerances define maximum adjustment amounts per document and per line item. Amounts exceeding tolerance are rejected .

Audit Procedures:

  • Review inventory tolerance group configuration:

    • Transaction SPRO • Materials Management • Inventory Management and Physical Inventory • Physical Inventory • Define Tolerances for Physical Inventory Differences

    • Select "Physical Inventory Tolerance Group"

  • Document tolerance groups assigned to each company code:

    • Note: Screen is sorted alphabetically by tolerance group, then company code

    • Scroll through entire list to see all assignments for your company code

  • For each tolerance group, review settings - see Figure 9.8:

    • Maximum amount per line item (e.g., $4,000)

    • Maximum amount per document (e.g., $25,000)

  • Review user assignment to tolerance groups:

    • Same menu path, select "User Name"

    • Pay attention to:

      • Users assigned to specific tolerance groups

      • Users assigned to tolerance group with "*" (all users not otherwise assigned)

      • Tolerance groups assigned to multiple company codes (values may differ by company code)

Best Practice:

  • Assign "*" users to a very restrictive tolerance group (e.g., $0.01)

  • This prevents any user from posting adjustments unless explicitly assigned to a higher tolerance group

Common Findings:

  • Inventory tolerances not configured (many organizations unaware of functionality)

  • Only one tolerance limit used (defeats purpose of graduated controls)

  • Same absolute values used across all company codes (ignores currency differences)

  • "*" users assigned to high or unlimited tolerances

  • No monitoring of adjustments near tolerance limits


Section 8: Other Configurable Controls

8.1 Change Document Settings for Physical Inventory

Background: Plant parameters can disable change documents for physical inventory documents and counts, potentially allowing undetected fraud .

Audit Procedures:

  • Review plant parameters:

    • Transaction SPRO • Materials Management • Inventory Management and Physical Inventory • Plant Parameters

    • Double-click the plant of interest - see Figure 9.9

    • Check "Change Document" field:

      • If unchecked: No changes recorded in change logs (HIGH RISK)

      • If checked: Changes are recorded and can be audited

  • If change documents are disabled, verify compensating controls (e.g., manual log reviews)

8.2 Cycle Counting Configuration

Background: Cycle counting uses ABC indicators to determine counting frequency. Configuration defines the percentage of consumption for each indicator and required count frequency .

Audit Procedures:

  • Review cycle counting settings:

    • Transaction SPRO • Materials Management • Inventory Management and Physical Inventory • Physical Inventory • Inventory Sampling • Cycle Counting - see Figure 9.10

  • For each plant, verify:

    • Percentage column sums to 100% across all indicators

    • No.of phys.inventories reflects desired count frequency (e.g., 12 for monthly)

    • Float time provides reasonable grace period

  • Understand the logic:

    • SAP sorts materials from highest to lowest consumption

    • Top X% (e.g., 56%) get indicator A

    • Next Y% (e.g., 28%) get indicator B

    • Remaining get lower indicators

  • Assess whether cycle count coverage is sufficient for management's reliance on inventory values


Section 9: Audit-Relevant Reports

Audit Objective: Identify and utilize SAP S/4HANA reports that support audit procedures and ongoing monitoring.

9.1 Reports Identifying Changed Data

ReportTransactionUse
Changes to Material MasterRSSCD200 (via SA38) with object class MATERIALIdentify all material changes in date range - see Figure 9.11
Changes to Physical Inventory DocumentsMI12Identify changes to physical inventory documents by fiscal year/user - see Figure 9.12

Audit Procedures:

  • Run RSSCD200 for the audit period to identify material master changes

  • Export to Excel for analysis (report output is very wide)

  • Focus on:

    • Standard price changes (especially >50% changes)

    • Valuation class changes

    • Material type changes

    • Authorization group changes

    • ABC indicator changes

  • Run MI12 for the audit period:

    • Initial screen shows summary

    • Drill into line items to see specific quantity changes (old value, new value) - see Figure 9.12

    • Investigate unusual adjustments

9.2 Reports for Viewing Stock Values and Making Inventory Selections

ReportTransactionUse
Display Warehouse Stocks of MaterialMB52Current stock by material/plant/storage location - see Figure 9.13
Stocks on Posting DateMB5BStock movements over selected period - see Figures 9.14-9.17

Audit Procedures:

  • Use MB52 for:

    • Selecting materials for test counts

    • Identifying materials by plant/storage location

    • Note: MB52 only shows current data, not historical

  • Use MB5B for:

    • Analyzing stock movements over time

    • Totals view (Figure 9.14) for summary

    • Detailed view (Figure 9.15) for line item analysis

    • Valuated view (Figure 9.16) shows accounting document numbers and amounts

    • Drill to related documents (Figure 9.17) for audit trail

9.3 Viewing Material Documents

ReportTransactionUse
Material Document ListMB51All movements with flexible filtering

Audit Procedures:

  • Run MB51 with appropriate filters:

    • Posting date range

    • User ID

    • Material number

    • Movement type

    • Plant/storage location

  • Initial display (Figure 9.18) is summary view

  • Click "Detail List" icon to get analysis-friendly view (Figure 9.19)

    • In SAP GUI 770, icon appears as

    • Hover over icons for descriptions

  • Use Environment menu (Figure 9.20) to navigate to:

    • Purchase order

    • Stock overview

    • Accounting document

    • Account assignment (cost centers, GL accounts)

Tip: If you find the cell merging confusing (blank cells representing same values as above), change layout:

  • Settings • Layout • Current

  • Display tab • Select "Without cell merging during sorts"

  • Apply with green checkmark

9.4 Reports for Identifying Potential Processing Problems

ReportTransactionUse
List of Stock Values: BalancesMB5LCompare MM inventory to FI balances
Material Consistency CheckMB5KIdentify consistency issues

Audit Procedures:

  • Run MB5L to identify valuation differences between MM and FI - see Figure 9.21

    • Variances highlighted in red require investigation

    • Double-click to drill to detail by valuation area/material - see Figure 9.22

    • Common cause: Inventory balance not carried over from prior year (SAP Note 1846376)

  • Run MB5K to check material consistency

    • Any output requires investigation and timely resolution

9.5 Other Useful Reports

AreaTransactionUse
Stock in transitMB5TCurrent day stock in transit
Stock in transit (past)MB5TDHistorical stock in transit
Physical inventory blockedMIDL (with Blocked option)Items blocked from physical inventory
Physical inventory documentsMI24View physical inventory documents
Physical inventory by materialMI23Display physical inventory data for material
Physical inventory differencesMI20View physical inventory differences

Section 10: Summary of Key Transaction Codes

TransactionPurpose
MM03Material master display
MM04/RSSCD200Material master change analysis
MB51Material document list
MB52Display warehouse stocks (current)
MB5BStocks on posting date (historical)
MB5LInventory value differences (MM vs. FI)
MB5KMaterial consistency check
MIGOGoods receipt/issue (replaces MB* transactions)
MI07Post inventory differences
MI12Changes to physical inventory documents
MI20Physical inventory differences
MI23Physical inventory by material
MI24Physical inventory documents
MI32Block material for physical inventory
MI33Freeze/unfreeze book inventory
MIDLPhysical inventory blocked items
MB5T/MB5TDStock in transit (current/past)
MIGODisplay goods receipt
MM17Mass material maintenance
MSL2Delete mass change logs
MBPMDelete held data (MIGO)
MIADDelete (archive) inventory documents

Section 11: Common Audit Findings Summary

Based on the source material, the following findings are commonly observed in SAP S/4HANA inventory management audits :

  1. Movement Type Risks

    • High-risk movement types (309, 551-556, 561-566) not restricted

    • No monitoring of unusual movement type combinations

    • Custom movement types without proper documentation or controls

    • Movement 309 activity not reviewed (potential fraud vehicle)

  2. Inventory Adjustment Controls

    • Inventory tolerances not configured

    • Freeze book inventory functionality not used

    • Change documents disabled for physical inventory

    • Adjustments posted without independent review

  3. Physical Inventory Process

    • Cycle count coverage insufficient

    • CC fixed not checked in material master

    • Counts performed but not entered timely

    • Differences not investigated or resolved

    • Physical inventory documents changed without audit trail

  4. Valuation Issues

    • Negative stock allowed without justification

    • MB5L differences between MM and FI not resolved

    • Standard prices not reviewed or updated

    • Valuation class assignments inconsistent

  5. Master Data

    • Material types incorrectly assigned

    • Authorization groups not used for sensitive materials

    • Hazardous materials not properly identified

    • Material status not used to block obsolete items

    • Safety stock and maximum levels not maintained

  6. Segregation of Duties

    • Same user counting and posting differences

    • Excessive users with mass maintenance access

    • No monitoring of powerful transaction usage

    • Emergency access IDs used for inventory adjustments

  7. Obsolete/Expired Inventory

    • Expiration dates not monitored

    • Slow-moving inventory not identified or written down

    • Obsolete materials still active in master data

  8. Fraud Indicators

    • Unusual scrapping activity (high volume/frequency)

    • Material-to-material conversions (movement 309)

    • Adjustments shortly before period end

    • Pattern of small adjustments just below tolerance limits


Section 12: References and Additional Resources

  • SAP S/4HANA Security Guide (current version)

  • SAP Note 2210569 - Consolidation of MB* transactions into MIGO

  • SAP Note 1846376 - MB5L differences (inventory balance not carried over)

  • COBIT 2019 Framework (ISACA)

  • COSO Internal Control Framework

  • Association of Certified Fraud Examiners (ACFE) Fraud Tree

Tips for Forecast-to-Stock Audits

Original implementation tip on negative stock configuration: Negative stock balances should be prohibited in most environments. A negative balance means the system believes more material has been consumed or shipped than was ever received. This can happen legitimately due to timing (goods issue posted before goods receipt) but it can also mask inventory theft or processing errors. If your organization allows negative stocks, verify that the configuration is intentional, that monitoring procedures exist to identify and resolve negative balances promptly, and that the magnitude of negative balances is tracked and trended. An increasing trend in negative balance occurrences suggests process deterioration.

Original implementation tip on consignment inventory: Consignment inventory exists physically at a third-party location but remains on your balance sheet until consumed or purchased by the consignee. Without periodic confirmation from the third party and occasional physical verification, consignment balances can become overstated. Build a quarterly confirmation process for consignment inventory, similar to the accounts receivable confirmation process described in the record-to-report chapter. Compare confirmed quantities against SAP balances. Discrepancies indicate either consumption that was not reported or physical loss at the consignee location.

Original implementation tip on scrapping movement types: Movement types 551-556 (scrapping) should require supervisory approval or be restricted to inventory managers and above. When a material is scrapped, its value is written off entirely. An employee could identify goods as obsolete or damaged, scrap them in the system, and physically move them to a location outside the building for later retrieval. The scrap transaction provides the cover story. If your organization allows line-level employees to execute scrap transactions, you have an uncontrolled theft vector. Review all scrapping activity through MB51 filtered on movement types 551-556. Analyze by user, material value, and frequency. High-value or high-frequency scrapping by a single user warrants investigation.

Original implementation tip on cycle count manipulation: The CC fixed flag on the material master prevents the cycle counting ABC indicator from being changed once the cycle count starts. If this flag is not set, someone could move a material from category A (counted frequently) to category C (counted rarely) after the count cycle begins, effectively removing it from the current count. Query the material master for materials where CC Phys. Inv. Ind. has been changed during the current counting period. Cross-reference against change documents to identify who made the change and when. If the change occurred after the count cycle started and CC fixed was not set, the material may have been deliberately excluded from counting.




Making Your Forecast-to-Stock Audit Count

Organizations that audit inventory by counting a sample of items and confirming that quantities match the system produce audits that validate a point-in-time snapshot while missing the control gaps that create ongoing exposure. Movement types designed for implementation still assigned to warehouse staff. Scrapping transactions executable by line-level employees without approval. No change documents on physical inventory modifications. No tolerance limits on adjustment postings. Cycle count indicators that can be changed mid-cycle. These are the findings that enable theft, mask errors, and create persistent valuation risk, and they require testing that goes beyond physical count verification.

Organizations that analyze the full population of movement type activity, verify that preventive controls like book inventory freezing and adjustment tolerances are configured and used, test that change documents capture every physical inventory modification, and monitor high-risk movement types for anomalous patterns produce audits that genuinely reduce inventory risk. Their findings prevent losses rather than documenting them after the fact. Their reports quantify the exposure created by each control gap in terms that plant managers and CFOs understand immediately.

The value of your inventory depends on the integrity of every movement that touches it, and the movement types with the least controls are always the ones where the problems hide.

When was the last time someone in your organization analyzed movement type 309 transactions across all plants, and can you confirm that implementation movement types 561 through 566 have been removed from every warehouse user's security profile?


About the Author

The SAP frameworks, tools, taxonomies, and implementation guidance described in this article are part of the applied research and consulting work of Prof. Hernan Huwyler, MBA, CPA, CAIO. These materials are freely available for use, adaptation, and redistribution in your own SAP management and audit programs. If you find them valuable, the only ask is proper attribution.

Prof. Huwyler serves as AI GRC ERP Consultancy Director, AI Risk Manager, SAP GRC Specialist, and Quantitative Risk Lead, working with organizations across financial services, technology, healthcare, and public sector to build practical AI governance frameworks that survive contact with production systems and regulatory scrutiny. His work bridges the gap between academic AI risk theory and the operational controls that organizations actually need to deploy AI responsibly.

As a Speaker, Corporate Trainer, and Executive Advisor, he delivers programs on AI compliance, quantitative risk modeling, predictive risk automation, and AI audit readiness for executive leadership teams, boards, and technical practitioners. His teaching and advisory work spans IE Law School Executive Education and corporate engagements across Europe.

Based in the Copenhagen Metropolitan Area, Denmark, with professional presence in Zurich and Geneva, Switzerland, Madrid, Spain, and Berlin, Germany, Prof. Huwyler works across jurisdictions where AI regulation is most active and where organizations face the most complex compliance landscapes.

His code repositories, risk model templates, and Python-based tools for AI governance are publicly available at https://hwyler.github.io/hwyler/. His ongoing writing on AI Governance and AI Risk Management appears on his blogger website at https://hernanhuwyler.wordpress.com/

Connect with Prof. Huwyler on LinkedIn at linkedin.com/in/hernanwyler to follow his latest work on AI risk assessment frameworks, compliance automation, model validation practices, and the evolving regulatory landscape for artificial intelligence.

If you are building an AI or SAP governance program, standing up a risk function, preparing for compliance obligations, or looking for practical implementation guidance that goes beyond policy documents, reach out. The best conversations start with a shared problem and a willingness to solve it with rigor.


Primary keyword: SAP S/4HANA forecast-to-stock audit

Secondary keywords: SAP inventory management audit, SAP material movement audit, SAP physical inventory controls, SAP material master audit, SAP cycle count audit, SAP stock valuation audit, SAP movement type controls, SAP MB51 audit, SAP MB5L reconciliation, SAP inventory adjustment controls