ERPNext Guides

ERPNext Material Request: Types, the Buying Flow & Common Fixes (2026)

Which Material Request Type to use, how it flows to a Purchase Order, how partial fulfilment works, and why 'Create Purchase Order' sometimes does…

MManojJuly 28, 202610 min read
ERPNext#erpnext#buying#procurement#material-request
Share

A Material Request is ERPNext's purchase requisition — the internal "we need these items" that starts the buying cycle. Most of the confusion around it comes down to one field: the Material Request Type. Pick the wrong one and "Create Purchase Order" is greyed out, or your request quietly turns into a stock transfer instead of an order. This guide shows which Type to use, how the request flows to a PO, how partial fulfilment works, and how to fix the moments it stalls. This guide on erpnext material request is written for Indian SMEs, with code samples, ERPNext / Medusa recipes, and step-by-step fixes you can copy into a real project.

Want the request raised automatically?

If you're tired of raising Material Requests by hand every time stock runs low, the ERPNext auto-reorder guide shows how to make stock levels create the Purchase request for you.

The Material Request Type is the single field that decides whether you get a Purchase Order or a Stock Entry — and most "it won't let me order" tickets are just the wrong Type. I am Manoj, ERPNext and Frappe implementation lead at Mith Tech in Bengaluru; we wire the buying cycle on every distribution and manufacturing go-live.

What does the Type field decide?

A Material Request in ERPNext isn't only a purchase requisition — the Material Request Type repurposes the same document for five different jobs, and only one of them buys anything. Per the official documentation, the Type controls what the request can become downstream. Pick it first; everything else follows.

InteractiveMaterial Request Type Pickerlink

Select a Material Request Type to see when to use it and which document it flows into.

Pick the Material Request Type to see when to use it and where it flows.

The practical rule: use Purchase for anything you'll order from a supplier. Material Transfer moves stock you already own between warehouses (it becomes a Stock Entry, not a Purchase Order), and Manufacture feeds production. If "Create → Purchase Order" is missing, the Type is the first thing to check.

Where a Material Request sits in the buying cycle

The request is step one of a five-stage flow. You don't always need every stage — walk through it to see what's optional.

InteractiveBuying Cycle Walkthroughlink

Tap through Material Request → RFQ → Supplier Quotation → Purchase Order → Purchase Receipt to see what each stage does and when to skip it.

Material Request

The internal ask: “we need these items.” Type = Purchase for anything you buy. Can be raised by hand, from a Sales Order, from a Work Order, or auto-created when stock hits its reorder level.

You can skip the Request for Quotation and Supplier Quotation stages entirely when you already know the supplier and price — go straight from Material Request to Purchase Order. Use them when you want to collect and compare prices from several suppliers first.

How do you convert, auto-create, and fix?

Code recipeConvert · Auto-create · Fix Recipeslink

Step recipes for converting a Material Request to a Purchase Order, auto-creating requests from reorder levels, and fixing the common stalls.

The supported path — and the partial-fulfilment gotcha.

steps
1. Open the submitted Material Request (Type = Purchase).
2. Create > Purchase Order.  (ERPNext asks for a default
   Supplier — set one, or set it per item on the Item master.)
3. Only ordering some now? Reduce the qty on the PO. ERPNext
   tracks the MR's "% Ordered"; raise another PO later for the rest.
