Skip to content
SAP Modules Explained — FI, CO, SD, MM & HR

SAP Modules Explained — FI, CO, SD, MM & HR

DodaTech Updated Jun 6, 2026 10 min read

SAP modules are specialized business applications within SAP S/4HANA that each handle a specific business function — from financial accounting to warehouse management — while sharing a single database so every department works with the same real-time information.

What You’ll Learn

  • What each major SAP module does and why companies need it
  • How FI, CO, SD, MM, and HR integrate with each other
  • Real transaction codes and business processes for each module
  • How module integration eliminates manual data entry

Why SAP Modules Matter

A company without SAP modules works like separate islands. Sales doesn’t know inventory levels. Finance doesn’t know about pending orders. HR doesn’t know when a new hire’s equipment was ordered. SAP modules fix this by connecting every department into one system.

Doda Browser uses SAP module-inspired separation of concerns — separate engines for rendering, networking, and storage that all share a common data layer. Durga Antivirus Pro applies similar modular architecture where each scanning engine (file, memory, network) operates independently but shares threat intelligence.

Learning Path

    flowchart LR
  A[SAP Overview] --> B[ABAP Programming]
  B --> C[SAP Modules Deep Dive<br/>You are here]
  C --> D[SAP HANA Database]
  D --> E[SAP BASIS Admin]
  

FI — Financial Accounting

FI is the official financial record of the company. It handles external reporting — what you show to tax authorities, auditors, and shareholders.

Submodules

SubmodulePurpose
General Ledger (GL)The master chart of accounts
Accounts Payable (AP)Money you owe to vendors
Accounts Receivable (AR)Money customers owe you
Asset Accounting (AA)Fixed assets like buildings and machines
Bank AccountingBank account reconciliation

Key Transaction Codes

FS00   - Create/display G/L account
F-02   - Post a general journal entry
FBL1N  - Display vendor line items
FBL5N  - Display customer line items
FB03   - Display a posted document

Real-World Example

When a company receives a vendor invoice for office supplies:

  1. The AP clerk enters the invoice (transaction code F-43)
  2. SAP FI checks: Is the PO valid? Was the goods receipt posted?
  3. The invoice is posted, debiting the office supplies account and crediting the vendor account
  4. At payment time, the AP clerk runs F110 (automatic payment) to generate the payment run

Security Angle

FI is the most audited module. Every posting creates a document with a unique number. Documents cannot be deleted — only reversed with a new document. This provides a complete, immutable audit trail.

Durga Antivirus Pro applies FI-style document immutability to scan log records, ensuring security events cannot be altered after creation.

CO — Controlling

CO handles internal management accounting. While FI reports to the government, CO reports to company management.

Key Functions

  • Cost Center Accounting: Tracks costs by department (e.g., “How much did the IT department spend?”)
  • Internal Orders: Tracks costs for specific projects or events
  • Product Costing: Calculates how much it costs to make a product
  • Profitability Analysis (CO-PA): Analyzes profit by product, customer, or region

Key Transaction Codes

KS01   - Create cost center
KOB1   - Postings on internal orders
CK11N  - Cost estimate for a material
KE30   - Execute profitability report

FI vs CO: The Crucial Difference

Think of FI as a photograph (this is what happened — objective fact) and CO as a painting (this is what it means for our business — management perspective).

AspectFICO
AudienceExternal (tax, audit, shareholders)Internal (managers, executives)
RulesLegal requirements (GAAP, IFRS)Company-defined rules
DataMust match bank statementsCan use allocations and estimates
PostingCreates legal documentsCreates internal controlling records

SD — Sales and Distribution

SD manages the entire sales process — from customer inquiry to delivery and billing.

Core Processes

  1. Inquiry → Quotation → Sales Order → Delivery → Billing → Payment

Submodules

BP        - Business Partner (customer master data)
VA01      - Create sales order
VL01N     - Create outbound delivery
VF01      - Create billing document
VOV8      - Pricing procedure maintenance

Real-World Example

A customer calls to order 500 units of product XYZ:

  1. The sales rep creates a sales order (VA01)
  2. SAP SD automatically:
    • Checks the customer’s credit limit (integration with FI)
    • Checks inventory availability (integration with MM)
    • Calculates the price including discounts
    • Determines the delivery date
  3. Warehouse picks the goods, creates a delivery (VL01N)
  4. Goods issue posts — inventory decreases (MM sees this)
  5. Invoice created (VF01) — FI posts the revenue
  6. Payment received — FI clears the receivable

