Skip to main content

Complete guides · Running

How to Set Up ERPNext: The Complete Setup Guide for 2026

Set up ERPNext step by step: choose self-hosting, Frappe Cloud or an implementer, install v16, then configure GST, items, warehouses, roles and payroll.

Updated 12 Oct 202615 min readBy ManojFirst published 16 Jul 2026

"How to set up ERPNext" is the search that follows "what is ERPNext?". Most guides online are bench commands and MariaDB settings: useful to a sysadmin, not to the business owner who wants ERPNext running. This guide covers both: choosing how to deploy, installing v16, and the configuration after the install that decides whether the system works for your business.

If you want an implementer to do the setup, the cost follows scope, data migration and integrations: Estimate your price.

Short answer

ERPNext can be set up three ways: self-hosted on your own server, on Frappe Cloud (Frappe's own managed hosting), or through an implementer such as MithTech, a team of Frappe specialists. Self-hosting gives the most control but needs Linux skills; v16 needs Python 3.14 and Node 24. Frappe Cloud removes server management for a monthly plan fee. An implementer handles the server, installation, configuration, data migration, training and go-live support. The right path depends on your team's technical capacity, your budget and how complex your setup is.

What are the three ways to set up ERPNext?

Each path trades cost, control and technical effort differently, and the choice sets your maintenance load for years.

Self-hosted means you install ERPNext on a Linux server you own or rent. You get full control of the server, database, backups and updates, and full responsibility for uptime, security and troubleshooting. It suits businesses with in-house IT or a trusted sysadmin, and it is the cheapest option over time: you pay the VPS provider's monthly fee for the server size you pick.

Frappe Cloud is the managed hosting platform run by Frappe, the company that builds ERPNext and the Frappe Framework. You get a working ERPNext site in minutes, with automatic backups, updates and monitoring. Plans range from shared hosting to dedicated servers; check frappecloud.com for current plans.

An implementer (a team of Frappe specialists such as MithTech) handles server provisioning, installation, configuration, data migration from your current system, user training and support after go-live. You pay for their time and experience instead of learning it yourself. Most Indian SMEs take this path, because the hard part is not installing ERPNext; it is configuring it correctly for the business.

PathBest forWhat you pay forInstall timeTechnical skill needed
Self-hostedIT teams, developers, cost-conscious businessesVPS rent, plus your own timeA few hoursHigh (Linux, command line)
Frappe CloudNon-technical teams, pilotsMonthly plan, by resourcesMinutesLow (browser only)
ImplementerReal go-lives, complex migrationsOne-time implementation, priced by stage, plus hosting and supportPart of the project planNone

What an implementer charges depends on modules, data migration, integrations and customisation. Estimate your price, or read the ERPNext cost guide for what drives each line.

What are the server requirements for ERPNext?

ERPNext v16 runs MariaDB, Redis, Node.js and Python workers side by side, and under-provisioning the server is the most common self-hosting mistake: too little RAM shows up as slow reports and crashed workers under load.

A starting point for a small production site (size up for heavy reports, many background jobs or several companies):

8 rows · click a column to sort

Starting pointMore headroom
CPU4 vCPU8 vCPU
RAM8 GB16 GB
Storage80 GB SSD160 GB NVMe SSD
OSUbuntu 24.04 LTS or Debian 12Ubuntu 24.04 LTS
Python3.14 (v16 requires it)3.14
Node.js24 (v16 requires 24 or later)24 LTS
DatabaseMariaDB 10.6 or laterCheck the install notes for your branch
RedisRedis 6 or later; bench runs a cache and a queue instanceRedis 7

Neither Ubuntu 24.04 nor Debian 12 ships Python 3.14 by default, so install it separately (for example with uv or a Python PPA) before bench init. For development or testing, 2 vCPU and 4 GB RAM is enough; don't use that for production.

ERPNext does not run on Windows natively. Windows users need WSL2 or Docker Desktop for local development. For production, use a Linux server; Frappe does not support Windows production deployments.

For hosting cost across AWS, Hetzner and managed providers, see the ERPNext hosting cost guide.

How do I install ERPNext on my own server?

Self-hosted installation uses the Frappe Bench command-line tool, which manages the whole stack: the Frappe Framework, the ERPNext app, MariaDB, Redis, Node.js, Supervisor and Nginx. Someone comfortable with Linux can finish it in a few hours.

The six installation steps:

  1. Provision a server: a VPS on Hetzner, DigitalOcean, AWS EC2 or any provider offering Ubuntu 24.04 LTS. Open ports 80, 443 and 22.

  2. Install prerequisites: Python 3.14, Node.js 24, MariaDB, Redis and the standard build tools. The official Frappe installation guide lists the exact packages.

  3. Install Bench: pipx install frappe-bench (or uv tool install frappe-bench) installs the Bench CLI. Then bench init frappe-bench --frappe-branch version-16 creates the bench directory with the Frappe Framework.

  4. Create a site and install ERPNext: bench new-site yoursite.com creates the database. bench get-app erpnext --branch version-16 downloads ERPNext, and bench --site yoursite.com install-app erpnext installs it. For India, add the India Compliance app the same way.

  5. Set up production: sudo bench setup production [user] configures Supervisor (process manager) and Nginx (web server), with automatic restarts, logging and a reverse proxy.

  6. Configure SSL and PDFs: sudo bench setup lets-encrypt yoursite.com provisions a free certificate; HTTPS is a must for business data. v16 prints new formats with Chrome, so run bench setup-chrome to install the Chromium it uses.

Then open https://yoursite.com to run the setup wizard: company, chart of accounts, currency and first settings.

Common installation mistakes:

  • Running as root instead of a dedicated user (a security risk, and Bench warns you)
  • Skipping bench setup production and running in development mode (no auto-restart, not built for load)
  • Using MySQL instead of MariaDB (ERPNext is built and tested on MariaDB)
  • No swap on a low-RAM server (add swap so the asset build doesn't run out of memory)

For the command-by-command walkthrough, the official Frappe installation guide is the reference. This guide focuses on what comes after the install.

How do I set up ERPNext on Frappe Cloud?

Frappe Cloud is the fastest path to a working ERPNext site: no server management, no command line, no Linux skills.

Step-by-step Frappe Cloud setup:

  1. Create an account at frappecloud.com.

  2. Choose a plan: a shared site plan for small teams, or a dedicated server for more resources and control. For a pilot, the smallest shared plan is enough.

  3. Create a new site: choose ERPNext as the app (add India Compliance from the marketplace), pick a region close to your users (Mumbai for India) and a subdomain (e.g. yourcompany.frappe.cloud). You can add a custom domain later.

  4. Wait for provisioning: Frappe Cloud creates the site and installs the apps; it takes a few minutes.

  5. Run the setup wizard: company name, country (India), chart of accounts template, fiscal year and currency.

  6. Optional: add a custom domain: add your domain (e.g. erp.yourcompany.com) in the site settings and point a DNS CNAME record at it. SSL is provisioned automatically.

What Frappe Cloud handles for you:

  • Automated backups you can download
  • One-click version updates
  • Server monitoring and restarts
  • SSL certificates

When to outgrow Frappe Cloud: you need custom apps not on its marketplace, specific server settings (Redis tuning, a separate database server), or your own backup infrastructure. Then a dedicated Frappe Cloud server, self-hosting or managed hosting makes more sense.

What should I configure after installing ERPNext?

Installation gets ERPNext running; configuration gets it working for your business. This is where most setups go wrong: skip it and invoices look wrong, stock valuations are off, or GST returns don't reconcile.

The post-install configuration checklist (in order):

Company settings

  • Set the company name, abbreviation, default currency (INR) and country
  • Upload the company logo (it appears on invoices and letterheads)
  • Set the fiscal year (April to March for Indian companies)
  • Enter the company address with GSTIN, state and PIN code

Chart of accounts

  • ERPNext ships a standard chart of accounts; review it before entering any transactions
  • Add industry accounts (manufacturing, job work, project revenue)
  • Set default receivable and payable accounts
  • Set up cost centres if you track profit by department or location

GST configuration (India)

  • Install the India Compliance app first: GST moved out of ERPNext's core in v14, and the app sets up GST accounts, tax templates and the GST fields
  • Enter your GSTIN on the company and on every company address
  • Set the GST category on customers and suppliers (registered regular, composition, unregistered, SEZ, overseas and so on)
  • Enter HSN/SAC codes on item masters; GST returns need them
  • Enable e-invoicing if your aggregate turnover has crossed ₹5 crore in any year from 2017-18
  • Set up e-way bills for goods movements above ₹50,000 in consignment value (some states set their own limit for movements within the state)
  • The app is free; its e-invoice and e-way bill API calls use paid credits

For the e-invoicing setup, see the GST e-invoicing guide. For this year's changes, see ERPNext GST 2026 readiness.

Item master setup

  • Create item groups (All Item Groups, then Raw Materials, Finished Goods, Services and so on)
  • Set the valuation method per item or globally (FIFO or Moving Average). Choose before any stock transaction: ERPNext won't let you change an item's method once it has transactions
  • Enter HSN/SAC codes, default warehouse and default unit of measure
  • Set reorder levels for critical items and turn on automatic material requests in Stock Settings, so ERPNext raises a Material Request when stock drops below the level (the material request guide covers the purposes and the reorder setup)

Warehouse structure

  • Create warehouses matching your physical locations (Main Store, Production Floor, Finished Goods, Scrap)
  • Build a warehouse hierarchy if you have several locations
  • Set default warehouses on items and in Stock Settings
  • Leave Allow Negative Stock off in Stock Settings; negative stock in ERPNext explains why and how to fix the errors instead
  • Load opening stock per warehouse with a Stock Reconciliation, then run day-to-day stock as in the inventory management guide

User roles and permissions

  • Create user accounts with company email addresses
  • Assign roles (Accounts User, Stock User, Manufacturing User; HR User once Frappe HR is installed). Don't give everyone Administrator access
  • Restrict sensitive data (salary slips, pricing, cost data) by role
  • Turn on two-factor authentication for administrator accounts
  • Give each role a workspace (v16 workspace guide) and the dashboards and reports it checks every day

How do I set up ERPNext for manufacturing?

Manufacturing setup means BOMs, work orders, production planning and, in v16, the MRP workflow. Get the BOM structure right and the rest follows.

Manufacturing configuration steps:

  1. Create items: finished goods, raw materials, sub-assemblies and consumables. Tick "Maintain Stock" for physical items and "Is Fixed Asset" for machinery.

  2. Build BOMs: a bill of materials lists the raw materials and quantities needed for one unit of a finished good. ERPNext supports multi-level BOMs (sub-assemblies with their own BOMs).

  3. Set up workstations with hourly operating costs. These flow into finished goods costing.

  4. Configure operations (cutting, welding, assembly, QC) and assign them to workstations. Operations appear on work orders and job cards and track time per step.

  5. Plan production: the Production Plan creates work orders and material requests from sales orders. v16's MRP workflow combines forecasts, delivery schedules and lead times to say what to buy or make, and when.

  6. Set up subcontracting: if you send work to job workers, configure subcontracting with supplied-item tracking and scrap and wastage handling.

For BOM costing and landed cost vouchers, see the ERPNext manufacturing guide, or watch the flows run on the manufacturing page.

How do I set up ERPNext HRMS and payroll?

HR and payroll run in Frappe HR (the HRMS app), a separate open-source app since v14. It manages the employee lifecycle: hiring, attendance, leave, expense claims and payroll. For Indian payroll rules, add Frappe's India Payroll app.

HR and payroll setup checklist:

  1. Install Frappe HR: on a self-hosted bench, bench get-app hrms --branch version-16 and bench --site yoursite.com install-app hrms. On Frappe Cloud, add it from the marketplace. Add the India Payroll app the same way.

  2. Set up the HR structure: departments, designations, branches and employment types (full-time, part-time, contract, intern).

  3. Create employee records: personal details, date of joining, department, designation and reporting line. Import in bulk for large teams.

  4. Set up leave policy: leave types (casual, sick, earned, compensatory off) with yearly allocation, carry-forward and encashment rules.

  5. Configure attendance: manual entry, biometric devices through the API, or check-ins from the employee portal.

  6. Set up payroll, the critical step:

    • Create salary structures with earnings (basic, HRA, special allowance) and deductions (PF, ESI, professional tax, TDS)
    • Assign them to employees through Salary Structure Assignment
    • Set PF, ESI and professional tax rates, ceilings and the wage base with your payroll adviser. The four labour codes in force since 21 November 2025 redefined "wages", which changes the base for PF in many salary structures
    • Set up TDS from employees' declared investments and the tax regime each one chooses
  7. Run a test payroll for a past month and compare it with your previous payroll's salary slips line by line before going live.

For the detailed India payroll setup, see the ERPNext HR and payroll guide for India.

How do I migrate data into ERPNext?

Data migration takes the longest and causes the most problems after go-live. Opening balances, item masters and customer and supplier records have to be right.

What to migrate (in order):

8 rows · click a column to sort

Chart of accountsTally or current ERPManual setup or chart-of-accounts importerCritical
Customer masterTally or spreadsheetData Import toolCritical
Supplier masterTally or spreadsheetData Import toolCritical
Item masterTally or spreadsheetData Import toolCritical
Opening stockPhysical count and TallyStock ReconciliationCritical
Opening account balancesTally trial balanceOpening Journal EntryCritical
Outstanding invoicesTallyOpening Invoice Creation ToolHigh
Past transactionsTallyUsually not migratedLow

Key migration rules:

  • Use the Data Import tool for bulk imports. It validates rows before inserting them and reports the ones that fail.
  • Masters before transactions: customers and items must exist before invoices can reference them.
  • Reconcile opening balances: ERPNext's trial balance on day one must match the old system's closing trial balance exactly. Any gap spreads through every report.
  • Don't migrate past transactions unless you have a reason; keep the old system readable as the archive for as long as your CA says records must be kept.
  • Run in parallel until at least one period closes with matching numbers in both systems.

For Tally specifically, see the Tally to ERPNext migration guide and Tally to ERPNext. For the general approach, see the migration guide.

What does the ERPNext setup wizard do?

The setup wizard runs the first time you log in to a new site. It creates the base settings everything else depends on, so don't rush it.

What the wizard sets:

  1. Language and region: the default language, country, time zone and currency, which drive date and number formats.

  2. Company details: company name, abbreviation (used as a suffix on accounts, e.g. "Cash - MT") and default currency.

  3. Chart of accounts: choose a template; "Standard" or "Standard with Numbers" suit most Indian companies, and India Compliance adds the GST accounts.

  4. Fiscal year: the financial year start (1 April for Indian companies).

  5. Administrator account: the first user, who can then create the rest.

What the wizard does not set (you do these afterwards):

  • GST settings and GSTINs (India Compliance)
  • Item masters and warehouse structure
  • User accounts and permissions
  • Print formats and letterheads
  • Email accounts for notifications
  • Payment terms and pricing rules
  • Approval workflows

How long does ERPNext setup take?

The install itself is quick: minutes on Frappe Cloud, a few hours self-hosted. Everything after it depends on your business, and that is where the time goes.

ModulesAccounts, stock, buying, sellingManufacturing, HR and payroll, projects together
Companies and locationsOne company, one locationSeveral companies, GSTINs or plants
Data migrationOpening balances from clean dataYears of history from messy sources
Customisation and integrationsStandard ERPNextCustom apps, portals, several integrations
TrainingA few roles, one super-userMany roles across shifts or sites
Your team's timeA dedicated internal ownerSetup alongside everyone's day job

The most common delay is not technical. It is waiting for the business to settle its chart of accounts, pricing rules and approval workflows. Estimate your price for a timeline on your own scope, or see the implementation cost by stage.

What are the most common ERPNext setup mistakes?

The same mistakes come up again and again, and every one is avoidable.

  1. Skipping the chart of accounts review: the standard template suits many businesses, but manufacturers need production accounts, distributors may want warehouse-wise P&L, and service businesses need project revenue tracking. Fixing it after months of transactions means re-mapping hundreds of entries.

  2. Wrong valuation method: FIFO or Moving Average can't be changed for an item once it has stock transactions. Decide before the first stock entry.

  3. No HSN codes: every item needs an HSN/SAC code for GST returns. Adding them to hundreds of items after go-live is painful; do it during item setup.

  4. Everyone as Administrator: Administrator bypasses all permission checks. Use role-based access and test with a non-admin account before go-live.

  5. Default print formats: the standard invoice works but is generic, and customers expect invoices that look like your old ones. Customise print formats before go-live (in v16, new formats use the Chrome PDF engine).

  6. No backup plan when self-hosted: Frappe Cloud backs up automatically. Self-hosted sites need automated daily backups to an off-site location (S3, a separate server). Test a restore at least once before go-live.

  7. Production data on day one: set up a test site first. Configure everything, import sample data, run test transactions and check the reports, then repeat the configuration on the live site.

How do I keep ERPNext updated after setup?

ERPNext ships point releases most weeks (v16.50.0 and v15.122.0 as of early October 2026) and a major version every couple of years (v15 in October 2023, v16 in January 2026). Staying current brings security patches, fixes and features.

On Frappe Cloud: Updates are one click from the dashboard, and you can schedule them. The site is briefly unavailable while it migrates.

On a self-hosted bench:

bench --site yoursite.com backup --with-files   # back up first
bench update                                      # pull code, install requirements, migrate, build, restart

bench update pulls the new code, installs requirements, runs bench migrate on each site, rebuilds assets and restarts services. Use bench update --pull only if you want to pull code without the rest.

Update best practices:

  • Always back up before updating: bench --site yoursite.com backup --with-files saves the database and files
  • Test on a staging site first: restore a copy of production, apply the update and check the critical flows (invoicing, stock entries, payroll)
  • Don't skip major versions: go v14 to v15 to v16, never v14 to v16 directly. A major upgrade means upgrading the runtimes, switching branches and migrating; see the v15 to v16 upgrade guide
  • Update outside working hours: migrations can take a while on large databases, and users can't work during them

Frequently asked questions

+

Can I install ERPNext on Windows?

Not for production. ERPNext needs Linux (such as Ubuntu 24.04 LTS or Debian 12) in production. You can run it on Windows through WSL2 or Docker Desktop for development and testing, but Frappe does not support Windows production installs. If your team uses Windows, Frappe Cloud or an implementer takes the operating system out of the question.

+

Do I need coding skills to set up ERPNext?

On Frappe Cloud, no: the setup is in the browser. For a self-hosted install, you need basic Linux skills (SSH, package management, editing files). For configuration after the install, no coding is needed: company setup, items, roles and standard settings are forms and wizards. Custom fields, workflows and reports can also be made without code using ERPNext's built-in tools.

+

How much does ERPNext setup cost in India?

The software has no licence fee. Setup cost depends on your path: self-hosting costs the VPS rent plus your own time; Frappe Cloud is a monthly plan priced by resources; an implementer charges a one-time fee for setup, configuration and data migration, plus yearly support. That fee depends on modules, customisation, data migration, integrations and the number of companies. Estimate your price for your own scope, or see the ERPNext cost guide.

+

Can I set up ERPNext for multiple companies?

Yes. One ERPNext site can hold several companies, each with its own chart of accounts, GSTINs and defaults, sharing items and parties where you want. Inter-company invoices and journal entries are supported. Add companies after the setup wizard from the Company list.

+

Should I start with Frappe Cloud and move to self-hosted later?

It is a common path. Start on Frappe Cloud for the pilot and first configuration; once ERPNext proves itself, move to self-hosting if you want more control or lower long-term cost. A Frappe Cloud backup (database and files) restores onto any self-hosted bench running the same versions, and the reverse move is supported too.

+

How do I get help if I am stuck during setup?

Four options: (1) the ERPNext documentation covers every module; (2) the Frappe Forum has a large archive of answered questions; (3) Frappe Cloud support, depending on your plan; (4) an implementer for hands-on help specific to your business, useful when the docs answer "how" but not "how for us". See how to choose an ERPNext implementer.

Your next step

Setting up ERPNext and want it right first time?

See it live

Low stock reorders itself

Stock dips below minimum, suppliers quote in their portal, and the chosen one gets the order.

You end with a purchase order sent · 4 screens · about 6 min

No sign-up, no card, no account.

Next step · ERPNext how-to & fixes

Now see what an audit finds in yours

When the same problems keep coming back, tick what you see and get an audit of the ERPNext you have, then fixes in order of what costs you most.

Next in the course

All guides by stage

Worked with us? Leave a Google review

Start with one conversation

One message, call or WhatsApp is enough. Every line reaches the team directly.

Team away now