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.
Select a Material Request Type to see when to use it and which document it flows into.
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.
Tap through Material Request → RFQ → Supplier Quotation → Purchase Order → Purchase Receipt to see what each stage does and when to skip it.
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?
Step recipes for converting a Material Request to a Purchase Order, auto-creating requests from reorder levels, and fixing the common stalls.
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 Order | Collect quotes first (RFQ) |
|---|---|
| You already know the supplier and price | Several suppliers could fulfil it and price varies |
| Routine re-buy of a catalogued item | A new or high-value item where a better price matters |
| Speed matters more than a few percent | Procurement policy requires competitive quotes |
| Single obvious vendor | You want a documented comparison for audit |
How do you At a glance — quick reference?
| Aspect | What to know |
|---|---|
| When to use erpnext material request | Standard fit for the common case; review edge cases against the table. |
| Typical effort | 1–4 hours for a small team; longer with custom data or multi-entity setups. |
| Main risk | Skipping reconciliation or running before the data is clean. |
| What to do next | Run 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.