Skip to content
Case studies

Published

NetSuite to ERPNext Migration for a Dairy Manufacturer: IRC Dairy

IRC Dairy makes mozzarella, butter, desi ghee and whey powder in Faisalabad and sells them to food businesses in Pakistan and abroad. It moved from NetSuite to ERPNext, and its buying, stores, production, sales, accounts and payroll now run in one system.

Muhammad Ahmad

Founder, Havenir Solutions


SnapshotDetail
IndustryDairy manufacturing: mozzarella, butter, desi ghee and whey powder
CountryPakistan: plant in Faisalabad
Users100+ ERPNext users, payroll for 200+ staff
ReplacedNetSuite
ModulesAccounting, buying, selling, stock, manufacturing, fixed assets, HR and payroll
CustomMilk buying on total solids, registered names per customer, withholding tax, approval chains
TimelineSetup from June 2022; stores live November 2022, production May 2023, payroll July 2023

The business

IRC Dairy is a venture of Interloop, Rella Gida and Crystal. Its plant in Faisalabad takes in raw milk by the tanker from corporate dairy farms and, by its own figure, processes more than 5 million litres a month. Its customers are businesses: pizza and fast food chains, restaurants, bakeries and food manufacturers across Pakistan, and buyers abroad. The plant is certified to FSSC 22000 and halal standards, so every product has to be traceable to its batch.

What we moved out of NetSuite

A migration does not have to carry every old transaction. We moved the masters and everything that was still open on the opening date, 1 October 2022, and left closed history in NetSuite for reference.

  1. Masters: items, customers, suppliers, the chart of accounts, warehouses, territories, employees with their salary structures, and quality inspection templates, loaded and checked from July 2022.
  2. Opening stock: one count across every warehouse, batch by batch, so each batch on hand kept its identity and expiry date.
  3. Opening receivables: every unpaid sales invoice on its own, not one balance per customer. Each later payment is matched to the invoice it settles.
  4. Opening payables: every unpaid supplier bill with its original bill date, so the ageing report was right from the first day.
  5. Opening ledger balances: the remaining balances as opening journal entries.

NetSuite kept running in parallel after ERPNext went live, so the two could be compared before NetSuite was switched off.

What needed a second pass

Opening data is rarely right the first time, and the plan should leave room for that. Three things were corrected after go-live:

  1. Receivables: part of the first load of opening invoices was cancelled and entered again once it was checked against the customer balances.
  2. Stock: counts were posted again in the first months for the differences found once the stores were live. A full count at the June 2023 year end set the figures for the first year-end close.
  3. Payments: the first setup allocated receipts to invoices automatically. It was replaced in August 2023 with a reconciliation screen that works by the customer's registered name, described below.

The first financial year was closed in ERPNext in December 2023.

What we built

  1. Milk buying on total solids (custom): raw milk is paid for on its solids, not its volume. Each tanker's receipt records the weight, the lactometer reading and the tested solids. ERPNext converts the weight to litres and works out the payable quantity against the solids agreed with the supplier. One tanker can be split across two purchase orders when it finishes one and starts the next.
  2. Production: bills of materials in several levels, from pasteurised milk to curd to packed cheese, with whey and cream recorded as by-products. Work orders follow the plant's operations: pasteurisation, cheese processing, moulding, churning and packing.
  3. Batch traceability: finished goods get a batch with a manufacturing date and an expiry date when they are produced, and deliveries are issued by batch, so a delivered carton leads back to its production run.
  4. Registered names per customer (custom): one customer often buys under several legal entities, each with its own tax numbers. Every order, delivery, invoice and payment carries the registered name it belongs to, and the sales tax invoice prints that name.
  5. Withholding tax (custom): the rate is recorded on the supplier's bill and deducted when the payment is made, in proportion to the amount being paid, including on foreign currency bills.
  6. Customer prices: each customer's price per product with validity dates, and an approval before a price changes.
  7. Approvals: approval chains with email notifications on purchases, payments, journal entries, price changes and new customers and suppliers.
  8. New item requests (custom): a new item code is requested, checked for duplicates and approved before it exists, which keeps a large spares store free of duplicate codes.
  9. Dispatch: delivery notes carry the gate pass, vehicle and seal number, and the times the vehicle left the plant and reached the customer.
  10. HR and payroll: attendance imported from the attendance machines, shifts, overtime, leave, EOBI and final settlements, with payroll run in ERPNext since July 2023.

Accounting, buying, selling, stock and manufacturing are standard ERPNext, configured for how the plant works. See how an ERPNext implementation runs.

Rollout

Octans Digital managed the project. Havenir did the consulting, configuration, data migration, development and training.

Departments went live one after another. Purchasing and stores started in November 2022, entering transactions the day they happened. Sales and deliveries followed in January 2023, production in May, fixed assets in June and payroll in July. By the completion certificate the project took 73 weeks, the longest we have run. A plant with 100+ users and payroll in scope takes longer than a trading company, and the cost and timeline estimator shows the range for your size.

Result

  1. One system for milk buying, production, stores, sales, accounts and payroll, in place of NetSuite.
  2. Open invoices and stock batches carried over one by one, so customer statements, supplier ageing and expiry dates were correct from the opening date.
  3. Two financial years closed in ERPNext by September 2024.

Muhammad Ahmad

Founder, Havenir Solutions

Founder of Havenir Solutions, a certified ERPNext partner. A certified ERPNext consultant and Frappe framework developer who leads every project himself.

Facing the same?

You’ll speak with Muhammad Ahmad, the founder. We aim to reply within 1 business day.

Muhammad Ahmad, founder of Havenir Solutions