An ERPNext Material Request is the system'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 what to check when it stalls. Buying setup as a whole is in our complete guide to setting up ERPNext.
The Material Request Type is the one field that decides whether you get a Purchase Order or a Stock Entry, and most "it won't let me order" tickets are the wrong Type. I lead ERPNext and Frappe programmes at MithTech, a team of Frappe specialists in Bengaluru. Our team sets up 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 uses the same document for five jobs (Purchase, Material Transfer, Material Issue, Manufacture, Customer Provided), and only one of them buys anything. Per the official documentation, the Type controls what the request can become downstream. Pick it first.
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 does a Material Request sit 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 when you already know the supplier and price, and 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 a Material Request?
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 |
At a glance
| What it becomes | |
|---|---|
| Purchase | Request for Quotation, Supplier Quotation or Purchase Order |
| Material Transfer | Stock Entry moving stock between warehouses |
| Material Issue | Stock Entry issuing stock out of a warehouse |
| Manufacture | Work Order |
| Customer Provided | Stock Entry receiving material the customer supplies (nothing is bought) |
Common questions from the buying team
+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?
Usually 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 first. Version-specific conversion bugs exist too, for example #44635, reported on a v16 development build and since closed.
+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 moves or issues existing stock, with 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. Some conversion bugs are version-specific (for example the v16 development-build error in #44635), so check your patch level if a conversion misbehaves. The current releases are v16.53.0 and v15.124.2 (both 28 October 2026, per the frappe/erpnext releases page).
What should you do next?
The Material Request is a simple document with one deciding field. Set the Type correctly, submit before you convert, and use partial ordering instead of working around the system, and the buying cycle runs from requisition to receipt. Next, set up the Purchase Order side, or see the buying flow run live on the distribution page.
Comments & ratings
No comments yet. Start a new discussion.
Manoj · Published on 28 July 2026
Worked with us? Leave a Google review