Pricing in SD

SAP SD pricing is powerful and complex. A single sales order might calculate:

List price:           $100.00
- Quantity discount:   -$5.00
- Customer discount:   -$10.00
+ Freight charge:       +$8.00
+ Tax:                  +$7.50
= Net price:           $100.50

MM — Materials Management

MM handles procurement, inventory, and warehouse management. It ensures the right materials are available at the right time and place.

Core Processes

  1. Purchase Requisition → Purchase Order → Goods Receipt → Invoice Verification

Key Transaction Codes

ME11    - Create purchasing info record
ME21N   - Create purchase order
MIGO    - Goods receipt / goods issue
MIRO    - Enter invoice for PO
MB52    - Display stock overview

Real-World Example

A factory needs 1000 kg of raw material:

  1. Planning system detects shortage and creates a purchase requisition
  2. Buyer converts it to a purchase order (ME21N) and sends to supplier
  3. Supplier delivers. The warehouse posts a goods receipt (MIGO) — MM updates inventory, and FI records the inventory increase
  4. Supplier invoice arrives. The AP clerk does invoice verification (MIRO) — MM matches: PO quantity = goods receipt quantity = invoice quantity
  5. If everything matches, FI pays the supplier

Integration Points

ActionMM UpdatesFI UpdatesCO Updates
Goods receiptInventory quantity +Inventory value +
Goods issueInventory quantity -Cost of goods sold +Cost center consumed
Invoice receivedVendor payable +

HR — Human Resources (HCM)

HR (now called HCM — Human Capital Management) manages employee data, payroll, recruitment, and time tracking.

Submodules

SubmodulePurpose
Personnel AdministrationEmployee master data (name, address, job, salary)
Organizational ManagementCompany reporting structure
PayrollSalary calculation, tax deductions, payslips
Time ManagementAttendance, vacation, sick leave
RecruitmentJob postings, applications, hiring

Key Transaction Codes

PA30    - Maintain HR master data
PA40    - Hire/transfer/terminate employee
PC00_M99_CALC - Run payroll (country-specific)
PPOME   - Edit organizational structure
PT60    - Run time evaluation

Real-World Payroll Integration

When payroll runs:

  1. HR records the employee’s salary, overtime, and deductions
  2. HR sends the payroll posting to FI
  3. FI posts: salary expense (debit), bank payable (credit)
  4. CO receives: cost center allocation (how much each department spent on salaries)
  5. Payment run pays employees

Module Integration — The Big Picture

    flowchart LR
  A[SD: Sales Order] --> B[MM: Check Inventory]
  B --> C[MM: Goods Issue]
  C --> D[FI: Revenue & AR]
  D --> E[CO: Profit Analysis]
  F[MM: Purchase Order] --> G[MM: Goods Receipt]
  G --> H[FI: Inventory Value]
  H --> I[CO: Cost Center]
  J[HR: Payroll] --> K[FI: Salary Expense]
  K --> L[CO: Department Cost]
  

This diagram shows the integration loop. A single sales transaction touches SD, MM, FI, and CO — all from one entry, without re-entering data.

Real-World SAP: A Manufacturing Use Case

Let’s trace a complete scenario for a company making smartphones:

Day 1: Sales Order

  • A retailer orders 1000 phones
  • SD creates sales order; credit check passes
  • Integration: MM checks available stock — only 200 available

Day 2: Production

  • PP (Production Planning) creates a production order for 800 more phones
  • MM: Raw materials (screens, chips, batteries) are issued from inventory
  • CO: Production costs are collected on the production order

Day 3: Procurement

  • MM detects low raw material stock
  • Buyer creates a purchase order for 5000 screens
  • FI: Purchase order doesn’t post yet (commitment only)

Day 4: Delivery

  • 1000 phones are shipped to customer
  • SD: Delivery document created
  • MM: Goods issue reduces finished goods inventory
  • FI: Revenue and cost of goods sold are posted
  • CO: Profit margin is calculated

Day 5: Billing

  • Customer is invoiced
  • FI: Accounts Receivable increases
  • CO: Profitability report shows transaction-level profit

Day 30: Payment

  • Customer pays the invoice
  • FI: Bank account increases, AR decreases