4. Can't create a PO? Check the MR is SUBMITTED and Type =
   Purchase (Transfer/Manufacture types don't produce POs).

Raise a Purchase-type Material Request

New Material Request → Type = Purchase → add items and quantities → Submit. It has to be submitted before it can become a Purchase Order.

Create the Purchase Order

From the submitted request: Create → Purchase Order. ERPNext prompts for a default Supplier (set one here, or per item on the Item master). It carries the items and quantities across.

Order partially if you need to

Reduce the quantity on the Purchase Order to order only part now. ERPNext records the Material Request's ordered percentage, so you can raise another Purchase Order for the balance later without double-ordering.

Receive and bill from the PO

Raise a Purchase Receipt when goods arrive (stock and valuation post here) and a Purchase Invoice to bill — both pulled from the Purchase Order so the links stay intact.

Order now, or collect quotes first?

Straight to Purchase OrderCollect quotes first (RFQ)
You already know the supplier and priceSeveral suppliers could fulfil it and price varies
Routine re-buy of a catalogued itemA new or high-value item where a better price matters
Speed matters more than a few percentProcurement policy requires competitive quotes
Single obvious vendorYou want a documented comparison for audit

How do you At a glance — quick reference?

AspectWhat to know
When to use erpnext material requestStandard fit for the common case; review edge cases against the table.
Typical effort1–4 hours for a small team; longer with custom data or multi-entity setups.
Main riskSkipping reconciliation or running before the data is clean.
What to do nextRun the steps below, then verify against the checklist.

FAQ: what do people ask most?

+What is a Material Request in ERPNext?

A Material Request is ERPNext's internal purchase requisition — a record that says "we need these items". Its Type field decides what it becomes: a Purchase-type request flows to a Request for Quotation or a Purchase Order, while Material Transfer, Issue, and Manufacture types flow to Stock Entries or Work Orders instead.

+How do I create a Purchase Order from a Material Request?

Submit the Material Request with Type set to Purchase, then choose Create then Purchase Order from the submitted document and set the supplier when prompted. To order only part of it, reduce the quantity on the Purchase Order — ERPNext tracks the ordered percentage so you can raise another PO for the balance.

+Why is Create Purchase Order not working on my Material Request?

Almost always because the request isn't submitted yet, or its Type isn't Purchase. Material Transfer, Material Issue, and Manufacture types don't produce Purchase Orders — they become Stock Entries or Work Orders. Check both before anything else; a few version-specific conversion bugs exist too (for example #44635 on v16).

+Can one Material Request become multiple Purchase Orders?

Yes. Reduce the quantity on each Purchase Order to order in parts; ERPNext records the ordered percentage against the Material Request so the remaining quantity stays available for a later PO. This is how partial fulfilment across suppliers or over time is handled.

+What's the difference between Material Request and Stock Entry?

A Material Request is a request for items; a Stock Entry is an actual movement of stock. A Purchase-type Material Request leads to buying (Purchase Order). A Material Transfer or Issue type Material Request, once actioned, becomes a Stock Entry that physically moves or issues existing stock — no purchase involved.

+Does this apply to ERPNext v14, v15 and v16?

Yes — Material Request Types and the buying flow are the same across v14, v15 and v16. A few conversion bugs are version-specific (for example the v16 MR-to-PO error #44635), so confirm your patch level if a conversion misbehaves.

What should you do next?

The Material Request is a simple document with one decisive field. Set the Type correctly, submit before you convert, and use partial ordering rather than fighting the system, and the buying cycle runs cleanly from requisition to receipt. Everything else in ERPNext buying hangs off getting this first step right.

Buying cycle a mess of ad-hoc POs and no requisition control?

We set up the Material Request → RFQ → Purchase Order flow with approvals, auto-reorder, and supplier defaults so procurement stops running on WhatsApp and spreadsheets.

Now work out what this costs for your business

Answer six questions about headcount, modules and locations, and get a three-year cost breakdown — implementation, hosting and support, with no licence fees in the total.

M

Written by

Manoj

Founder of Mith Tech, an open-source ERP & automation studio. Hands-on ERPNext/Frappe implementation across multi-branch, multi-warehouse Indian operations — GST/TDS/PT compliance, branch-level permissions, and custom Frappe apps that give management real-time visibility.

Free · By email

Get practical ERPNext & automation guides

New implementation guides, cost breakdowns and open-source tips for Indian businesses — occasionally, straight to your inbox. No spam.

Already a Mith Tech client?

Help the next operator choose.

Most teams evaluating ERPNext have no way to tell who actually delivers. If we’ve run an implementation for you, two lines on Google count for more than anything we can write about ourselves.

Leave a Google review

Only if we’ve actually worked together — Google filters reviews from non-customers, so an honest one is worth more than ten polite ones.

Keep reading

See what this looks like for your business

A 30-minute working session with a principal consultant. We pressure-test the architecture and outline the engagement model that fits your governance and procurement posture. You leave with a written brief.

0
Published on 28 July 2026

Manoj

Comments & ratings

No comments yet. Start a new discussion.