Quick Answer — SAP MMPV Period Close Error
- The error means the MM posting period has not been advanced to the current month. SAP MM has its own calendar that controls which months are open for inventory postings. Someone needs to advance it at the start of each month using transaction MMPV.
- The fix: run transaction MMPV. Enter your company code, enter the current open period (the month you want to close), press Execute (F8). SAP automatically opens the next month. Done — 5 minutes.
- Need to post in a prior period? Use MMRV to temporarily allow previous-period posting. Post your document, then immediately disable MMRV again.
- This is NOT a configuration error. No transports, no Basis support, no SPRO changes needed. It is an operational step that must happen every month.
- Identical in ECC and S/4HANA. Same transactions, same MARV table, same fix.
Exact error messages you will see:
"Posting only possible in periods 07 2026 and 06 2026"
"In company code XXXX, only periods 07 2026 and 06 2026 are allowed"
"Enter a document date in the allowed period" (in MIRO)
"Period &1/&2 is not open for account type &3 and G/L account &4" (when FI period is also involved)
MMPV is a one-way operation. Once you advance the period, you cannot reverse it through standard transactions. Always check the period shown on the MMPV screen before pressing Execute.
MM period and FI period are separate controls. Running MMPV does not open the FI period (OB52). Both must be open for a goods receipt to create both a material document and an accounting document successfully.
MMRV is a temporary setting, not a permanent fix. Enable it, post your backdated document, then immediately disable it. Leaving MMRV permanently enabled defeats the purpose of period control and creates audit risk.
Use OMSY to check — not MMPV. OMSY is read-only and safe. Opening MMPV and pressing Execute immediately closes the current period. When you only want to check, use OMSY.
Automate it. Schedule background job RMMMPERI via SM36 to run on the first working day of each month. Eliminate the human error of forgetting the manual step entirely.
How SAP MM Posting Periods Work — And Why They Need Advancing
SAP organises time into fiscal periods — usually matching calendar months. Every time you post a document in SAP (a goods receipt, a goods issue, an invoice), SAP checks: is the posting date within an open period? If the period is closed, the posting is blocked.
SAP MM (Materials Management) has its own period control that is completely separate from Financial Accounting (FI). Think of it as two gatekeepers. The MM gatekeeper controls inventory postings — goods movements in MIGO, invoice verification in MIRO. The FI gatekeeper (controlled in OB52) controls accounting postings — journal entries, payments, asset transactions. Both gatekeepers must wave you through for a goods receipt to post successfully, because it creates both a material document (MM side) and an accounting document (FI side).
Plain English. Imagine the MM period like a till at a shop that closes at 6pm. Once it is closed for the day, no more transactions go through — even if the bank (FI) is still open until midnight. At the start of each new day (month), someone has to open the till again. MMPV is the key that opens the till. Nobody does it automatically — someone has to run it. When they forget, the till stays locked and every goods receipt, goods issue, and MIRO invoice gets blocked with "posting only possible in periods X and Y."
MM Period vs FI Period — Know the Difference
- Controlled by: MMPV (advance) / MMRV (backdate)
- View current period: OMSY
- Stored in: MARV table
- Scope: company code level (all plants)
- Affects: MIGO, MIRO, MI07 (physical inventory)
- Advanced: manually at start of each month
- Irreversible: yes — cannot be undone in standard SAP
- Controlled by: OB52 (SPRO config)
- View: OB52 directly
- Stored in: T001B table
- Scope: company code + account type
- Affects: FB50, F-02, vendor/customer payments
- Advanced: by finance team during month-end
- Reversible: yes — can open/close periods freely in OB52
Common confusion. Running MMPV does NOT open the FI period. If you run MMPV for August but OB52 still has July open for the relevant account types (K for vendors, S for G/L), MIRO invoice postings will still fail with a different error about the FI period. Check both OMSY (MM period) and OB52 (FI period) when troubleshooting posting errors at month-start.
How to Advance the MM Period — Step by Step in MMPV
This is a 5-minute fix. No configuration changes, no transports, no Basis support needed. Just MMPV.
| Transaction | What It Does | When to Use |
|---|---|---|
| OMSY | Display current open MM period for all company codes — read-only, safe to check | Check before MMPV |
| MMPV | Advance (close) the MM posting period — irreversible, opens the next month automatically | First of month |
| MMRV | Allow posting in the previous MM period temporarily — enable, post, disable immediately | Late/backdated posting |
| OB52 | Control FI posting periods — separate from MM, managed by the finance team | FI period errors |
| SM36 | Schedule background jobs — use to automate RMMMPERI for monthly period advance | Automation setup |
| CDHDR | Change document history — filter by MMPERIOD to see who ran MMPV and when | Audit trail |
How to Post in a Prior Period — Using MMRV
Sometimes MMPV has already been run — the MM period is now August — but you have a goods receipt or invoice that should have been posted in July. MMPV cannot be reversed, but MMRV lets you temporarily post in the prior period.
Here is how it works in plain terms: SAP normally allows postings in the current open period and one period back. So when August is open, July postings are still allowed by default. But if July has already fully closed (i.e. the system considers the prior period window expired), MMRV manually re-opens that prior period access.
MMRV only goes back one period. If you need to post in a period two or more months back (e.g. posting in June when August is the current open period), MMRV is not sufficient. You would need Basis support to reset the MARV table directly — which is a database-level change that requires formal approval and careful testing. This is rarely approved in production systems. The lesson: do not let late postings accumulate across multiple months.
How to Stop the MMPV Error from Happening Every Month
The MMPV error is entirely preventable. It only exists because no one ran MMPV at the start of the month. Here are three ways to eliminate it permanently.
Option 1 — Automate with SM36 (best practice)
Go to SM36 (Schedule Background Job). Create a new job. Add a step: ABAP program RMMMPERI. Create a variant specifying the company code. Schedule the job to run on the first day of each month at midnight (or 06:00 before business hours). Test the variant in your QA system first. Once confirmed, activate in production. From that point, the period advances automatically with zero human intervention.
Option 2 — Month-end checklist (manual but controlled)
Designate a named person (the MM lead, the SAP system admin, or the finance operations manager) who owns the MMPV step. Add it as item 1 on the month-end close checklist with a due date of "business day 1 of new month, before 09:00." Use a simple shared checklist tool — even a recurring calendar reminder works. The key is that it is owned by one person, not assumed by everyone.
Option 3 — Check OMSY daily during month-start week
During the first week of each month, have the helpdesk or SAP support team check OMSY daily. If the current period still shows the prior month after the first working day, trigger MMPV immediately. This is a safety net rather than a primary prevention — but it catches the error before users start hitting it.
Audit trail tip. After running MMPV each month, check CDHDR (Change Document Header) with object class MMPERIOD to confirm the change was recorded. This gives you an auditable log of who advanced the period, when, and for which company code — useful for SOX compliance and internal audit reviews.
SAP MMPV Period Close Error — 21 Questions Answered
This error means the Materials Management (MM) posting period has not been advanced to the current month. SAP MM has its own posting calendar — separate from Financial Accounting — that must be manually advanced at the start of each month using transaction MMPV. When someone tries to post a goods receipt, goods issue, or MIRO invoice in August but the MM period is still set to July, SAP blocks the posting and shows "posting only possible in periods 07 2026 and 06 2026." The fix is to run MMPV to advance the period — a 5-minute operation.
MMPV (Close Periods for Materials Management) advances the MM posting period from one month to the next. When you run it to close period 07 (July), SAP automatically opens period 08 (August). It is a one-way, irreversible operation — once a period is closed, it cannot be reopened through standard transactions. Run MMPV at the start of each month as part of the month-end close. The underlying ABAP program is RMMMPERI, which can be scheduled automatically as a background job via SM36.
MMRV (Allow Posting to Previous Period) temporarily allows a goods movement or invoice posting in the prior MM period after MMPV has already advanced to the next month. Use it for late postings — a July goods receipt that was missed and must be posted after August opened. Process: tick "Allow Posting to Previous MM Period" in MMRV, post the document with a prior-period date, then immediately untick the setting. Never leave MMRV permanently enabled — it defeats period control and creates audit risk. MMRV only goes back one period; posting two or more months back requires Basis support.
Two separate controls. The MM posting period (MMPV, stored in MARV) covers inventory postings — goods receipts, goods issues, physical inventory, MIRO invoice verification. The FI posting period (OB52, stored in T001B) covers accounting postings — journal entries, vendor payments, asset transactions. A goods receipt creates both a material document (MM) and an accounting document (FI). Both periods must be open for the posting to succeed. Running MMPV does not open the FI period, and vice versa. Always check both when troubleshooting posting errors at month-start.
No — MMPV operates at company code level and advances the MM period for all plants within that company code simultaneously. You cannot have plant 1010 on period 08 and plant 1020 on period 07 within the same company code. If your SAP system has multiple company codes (e.g. a Canadian entity CA01 and a US entity US01 as separate company codes), each has its own MM period and you must run MMPV separately for each one.
MMPV is irreversible through standard transactions. If you advance to the wrong period (e.g. close period 08 when July is still open, or jump ahead by two months), you need to raise a request with your SAP Basis team. They can use backend tools to reset the MARV table to the correct period, but this is a database-level change requiring system access and formal approval. It is possible but not fast. This is why you always check the period shown on the MMPV screen carefully before pressing Execute — the cost of a mistake is significant.
Use OMSY (Display Current Period for Material Management) — it is read-only and shows the current open MM period for all company codes without any risk of advancing it. Alternatively, look at the MMPV screen and note the period displayed before pressing anything. Do not use MMPV just to check — pressing Execute on MMPV immediately closes the displayed period, which is the opposite of what you want when checking.
Invoice verification in MIRO creates a material document and a financial document simultaneously. The material document side checks the MM posting period — just like a goods receipt. So if the MM period has not been advanced, MIRO invoice postings for the new month fail with the same "posting only possible in periods X and Y" message. The fix is identical: run MMPV. After advancing the MM period, both MIGO and MIRO postings for the current month will succeed (assuming the FI period is also open in OB52).
Yes — schedule the ABAP program RMMMPERI as a background job using SM36. Create a job with a step of type ABAP program, enter RMMMPERI, create a variant specifying the company code, and schedule it to run on the first day of each month at midnight or before business hours. Test the variant in QA first to confirm correct parameters. Once active in production, the period advances automatically with zero human intervention and the MMPV error disappears permanently. This is the recommended approach for any live production system.
The MMPV error directly affects all MM-related postings: goods receipts (MIGO 101), goods issues (201, 261), physical inventory (MI07), and MIRO invoice verification. Direct FI postings — journal entries in FB50, bank postings — are not affected by the MM period; they are controlled separately by OB52. However, because goods receipts create accounting documents simultaneously, a closed MM period effectively blocks the entire goods receipt process even though the FI side would be fine on its own.
The ABAP program behind MMPV is RMMMPERI. To schedule it: go to SM36, create a new job, add a step of type ABAP program, enter RMMMPERI, and create or assign a variant that specifies the company code and the period handling logic. Schedule with a monthly start condition. Always test the variant in your development or QA system before activating in production — confirm the program closes the correct period and produces no errors before the scheduled run goes live.
SAP MM always keeps two periods simultaneously available for posting: the current open period and one prior period. When the current period is August (08), July (07) remains open for a short overlap window to handle late postings. The message "posting only possible in periods 07 2026 and 06 2026" tells you the system is currently set to July — August is not yet open. The two-period overlap is the standard design, not an error. The number of prior periods allowed (default: 1) is configurable in OMSY.
No — within a single company code, all plants share the same MM posting period. MMPV operates at company code level and advances the period for all plants simultaneously. If you need plants in different regions to have different close dates, the standard SAP approach is to use separate company codes for each entity. You cannot set plant 1010 to period 08 and plant 1020 to period 07 within the same company code.
OMSY (Display Current Period for Material Management) is a read-only transaction that shows the current open MM period for all company codes in a single list. You cannot advance the period from OMSY — it is display only. Use OMSY when you want to check the current period status without any risk of accidentally advancing it. It is particularly useful for SAP administrators who monitor period status across multiple company codes before giving users the go-ahead to post.
Typical sequence: (1) Complete all goods movements and MIRO invoices for the closing month. (2) Post physical inventory differences (MI07). (3) Run GR/IR clearing (MR11 or F.13) to clear unmatched goods receipt and invoice lines. (4) Run MMPV to advance the MM period — this is the hard gate. (5) Run material valuation reports (MB5L). (6) Advance the FI period in OB52. Once MMPV is run (step 4), no new goods movements or MIRO postings can be made in the closed month without using MMRV.
Yes — using MMRV. Enable "Allow Posting to Previous MM Period" in MMRV, post your goods receipt in MIGO with a prior-period posting date, then immediately disable MMRV. This works for the one period immediately prior to the current open period. If you need to post two or more months back (e.g. post in June when August is current), MMRV is not sufficient — you need Basis support to reset the period, which is a backend database operation not available through standard transactions.
The current MM posting period is stored in the MARV table (Material Management: Current Period of a Company Code). MARV holds one record per company code with the current open period (field POPER) and fiscal year (field BDATJ). When MMPV is run, it updates this record. You can check the current period via SE16N by querying MARV and filtering by company code. In an emergency where the Basis team needs to correct an accidentally advanced period, they update MARV directly at the database level — a last-resort operation requiring careful authorisation.
The "posting only possible in periods X and Y" error is not user-specific — the MM period applies to everyone in that company code. If it appears for some users but not others, the most common explanation is different posting dates. A user entering a posting date of July 31 will succeed if July is still within the allowed prior-period window. A user entering August 1 will fail if August is not yet open. Check the posting date field in the MIGO or MIRO document — it must fall within one of the two currently open MM periods. Changing the date usually resolves it for the individual posting; running MMPV resolves it for everyone.
Two ways. Fast check: open OMSY and confirm the current period matches the current calendar month. If it shows the previous month, MMPV has not been run yet. Audit check: go to CDHDR (Change Document Header), filter by object class MMPERIOD, and check the change log — it shows who ran MMPV, on which date, and for which company code. CDHDR is the reliable audit trail; OMSY gives you the current status.
Yes — MMPV, MMRV, OMSY, and the underlying MARV table are identical in SAP ECC and S/4HANA. The period advance logic and the two-period overlap window are unchanged. In S/4HANA, MMPV may appear as a Fiori tile in the launchpad rather than a SAP GUI transaction screen, but the function and parameters are the same. Background job scheduling via SM36 and RMMMPERI also works identically. No relearning is needed when migrating from ECC to S/4HANA for this process.
Yes — VoiSAP's SAP MM training covers the full procure-to-pay cycle including month-end activities: MMPV, MMRV, GR/IR clearing (MR11), physical inventory (MI01, MI04, MI07), and account determination for goods movements (OBYC) — all on a live SAP S/4HANA system. Book a free demo to discuss your background and the fastest path to your first SAP MM role.
On a Real System, Not a Manual.
Book a free demo class with Gourav. See MMPV, MIGO, and MIRO working on a live SAP S/4HANA system, ask your questions, and decide if VoiSAP's training is right for you.