All of this happens in one system. In a non-SAP world, this would require 5-6 different software packages and manual data entry at every step.

Common Mistakes

1. Confusing FI and CO postings

FI posts to legal accounts (required for financial statements). CO posts to cost centers (for internal analysis). They serve different purposes.

2. Not realizing SD pricing complexity

SD pricing can involve dozens of condition types (base price, discount, freight, tax). A simple change can cascade across all sales orders.

3. Ignoring MM-FI integration

When you post a goods receipt in MM, FI automatically updates. If your inventory valuation doesn’t match your GL, reconciliation is painful.

4. Thinking HR is just about payroll

HR includes organizational management, recruitment, time tracking, and succession planning. Payroll is just one piece.

5. Underestimating implementation effort

Each module requires configuration, testing, data migration, and user training. A full SAP implementation is 1-3 years.

Practice Questions

  1. What is the difference between FI and CO? FI handles external financial reporting (legal requirements). CO handles internal management accounting (cost control, profitability).

  2. How does SD integrate with MM? SD sales orders trigger MM availability checks. When goods are shipped, MM posts the goods issue, reducing inventory.

  3. What transaction code creates a purchase order in MM? ME21N.

  4. Why can’t FI documents be deleted? Audit requirements. All financial postings must have an immutable trail. Corrections require reversal documents, not deletion.

  5. What does CO-PA stand for? Profitability Analysis — analyzes profit by market segment (product, customer, region).

Challenge: Map out the SAP modules involved when a customer orders a custom-built product. List which modules touch the process at each stage: inquiry → quotation → production → delivery → billing → payment.

FAQ

What is the most important SAP module?
FI (Financial Accounting) is the core — every other module ultimately posts to FI. Without FI, you have no legal books.
How do SAP modules communicate?
Through the shared database. When SD posts a billing document, it writes to FI tables and CO tables in the same database. No interface needed.
Can you use one SAP module without others?
Yes, but integration benefits come from using multiple modules. Many companies start with FI and add modules over time.
What is SAP FICO?
FICO combines FI (Financial Accounting) and CO (Controlling) — the two finance-oriented modules. FICO consultants specialize in both.
Does SAP MM handle warehouse management?
Basic WM functionality is within MM. For complex warehouse operations, SAP has Extended Warehouse Management (EWM).
What is the difference between SAP SD and CRM?
SD handles transactional sales processes. CRM (Customer Relationship Management) handles marketing, lead tracking, and customer interaction history.

Try It Yourself

You can explore SAP module data using SQL queries concepts:

-- Simulate FI posting logic
CREATE TABLE FI_DOCUMENTS (
    DOC_NUM INTEGER PRIMARY KEY,
    DOC_DATE DATE,
    ACCOUNT VARCHAR(10),
    AMOUNT DECIMAL(15,2),
    DEBIT_CREDIT CHAR(1)
);

-- Post a payment (debit bank, credit AR)
INSERT INTO FI_DOCUMENTS VALUES (100001, '2026-06-06', 'BANK', 5000.00, 'D');
INSERT INTO FI_DOCUMENTS VALUES (100001, '2026-06-06', 'AR', 5000.00, 'C');

-- Verify balance
SELECT ACCOUNT, 
       SUM(CASE WHEN DEBIT_CREDIT = 'D' THEN AMOUNT ELSE -AMOUNT END) AS BALANCE
FROM FI_DOCUMENTS
GROUP BY ACCOUNT;

Expected output:

ACCOUNT | BALANCE
BANK    | 5000.00
AR      | -5000.00

Learn more on SAP Learning Hub (learning.sap.com) — free courses for beginners.

What’s Next

TutorialWhat You’ll Learn
SAP Overview — Complete GuideFoundational SAP ERP concepts
SAP ABAP ProgrammingWrite ABAP programs to extend SAP modules
Python for Finance Data AnalysisCompare SAP FI reporting with Python financial analysis

Built by the developers of Doda Browser, DodaZIP, and Durga Antivirus Pro. Updated 2026-06-06.

What’s Next

Congratulations on completing this Sap Modules tutorial! Here’s where to go from here:

  • Practice daily — Consistency is more important than long study sessions
  • Build a project — Apply what you learned by building something real
  • Explore related topics — Check out other tutorials in the same category
  • Join the community — Discuss with other learners and share your progress

Remember: every expert was once a beginner. Keep coding!

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro