To set up subcontracting in ERPNext, you give the finished item a BOM, raise a purchase order for the job-work service and a subcontracting order from it, send the raw material to the job worker on a challan, and record a subcontracting receipt when the goods come back. ERPNext tracks the material at the job worker, the job-work cost and the dates and quantities ITC-04 asks for.
Job work is everywhere in Indian manufacturing: machining, plating, heat treatment, printing, stitching, grinding. Getting it right in ERPNext means two things at once: the physical flow of material to and from the job worker, and the GST paperwork around it: the challan, ITC-04 and the time limits for bringing goods back.
Subcontracting goes wrong in an ERP when teams track only the material and forget the compliance, or keep the compliance in a spreadsheet apart from stock. ERPNext does both in one flow, which is the point of doing it properly. I lead ERPNext and Frappe implementations at MithTech, a team of Frappe specialists in Bengaluru, and I set up these flows for manufacturers with several plants and many job workers.
How do I set up subcontracting in ERPNext?
You give the finished or part-finished item a BOM, create the job worker as a supplier and a service item for their work, and choose in Buying Settings how raw material is backflushed. Then you run the flow from a purchase order. The order says what comes back and what it costs, so ERPNext knows what to send and what to expect.
Here is the setup and flow I use on a client system.
- Create the job worker as a supplier, and a service item for the job-work charge.
- Define the BOM for the finished or part-finished item, listing the raw materials the job worker will consume.
- Raise a purchase order with "Is Subcontracted" ticked, for the service item and the finished item, then make a subcontracting order from it.
- Send the raw material with a stock entry of type "Send to Subcontractor". It moves to the job worker's warehouse and stays your stock.
- Record a subcontracting receipt when the goods come back. It backflushes the raw material consumed and brings the finished goods in at material plus job-work cost.
- Book the job worker's purchase invoice against the purchase order.
You can watch this flow run on a demo company in Work sent out and back.
Skimmable summary: BOM, job worker as a supplier, a service item, then purchase order → subcontracting order → send to subcontractor → subcontracting receipt → invoice. Material, cost and returns stay in one flow.
How does GST on job work work in ERPNext?
Under section 143 of the CGST Act, inputs and capital goods sent to a job worker on a challan are generally not a supply, so no GST is charged on the movement. The challan follows Rule 55. The taxable event is the job worker's charge for the work, which comes to you as their invoice; you book it as a purchase and take the input tax on it. ERPNext links the challan, the receipt and the charge, so the trail is complete.
On the e-way bill: when the goods go from your state to a job worker in another state, one is needed whatever the value, and you or the registered job worker can generate it (Rule 138). Within a state, the central threshold is a consignment value over ₹50,000; check your state's own limit and exemptions. In ERPNext, e-way bills come from the India Compliance app; check which subcontracting documents it covers on your version. For the wider GST setup, see my GST e-invoicing in ERPNext guide.
Skimmable summary: material goes out on a Rule 55 challan with no GST, as sending it for job work is generally not a supply; GST applies to the job worker's charge. An e-way bill is needed for any move to another state, and within a state over ₹50,000 (check your state's limit).
What is ITC-04 and how does ERPNext help?
ITC-04 is the GST form that reports goods sent to job workers, and goods received back or supplied from their premises. ERPNext helps by holding every subcontracting order, challan and receipt with its date and quantity, which is the data the form's tables need.
How often you file depends on the aggregate turnover of the previous financial year. Over ₹5 crore, it is half-yearly: April to September by 25 October, October to March by 25 April. At ₹5 crore or less, it is once a year, by 25 April after the year ends. Both dates apply unless a notification extends them (Rule 45(3) as amended by Notification 35/2021-Central Tax). Because the source records are in ERPNext rather than a spreadsheet, the figures can be checked at audit. Whether your version builds the form directly is worth checking on your own site.
Skimmable summary: ITC-04 reports goods sent to and back from job workers. Half-yearly when last year's aggregate turnover was over ₹5 crore, yearly otherwise; ERPNext holds the dates and quantities it needs.
How do I track material returns and the time limits?
You track job-work material against the subcontracting order, which shows what was sent against what has come back, so material still at a job worker is always visible. It matters because inputs must come back to you, or be supplied straight from the job worker's premises, within one year, and capital goods within three. Moulds, dies, jigs, fixtures and tools have no limit. Past the limit, unless the Commissioner has approved an extension, the goods are treated as supplied on the day they first went out, and GST and interest are due. On sufficient cause the Commissioner can extend by up to a year (capital goods: two years), but approval isn't automatic.
Reports such as Subcontracted Raw Materials To Be Transferred and Subcontracted Item To Be Received show what is still open. Add a report of material at job workers by age, so nothing crosses the limit unnoticed. Watching that age is the most important control in a job-work operation.
Skimmable summary: track sent against received on the subcontracting order and watch the age: one year for inputs, three for capital goods, unless an extension is approved; past that, GST and interest are due.
At a glance
| What to know | |
|---|---|
| The flow | Purchase order → subcontracting order → send to subcontractor → subcontracting receipt → purchase invoice |
| GST on the material sent | Generally not a supply (CGST s.143); Rule 55 challan |
| GST on the job worker's charge | Taxable; booked as a purchase with input tax |
| Time limits | Inputs one year, capital goods three; moulds, dies, jigs, fixtures and tools none |
| ITC-04 | Half-yearly over ₹5 crore last year's aggregate turnover, yearly otherwise |
| E-way bill | Any value to another state; within a state, the central threshold is over ₹50,000 |
These are general GST points; what applies depends on the transaction, notifications and your state's rules. Check with your CA.
Frequently asked questions
+How do I set up subcontracting in ERPNext?
Create the job worker as a supplier and a service item for their charge, give the finished item a BOM listing the raw materials, and set the backflush basis in Buying Settings. Then raise a subcontracted purchase order and a subcontracting order from it, send the material with a "Send to Subcontractor" stock entry, and record a subcontracting receipt when the goods come back. ERPNext backflushes the material consumed and adds the job-work charge to the cost.
+Is GST charged when I send goods for job work in ERPNext?
Generally no. Sending inputs to a job worker on a challan is generally not a supply under section 143 of the CGST Act, provided they come back, or are supplied from the job worker's premises, within the time limit. GST applies to the job worker's charge for the work, which comes to you as their invoice. ERPNext records both the challan and the taxable charge.
+Does ERPNext support ITC-04 reporting?
ERPNext holds the subcontracting orders, challans and receipts with dates and quantities, which is the data ITC-04 needs. ITC-04 is half-yearly when last year's aggregate turnover was over ₹5 crore and yearly otherwise, unless a notification extends the date. Check on your own site whether your version builds the form or you compile it from reports.
+What happens if job-work material does not come back within a year?
If inputs don't come back, or aren't supplied from the job worker's premises, within one year (capital goods: three), and no extension was approved, they are treated as supplied on the day they first went out, and GST and interest are due. In ERPNext, track open material against the subcontracting order and age it, so you can bring it back or ask your CA about an extension in time.
+Can ERPNext handle multi-stage job work between job workers?
Yes, with setup. ERPNext can model material moving through more than one job worker by chaining subcontracting orders, but multi-stage flows need careful BOMs, warehouses and challans. For machining or finishing chains, map the stages first so the material and GST trail stays intact from end to end.
Comments & ratings
No comments yet. Start a new discussion.
Manoj · Published on 11 July 2026
Worked with us? Leave a Google review